@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Jost:wght@200;300;400;500;600;700&display=swap");
.mat-ripple {
  overflow: hidden;
  position: relative;
}
.mat-ripple:not(:empty) {
  transform: translateZ(0);
}

.mat-ripple.mat-ripple-unbounded {
  overflow: visible;
}

.mat-ripple-element {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  transition: opacity, transform 0ms cubic-bezier(0, 0, 0.2, 1);
  transform: scale3d(0, 0, 0);
  background-color: var(--mat-ripple-color, rgba(0, 0, 0, 0.1));
}
.cdk-high-contrast-active .mat-ripple-element {
  display: none;
}

.cdk-visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
  outline: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  left: 0;
}
[dir=rtl] .cdk-visually-hidden {
  left: auto;
  right: 0;
}

.cdk-overlay-container, .cdk-global-overlay-wrapper {
  pointer-events: none;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.cdk-overlay-container {
  position: fixed;
  z-index: 1000;
}
.cdk-overlay-container:empty {
  display: none;
}

.cdk-global-overlay-wrapper {
  display: flex;
  position: absolute;
  z-index: 1000;
}

.cdk-overlay-pane {
  position: absolute;
  pointer-events: auto;
  box-sizing: border-box;
  z-index: 1000;
  display: flex;
  max-width: 100%;
  max-height: 100%;
}

.cdk-overlay-backdrop {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
  transition: opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);
  opacity: 0;
}
.cdk-overlay-backdrop.cdk-overlay-backdrop-showing {
  opacity: 1;
}
.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing {
  opacity: 0.6;
}

.cdk-overlay-dark-backdrop {
  background: rgba(0, 0, 0, 0.32);
}

.cdk-overlay-transparent-backdrop {
  transition: visibility 1ms linear, opacity 1ms linear;
  visibility: hidden;
  opacity: 1;
}
.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing {
  opacity: 0;
  visibility: visible;
}

.cdk-overlay-backdrop-noop-animation {
  transition: none;
}

.cdk-overlay-connected-position-bounding-box {
  position: absolute;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  min-width: 1px;
  min-height: 1px;
}

.cdk-global-scrollblock {
  position: fixed;
  width: 100%;
  overflow-y: scroll;
}

textarea.cdk-textarea-autosize {
  resize: none;
}

textarea.cdk-textarea-autosize-measuring {
  padding: 2px 0 !important;
  box-sizing: content-box !important;
  height: auto !important;
  overflow: hidden !important;
}

textarea.cdk-textarea-autosize-measuring-firefox {
  padding: 2px 0 !important;
  box-sizing: content-box !important;
  height: 0 !important;
}

@keyframes cdk-text-field-autofill-start { /*!*/ }
@keyframes cdk-text-field-autofill-end { /*!*/ }
.cdk-text-field-autofill-monitored:-webkit-autofill {
  animation: cdk-text-field-autofill-start 0s 1ms;
}

.cdk-text-field-autofill-monitored:not(:-webkit-autofill) {
  animation: cdk-text-field-autofill-end 0s 1ms;
}

.mat-focus-indicator {
  position: relative;
}
.mat-focus-indicator::before {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: absolute;
  box-sizing: border-box;
  pointer-events: none;
  display: var(--mat-focus-indicator-display, none);
  border: var(--mat-focus-indicator-border-width, 3px) var(--mat-focus-indicator-border-style, solid) var(--mat-focus-indicator-border-color, transparent);
  border-radius: var(--mat-focus-indicator-border-radius, 4px);
}
.mat-focus-indicator:focus::before {
  content: "";
}

.cdk-high-contrast-active {
  --mat-focus-indicator-display: block;
}

.mat-mdc-focus-indicator {
  position: relative;
}
.mat-mdc-focus-indicator::before {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: absolute;
  box-sizing: border-box;
  pointer-events: none;
  display: var(--mat-mdc-focus-indicator-display, none);
  border: var(--mat-mdc-focus-indicator-border-width, 3px) var(--mat-mdc-focus-indicator-border-style, solid) var(--mat-mdc-focus-indicator-border-color, transparent);
  border-radius: var(--mat-mdc-focus-indicator-border-radius, 4px);
}
.mat-mdc-focus-indicator:focus::before {
  content: "";
}

.cdk-high-contrast-active {
  --mat-mdc-focus-indicator-display: block;
}

.mat-app-background {
  background-color: var(--mat-app-background-color, transparent);
  color: var(--mat-app-text-color, inherit);
}

html {
  --mat-ripple-color: rgba(0, 0, 0, 0.1);
}

html {
  --mat-option-selected-state-label-text-color: #304ffe;
  --mat-option-label-text-color: rgba(0, 0, 0, 0.87);
  --mat-option-hover-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-option-focus-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-option-selected-state-layer-color: rgba(0, 0, 0, 0.04);
}

.mat-accent {
  --mat-option-selected-state-label-text-color: #ff4081;
  --mat-option-label-text-color: rgba(0, 0, 0, 0.87);
  --mat-option-hover-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-option-focus-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-option-selected-state-layer-color: rgba(0, 0, 0, 0.04);
}

.mat-warn {
  --mat-option-selected-state-label-text-color: #f44336;
  --mat-option-label-text-color: rgba(0, 0, 0, 0.87);
  --mat-option-hover-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-option-focus-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-option-selected-state-layer-color: rgba(0, 0, 0, 0.04);
}

html {
  --mat-optgroup-label-text-color: rgba(0, 0, 0, 0.87);
}

.mat-primary {
  --mat-full-pseudo-checkbox-selected-icon-color: #304ffe;
  --mat-full-pseudo-checkbox-selected-checkmark-color: #fafafa;
  --mat-full-pseudo-checkbox-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mat-full-pseudo-checkbox-disabled-selected-checkmark-color: #fafafa;
  --mat-full-pseudo-checkbox-disabled-unselected-icon-color: #b0b0b0;
  --mat-full-pseudo-checkbox-disabled-selected-icon-color: #b0b0b0;
  --mat-minimal-pseudo-checkbox-selected-checkmark-color: #304ffe;
  --mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: #b0b0b0;
}

html {
  --mat-full-pseudo-checkbox-selected-icon-color: #ff4081;
  --mat-full-pseudo-checkbox-selected-checkmark-color: #fafafa;
  --mat-full-pseudo-checkbox-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mat-full-pseudo-checkbox-disabled-selected-checkmark-color: #fafafa;
  --mat-full-pseudo-checkbox-disabled-unselected-icon-color: #b0b0b0;
  --mat-full-pseudo-checkbox-disabled-selected-icon-color: #b0b0b0;
  --mat-minimal-pseudo-checkbox-selected-checkmark-color: #ff4081;
  --mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: #b0b0b0;
}

.mat-accent {
  --mat-full-pseudo-checkbox-selected-icon-color: #ff4081;
  --mat-full-pseudo-checkbox-selected-checkmark-color: #fafafa;
  --mat-full-pseudo-checkbox-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mat-full-pseudo-checkbox-disabled-selected-checkmark-color: #fafafa;
  --mat-full-pseudo-checkbox-disabled-unselected-icon-color: #b0b0b0;
  --mat-full-pseudo-checkbox-disabled-selected-icon-color: #b0b0b0;
  --mat-minimal-pseudo-checkbox-selected-checkmark-color: #ff4081;
  --mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: #b0b0b0;
}

.mat-warn {
  --mat-full-pseudo-checkbox-selected-icon-color: #f44336;
  --mat-full-pseudo-checkbox-selected-checkmark-color: #fafafa;
  --mat-full-pseudo-checkbox-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mat-full-pseudo-checkbox-disabled-selected-checkmark-color: #fafafa;
  --mat-full-pseudo-checkbox-disabled-unselected-icon-color: #b0b0b0;
  --mat-full-pseudo-checkbox-disabled-selected-icon-color: #b0b0b0;
  --mat-minimal-pseudo-checkbox-selected-checkmark-color: #f44336;
  --mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: #b0b0b0;
}

html {
  --mat-app-background-color: #fafafa;
  --mat-app-text-color: rgba(0, 0, 0, 0.87);
}

.mat-elevation-z0, .mat-mdc-elevation-specific.mat-elevation-z0 {
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z1, .mat-mdc-elevation-specific.mat-elevation-z1 {
  box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z2, .mat-mdc-elevation-specific.mat-elevation-z2 {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z3, .mat-mdc-elevation-specific.mat-elevation-z3 {
  box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z4, .mat-mdc-elevation-specific.mat-elevation-z4 {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z5, .mat-mdc-elevation-specific.mat-elevation-z5 {
  box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 5px 8px 0px rgba(0, 0, 0, 0.14), 0px 1px 14px 0px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z6, .mat-mdc-elevation-specific.mat-elevation-z6 {
  box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z7, .mat-mdc-elevation-specific.mat-elevation-z7 {
  box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.2), 0px 7px 10px 1px rgba(0, 0, 0, 0.14), 0px 2px 16px 1px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z8, .mat-mdc-elevation-specific.mat-elevation-z8 {
  box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z9, .mat-mdc-elevation-specific.mat-elevation-z9 {
  box-shadow: 0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z10, .mat-mdc-elevation-specific.mat-elevation-z10 {
  box-shadow: 0px 6px 6px -3px rgba(0, 0, 0, 0.2), 0px 10px 14px 1px rgba(0, 0, 0, 0.14), 0px 4px 18px 3px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z11, .mat-mdc-elevation-specific.mat-elevation-z11 {
  box-shadow: 0px 6px 7px -4px rgba(0, 0, 0, 0.2), 0px 11px 15px 1px rgba(0, 0, 0, 0.14), 0px 4px 20px 3px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z12, .mat-mdc-elevation-specific.mat-elevation-z12 {
  box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z13, .mat-mdc-elevation-specific.mat-elevation-z13 {
  box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 13px 19px 2px rgba(0, 0, 0, 0.14), 0px 5px 24px 4px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z14, .mat-mdc-elevation-specific.mat-elevation-z14 {
  box-shadow: 0px 7px 9px -4px rgba(0, 0, 0, 0.2), 0px 14px 21px 2px rgba(0, 0, 0, 0.14), 0px 5px 26px 4px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z15, .mat-mdc-elevation-specific.mat-elevation-z15 {
  box-shadow: 0px 8px 9px -5px rgba(0, 0, 0, 0.2), 0px 15px 22px 2px rgba(0, 0, 0, 0.14), 0px 6px 28px 5px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z16, .mat-mdc-elevation-specific.mat-elevation-z16 {
  box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z17, .mat-mdc-elevation-specific.mat-elevation-z17 {
  box-shadow: 0px 8px 11px -5px rgba(0, 0, 0, 0.2), 0px 17px 26px 2px rgba(0, 0, 0, 0.14), 0px 6px 32px 5px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z18, .mat-mdc-elevation-specific.mat-elevation-z18 {
  box-shadow: 0px 9px 11px -5px rgba(0, 0, 0, 0.2), 0px 18px 28px 2px rgba(0, 0, 0, 0.14), 0px 7px 34px 6px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z19, .mat-mdc-elevation-specific.mat-elevation-z19 {
  box-shadow: 0px 9px 12px -6px rgba(0, 0, 0, 0.2), 0px 19px 29px 2px rgba(0, 0, 0, 0.14), 0px 7px 36px 6px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z20, .mat-mdc-elevation-specific.mat-elevation-z20 {
  box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 20px 31px 3px rgba(0, 0, 0, 0.14), 0px 8px 38px 7px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z21, .mat-mdc-elevation-specific.mat-elevation-z21 {
  box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 21px 33px 3px rgba(0, 0, 0, 0.14), 0px 8px 40px 7px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z22, .mat-mdc-elevation-specific.mat-elevation-z22 {
  box-shadow: 0px 10px 14px -6px rgba(0, 0, 0, 0.2), 0px 22px 35px 3px rgba(0, 0, 0, 0.14), 0px 8px 42px 7px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z23, .mat-mdc-elevation-specific.mat-elevation-z23 {
  box-shadow: 0px 11px 14px -7px rgba(0, 0, 0, 0.2), 0px 23px 36px 3px rgba(0, 0, 0, 0.14), 0px 9px 44px 8px rgba(0, 0, 0, 0.12);
}

.mat-elevation-z24, .mat-mdc-elevation-specific.mat-elevation-z24 {
  box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
}

.mat-theme-loaded-marker {
  display: none;
}

html {
  --mat-option-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-option-label-text-line-height: 24px;
  --mat-option-label-text-size: 16px;
  --mat-option-label-text-tracking: 0.03125em;
  --mat-option-label-text-weight: 400;
}

html {
  --mat-optgroup-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-optgroup-label-text-line-height: 24px;
  --mat-optgroup-label-text-size: 16px;
  --mat-optgroup-label-text-tracking: 0.03125em;
  --mat-optgroup-label-text-weight: 400;
}

html {
  --mdc-elevated-card-container-shape: 4px;
  --mdc-outlined-card-container-shape: 4px;
  --mdc-outlined-card-outline-width: 1px;
}

html {
  --mdc-elevated-card-container-color: white;
  --mdc-elevated-card-container-elevation: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
  --mdc-outlined-card-container-color: white;
  --mdc-outlined-card-outline-color: rgba(0, 0, 0, 0.12);
  --mdc-outlined-card-container-elevation: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
  --mat-card-subtitle-text-color: rgba(0, 0, 0, 0.54);
}

html {
  --mat-card-title-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-card-title-text-line-height: 32px;
  --mat-card-title-text-size: 20px;
  --mat-card-title-text-tracking: 0.0125em;
  --mat-card-title-text-weight: 500;
  --mat-card-subtitle-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-card-subtitle-text-line-height: 22px;
  --mat-card-subtitle-text-size: 14px;
  --mat-card-subtitle-text-tracking: 0.0071428571em;
  --mat-card-subtitle-text-weight: 500;
}

html {
  --mdc-linear-progress-active-indicator-height: 4px;
  --mdc-linear-progress-track-height: 4px;
  --mdc-linear-progress-track-shape: 0;
}

.mat-mdc-progress-bar {
  --mdc-linear-progress-active-indicator-color: #304ffe;
  --mdc-linear-progress-track-color: rgba(48, 79, 254, 0.25);
}
.mat-mdc-progress-bar.mat-accent {
  --mdc-linear-progress-active-indicator-color: #ff4081;
  --mdc-linear-progress-track-color: rgba(255, 64, 129, 0.25);
}
.mat-mdc-progress-bar.mat-warn {
  --mdc-linear-progress-active-indicator-color: #f44336;
  --mdc-linear-progress-track-color: rgba(244, 67, 54, 0.25);
}

html {
  --mdc-plain-tooltip-container-shape: 4px;
  --mdc-plain-tooltip-supporting-text-line-height: 16px;
}

html {
  --mdc-plain-tooltip-container-color: #616161;
  --mdc-plain-tooltip-supporting-text-color: #fff;
}

html {
  --mdc-plain-tooltip-supporting-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-plain-tooltip-supporting-text-size: 12px;
  --mdc-plain-tooltip-supporting-text-weight: 400;
  --mdc-plain-tooltip-supporting-text-tracking: 0.0333333333em;
}

html {
  --mdc-filled-text-field-active-indicator-height: 1px;
  --mdc-filled-text-field-focus-active-indicator-height: 2px;
  --mdc-filled-text-field-container-shape: 4px;
  --mdc-outlined-text-field-outline-width: 1px;
  --mdc-outlined-text-field-focus-outline-width: 2px;
  --mdc-outlined-text-field-container-shape: 4px;
}

html {
  --mdc-filled-text-field-caret-color: #304ffe;
  --mdc-filled-text-field-focus-active-indicator-color: #304ffe;
  --mdc-filled-text-field-focus-label-text-color: rgba(48, 79, 254, 0.87);
  --mdc-filled-text-field-container-color: rgb(244.8, 244.8, 244.8);
  --mdc-filled-text-field-disabled-container-color: rgb(249.9, 249.9, 249.9);
  --mdc-filled-text-field-label-text-color: rgba(0, 0, 0, 0.6);
  --mdc-filled-text-field-hover-label-text-color: rgba(0, 0, 0, 0.6);
  --mdc-filled-text-field-disabled-label-text-color: rgba(0, 0, 0, 0.38);
  --mdc-filled-text-field-input-text-color: rgba(0, 0, 0, 0.87);
  --mdc-filled-text-field-disabled-input-text-color: rgba(0, 0, 0, 0.38);
  --mdc-filled-text-field-input-text-placeholder-color: rgba(0, 0, 0, 0.6);
  --mdc-filled-text-field-error-hover-label-text-color: #f44336;
  --mdc-filled-text-field-error-focus-label-text-color: #f44336;
  --mdc-filled-text-field-error-label-text-color: #f44336;
  --mdc-filled-text-field-error-caret-color: #f44336;
  --mdc-filled-text-field-active-indicator-color: rgba(0, 0, 0, 0.42);
  --mdc-filled-text-field-disabled-active-indicator-color: rgba(0, 0, 0, 0.06);
  --mdc-filled-text-field-hover-active-indicator-color: rgba(0, 0, 0, 0.87);
  --mdc-filled-text-field-error-active-indicator-color: #f44336;
  --mdc-filled-text-field-error-focus-active-indicator-color: #f44336;
  --mdc-filled-text-field-error-hover-active-indicator-color: #f44336;
  --mdc-outlined-text-field-caret-color: #304ffe;
  --mdc-outlined-text-field-focus-outline-color: #304ffe;
  --mdc-outlined-text-field-focus-label-text-color: rgba(48, 79, 254, 0.87);
  --mdc-outlined-text-field-label-text-color: rgba(0, 0, 0, 0.6);
  --mdc-outlined-text-field-hover-label-text-color: rgba(0, 0, 0, 0.6);
  --mdc-outlined-text-field-disabled-label-text-color: rgba(0, 0, 0, 0.38);
  --mdc-outlined-text-field-input-text-color: rgba(0, 0, 0, 0.87);
  --mdc-outlined-text-field-disabled-input-text-color: rgba(0, 0, 0, 0.38);
  --mdc-outlined-text-field-input-text-placeholder-color: rgba(0, 0, 0, 0.6);
  --mdc-outlined-text-field-error-caret-color: #f44336;
  --mdc-outlined-text-field-error-focus-label-text-color: #f44336;
  --mdc-outlined-text-field-error-label-text-color: #f44336;
  --mdc-outlined-text-field-error-hover-label-text-color: #f44336;
  --mdc-outlined-text-field-outline-color: rgba(0, 0, 0, 0.38);
  --mdc-outlined-text-field-disabled-outline-color: rgba(0, 0, 0, 0.06);
  --mdc-outlined-text-field-hover-outline-color: rgba(0, 0, 0, 0.87);
  --mdc-outlined-text-field-error-focus-outline-color: #f44336;
  --mdc-outlined-text-field-error-hover-outline-color: #f44336;
  --mdc-outlined-text-field-error-outline-color: #f44336;
  --mat-form-field-focus-select-arrow-color: rgba(48, 79, 254, 0.87);
  --mat-form-field-disabled-input-text-placeholder-color: rgba(0, 0, 0, 0.38);
  --mat-form-field-state-layer-color: rgba(0, 0, 0, 0.87);
  --mat-form-field-error-text-color: #f44336;
  --mat-form-field-select-option-text-color: inherit;
  --mat-form-field-select-disabled-option-text-color: GrayText;
  --mat-form-field-leading-icon-color: unset;
  --mat-form-field-disabled-leading-icon-color: unset;
  --mat-form-field-trailing-icon-color: unset;
  --mat-form-field-disabled-trailing-icon-color: unset;
  --mat-form-field-error-focus-trailing-icon-color: unset;
  --mat-form-field-error-hover-trailing-icon-color: unset;
  --mat-form-field-error-trailing-icon-color: unset;
  --mat-form-field-enabled-select-arrow-color: rgba(0, 0, 0, 0.54);
  --mat-form-field-disabled-select-arrow-color: rgba(0, 0, 0, 0.38);
  --mat-form-field-hover-state-layer-opacity: 0.04;
  --mat-form-field-focus-state-layer-opacity: 0.08;
}

.mat-mdc-form-field.mat-accent {
  --mdc-filled-text-field-caret-color: #ff4081;
  --mdc-filled-text-field-focus-active-indicator-color: #ff4081;
  --mdc-filled-text-field-focus-label-text-color: rgba(255, 64, 129, 0.87);
  --mdc-outlined-text-field-caret-color: #ff4081;
  --mdc-outlined-text-field-focus-outline-color: #ff4081;
  --mdc-outlined-text-field-focus-label-text-color: rgba(255, 64, 129, 0.87);
  --mat-form-field-focus-select-arrow-color: rgba(255, 64, 129, 0.87);
}

.mat-mdc-form-field.mat-warn {
  --mdc-filled-text-field-caret-color: #f44336;
  --mdc-filled-text-field-focus-active-indicator-color: #f44336;
  --mdc-filled-text-field-focus-label-text-color: rgba(244, 67, 54, 0.87);
  --mdc-outlined-text-field-caret-color: #f44336;
  --mdc-outlined-text-field-focus-outline-color: #f44336;
  --mdc-outlined-text-field-focus-label-text-color: rgba(244, 67, 54, 0.87);
  --mat-form-field-focus-select-arrow-color: rgba(244, 67, 54, 0.87);
}

html {
  --mat-form-field-container-height: 56px;
  --mat-form-field-filled-label-display: block;
  --mat-form-field-container-vertical-padding: 16px;
  --mat-form-field-filled-with-label-container-padding-top: 24px;
  --mat-form-field-filled-with-label-container-padding-bottom: 8px;
}

html {
  --mdc-filled-text-field-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-filled-text-field-label-text-size: 16px;
  --mdc-filled-text-field-label-text-tracking: 0.03125em;
  --mdc-filled-text-field-label-text-weight: 400;
  --mdc-outlined-text-field-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-outlined-text-field-label-text-size: 16px;
  --mdc-outlined-text-field-label-text-tracking: 0.03125em;
  --mdc-outlined-text-field-label-text-weight: 400;
  --mat-form-field-container-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-form-field-container-text-line-height: 24px;
  --mat-form-field-container-text-size: 16px;
  --mat-form-field-container-text-tracking: 0.03125em;
  --mat-form-field-container-text-weight: 400;
  --mat-form-field-outlined-label-text-populated-size: 16px;
  --mat-form-field-subscript-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-form-field-subscript-text-line-height: 20px;
  --mat-form-field-subscript-text-size: 12px;
  --mat-form-field-subscript-text-tracking: 0.0333333333em;
  --mat-form-field-subscript-text-weight: 400;
}

html {
  --mat-select-container-elevation-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}

html {
  --mat-select-panel-background-color: white;
  --mat-select-enabled-trigger-text-color: rgba(0, 0, 0, 0.87);
  --mat-select-disabled-trigger-text-color: rgba(0, 0, 0, 0.38);
  --mat-select-placeholder-text-color: rgba(0, 0, 0, 0.6);
  --mat-select-enabled-arrow-color: rgba(0, 0, 0, 0.54);
  --mat-select-disabled-arrow-color: rgba(0, 0, 0, 0.38);
  --mat-select-focused-arrow-color: rgba(48, 79, 254, 0.87);
  --mat-select-invalid-arrow-color: rgba(244, 67, 54, 0.87);
}
html .mat-mdc-form-field.mat-accent {
  --mat-select-panel-background-color: white;
  --mat-select-enabled-trigger-text-color: rgba(0, 0, 0, 0.87);
  --mat-select-disabled-trigger-text-color: rgba(0, 0, 0, 0.38);
  --mat-select-placeholder-text-color: rgba(0, 0, 0, 0.6);
  --mat-select-enabled-arrow-color: rgba(0, 0, 0, 0.54);
  --mat-select-disabled-arrow-color: rgba(0, 0, 0, 0.38);
  --mat-select-focused-arrow-color: rgba(255, 64, 129, 0.87);
  --mat-select-invalid-arrow-color: rgba(244, 67, 54, 0.87);
}
html .mat-mdc-form-field.mat-warn {
  --mat-select-panel-background-color: white;
  --mat-select-enabled-trigger-text-color: rgba(0, 0, 0, 0.87);
  --mat-select-disabled-trigger-text-color: rgba(0, 0, 0, 0.38);
  --mat-select-placeholder-text-color: rgba(0, 0, 0, 0.6);
  --mat-select-enabled-arrow-color: rgba(0, 0, 0, 0.54);
  --mat-select-disabled-arrow-color: rgba(0, 0, 0, 0.38);
  --mat-select-focused-arrow-color: rgba(244, 67, 54, 0.87);
  --mat-select-invalid-arrow-color: rgba(244, 67, 54, 0.87);
}

html {
  --mat-select-arrow-transform: translateY(-8px);
}

html {
  --mat-select-trigger-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-select-trigger-text-line-height: 24px;
  --mat-select-trigger-text-size: 16px;
  --mat-select-trigger-text-tracking: 0.03125em;
  --mat-select-trigger-text-weight: 400;
}

html {
  --mat-autocomplete-container-shape: 4px;
  --mat-autocomplete-container-elevation-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}

html {
  --mat-autocomplete-background-color: white;
}

html {
  --mdc-dialog-container-elevation-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
  --mdc-dialog-container-shadow-color: #000;
  --mdc-dialog-container-shape: 4px;
  --mat-dialog-container-max-width: 80vw;
  --mat-dialog-container-small-max-width: 80vw;
  --mat-dialog-container-min-width: 0;
  --mat-dialog-actions-alignment: start;
  --mat-dialog-actions-padding: 8px;
  --mat-dialog-content-padding: 20px 24px;
  --mat-dialog-with-actions-content-padding: 20px 24px;
  --mat-dialog-headline-padding: 0 24px 9px;
}

html {
  --mdc-dialog-container-color: white;
  --mdc-dialog-subhead-color: rgba(0, 0, 0, 0.87);
  --mdc-dialog-supporting-text-color: rgba(0, 0, 0, 0.6);
}

html {
  --mdc-dialog-subhead-font: Jost, "Jost Fallback", sans-serif;
  --mdc-dialog-subhead-line-height: 32px;
  --mdc-dialog-subhead-size: 20px;
  --mdc-dialog-subhead-weight: 500;
  --mdc-dialog-subhead-tracking: 0.0125em;
  --mdc-dialog-supporting-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-dialog-supporting-text-line-height: 24px;
  --mdc-dialog-supporting-text-size: 16px;
  --mdc-dialog-supporting-text-weight: 400;
  --mdc-dialog-supporting-text-tracking: 0.03125em;
}

.mat-mdc-standard-chip {
  --mdc-chip-container-shape-family: rounded;
  --mdc-chip-container-shape-radius: 16px 16px 16px 16px;
  --mdc-chip-with-avatar-avatar-shape-family: rounded;
  --mdc-chip-with-avatar-avatar-shape-radius: 14px 14px 14px 14px;
  --mdc-chip-with-avatar-avatar-size: 28px;
  --mdc-chip-with-icon-icon-size: 18px;
  --mdc-chip-outline-width: 0;
  --mdc-chip-outline-color: transparent;
  --mdc-chip-disabled-outline-color: transparent;
  --mdc-chip-focus-outline-color: transparent;
  --mdc-chip-hover-state-layer-opacity: 0.04;
  --mdc-chip-with-avatar-disabled-avatar-opacity: 1;
  --mdc-chip-flat-selected-outline-width: 0;
  --mdc-chip-selected-hover-state-layer-opacity: 0.04;
  --mdc-chip-with-trailing-icon-disabled-trailing-icon-opacity: 1;
  --mdc-chip-with-icon-disabled-icon-opacity: 1;
  --mat-chip-disabled-container-opacity: 0.4;
  --mat-chip-trailing-action-opacity: 0.54;
  --mat-chip-trailing-action-focus-opacity: 1;
  --mat-chip-trailing-action-state-layer-color: transparent;
  --mat-chip-selected-trailing-action-state-layer-color: transparent;
  --mat-chip-trailing-action-hover-state-layer-opacity: 0;
  --mat-chip-trailing-action-focus-state-layer-opacity: 0;
}

.mat-mdc-standard-chip {
  --mdc-chip-disabled-label-text-color: #212121;
  --mdc-chip-elevated-container-color: rgb(224.4, 224.4, 224.4);
  --mdc-chip-elevated-selected-container-color: rgb(224.4, 224.4, 224.4);
  --mdc-chip-elevated-disabled-container-color: rgb(224.4, 224.4, 224.4);
  --mdc-chip-flat-disabled-selected-container-color: rgb(224.4, 224.4, 224.4);
  --mdc-chip-focus-state-layer-color: black;
  --mdc-chip-hover-state-layer-color: black;
  --mdc-chip-selected-hover-state-layer-color: black;
  --mdc-chip-focus-state-layer-opacity: 0.12;
  --mdc-chip-selected-focus-state-layer-color: black;
  --mdc-chip-selected-focus-state-layer-opacity: 0.12;
  --mdc-chip-label-text-color: #212121;
  --mdc-chip-selected-label-text-color: #212121;
  --mdc-chip-with-icon-icon-color: #212121;
  --mdc-chip-with-icon-disabled-icon-color: #212121;
  --mdc-chip-with-icon-selected-icon-color: #212121;
  --mdc-chip-with-trailing-icon-disabled-trailing-icon-color: #212121;
  --mdc-chip-with-trailing-icon-trailing-icon-color: #212121;
  --mat-chip-selected-disabled-trailing-icon-color: #212121;
  --mat-chip-selected-trailing-icon-color: #212121;
}
.mat-mdc-standard-chip.mat-mdc-chip-selected.mat-primary, .mat-mdc-standard-chip.mat-mdc-chip-highlighted.mat-primary {
  --mdc-chip-disabled-label-text-color: white;
  --mdc-chip-elevated-container-color: #304ffe;
  --mdc-chip-elevated-selected-container-color: #304ffe;
  --mdc-chip-elevated-disabled-container-color: #304ffe;
  --mdc-chip-flat-disabled-selected-container-color: #304ffe;
  --mdc-chip-focus-state-layer-color: black;
  --mdc-chip-hover-state-layer-color: black;
  --mdc-chip-selected-hover-state-layer-color: black;
  --mdc-chip-focus-state-layer-opacity: 0.12;
  --mdc-chip-selected-focus-state-layer-color: black;
  --mdc-chip-selected-focus-state-layer-opacity: 0.12;
  --mdc-chip-label-text-color: white;
  --mdc-chip-selected-label-text-color: white;
  --mdc-chip-with-icon-icon-color: white;
  --mdc-chip-with-icon-disabled-icon-color: white;
  --mdc-chip-with-icon-selected-icon-color: white;
  --mdc-chip-with-trailing-icon-disabled-trailing-icon-color: white;
  --mdc-chip-with-trailing-icon-trailing-icon-color: white;
  --mat-chip-selected-disabled-trailing-icon-color: white;
  --mat-chip-selected-trailing-icon-color: white;
}
.mat-mdc-standard-chip.mat-mdc-chip-selected.mat-accent, .mat-mdc-standard-chip.mat-mdc-chip-highlighted.mat-accent {
  --mdc-chip-disabled-label-text-color: white;
  --mdc-chip-elevated-container-color: #ff4081;
  --mdc-chip-elevated-selected-container-color: #ff4081;
  --mdc-chip-elevated-disabled-container-color: #ff4081;
  --mdc-chip-flat-disabled-selected-container-color: #ff4081;
  --mdc-chip-focus-state-layer-color: black;
  --mdc-chip-hover-state-layer-color: black;
  --mdc-chip-selected-hover-state-layer-color: black;
  --mdc-chip-focus-state-layer-opacity: 0.12;
  --mdc-chip-selected-focus-state-layer-color: black;
  --mdc-chip-selected-focus-state-layer-opacity: 0.12;
  --mdc-chip-label-text-color: white;
  --mdc-chip-selected-label-text-color: white;
  --mdc-chip-with-icon-icon-color: white;
  --mdc-chip-with-icon-disabled-icon-color: white;
  --mdc-chip-with-icon-selected-icon-color: white;
  --mdc-chip-with-trailing-icon-disabled-trailing-icon-color: white;
  --mdc-chip-with-trailing-icon-trailing-icon-color: white;
  --mat-chip-selected-disabled-trailing-icon-color: white;
  --mat-chip-selected-trailing-icon-color: white;
}
.mat-mdc-standard-chip.mat-mdc-chip-selected.mat-warn, .mat-mdc-standard-chip.mat-mdc-chip-highlighted.mat-warn {
  --mdc-chip-disabled-label-text-color: white;
  --mdc-chip-elevated-container-color: #f44336;
  --mdc-chip-elevated-selected-container-color: #f44336;
  --mdc-chip-elevated-disabled-container-color: #f44336;
  --mdc-chip-flat-disabled-selected-container-color: #f44336;
  --mdc-chip-focus-state-layer-color: black;
  --mdc-chip-hover-state-layer-color: black;
  --mdc-chip-selected-hover-state-layer-color: black;
  --mdc-chip-focus-state-layer-opacity: 0.12;
  --mdc-chip-selected-focus-state-layer-color: black;
  --mdc-chip-selected-focus-state-layer-opacity: 0.12;
  --mdc-chip-label-text-color: white;
  --mdc-chip-selected-label-text-color: white;
  --mdc-chip-with-icon-icon-color: white;
  --mdc-chip-with-icon-disabled-icon-color: white;
  --mdc-chip-with-icon-selected-icon-color: white;
  --mdc-chip-with-trailing-icon-disabled-trailing-icon-color: white;
  --mdc-chip-with-trailing-icon-trailing-icon-color: white;
  --mat-chip-selected-disabled-trailing-icon-color: white;
  --mat-chip-selected-trailing-icon-color: white;
}

.mat-mdc-chip.mat-mdc-standard-chip {
  --mdc-chip-container-height: 32px;
}

.mat-mdc-standard-chip {
  --mdc-chip-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-chip-label-text-line-height: 20px;
  --mdc-chip-label-text-size: 14px;
  --mdc-chip-label-text-tracking: 0.0178571429em;
  --mdc-chip-label-text-weight: 400;
}

html {
  --mdc-switch-disabled-selected-icon-opacity: 0.38;
  --mdc-switch-disabled-track-opacity: 0.12;
  --mdc-switch-disabled-unselected-icon-opacity: 0.38;
  --mdc-switch-handle-height: 20px;
  --mdc-switch-handle-shape: 10px;
  --mdc-switch-handle-width: 20px;
  --mdc-switch-selected-icon-size: 18px;
  --mdc-switch-track-height: 14px;
  --mdc-switch-track-shape: 7px;
  --mdc-switch-track-width: 36px;
  --mdc-switch-unselected-icon-size: 18px;
  --mdc-switch-selected-focus-state-layer-opacity: 0.12;
  --mdc-switch-selected-hover-state-layer-opacity: 0.04;
  --mdc-switch-selected-pressed-state-layer-opacity: 0.1;
  --mdc-switch-unselected-focus-state-layer-opacity: 0.12;
  --mdc-switch-unselected-hover-state-layer-opacity: 0.04;
  --mdc-switch-unselected-pressed-state-layer-opacity: 0.1;
  --mat-switch-disabled-selected-handle-opacity: 0.38;
  --mat-switch-disabled-unselected-handle-opacity: 0.38;
  --mat-switch-unselected-handle-size: 20px;
  --mat-switch-selected-handle-size: 20px;
  --mat-switch-pressed-handle-size: 20px;
  --mat-switch-with-icon-handle-size: 20px;
  --mat-switch-selected-handle-horizontal-margin: 0;
  --mat-switch-selected-with-icon-handle-horizontal-margin: 0;
  --mat-switch-selected-pressed-handle-horizontal-margin: 0;
  --mat-switch-unselected-handle-horizontal-margin: 0;
  --mat-switch-unselected-with-icon-handle-horizontal-margin: 0;
  --mat-switch-unselected-pressed-handle-horizontal-margin: 0;
  --mat-switch-visible-track-opacity: 1;
  --mat-switch-hidden-track-opacity: 1;
  --mat-switch-visible-track-transition: transform 75ms 0ms cubic-bezier(0, 0, 0.2, 1);
  --mat-switch-hidden-track-transition: transform 75ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  --mat-switch-track-outline-width: 1px;
  --mat-switch-track-outline-color: transparent;
  --mat-switch-selected-track-outline-width: 1px;
  --mat-switch-disabled-unselected-track-outline-width: 1px;
  --mat-switch-disabled-unselected-track-outline-color: transparent;
}

html {
  --mdc-switch-selected-focus-state-layer-color: #3949ab;
  --mdc-switch-selected-handle-color: #3949ab;
  --mdc-switch-selected-hover-state-layer-color: #3949ab;
  --mdc-switch-selected-pressed-state-layer-color: #3949ab;
  --mdc-switch-selected-focus-handle-color: #1a237e;
  --mdc-switch-selected-hover-handle-color: #1a237e;
  --mdc-switch-selected-pressed-handle-color: #1a237e;
  --mdc-switch-selected-focus-track-color: #7986cb;
  --mdc-switch-selected-hover-track-color: #7986cb;
  --mdc-switch-selected-pressed-track-color: #7986cb;
  --mdc-switch-selected-track-color: #7986cb;
  --mdc-switch-disabled-selected-handle-color: #424242;
  --mdc-switch-disabled-selected-icon-color: #fff;
  --mdc-switch-disabled-selected-track-color: #424242;
  --mdc-switch-disabled-unselected-handle-color: #424242;
  --mdc-switch-disabled-unselected-icon-color: #fff;
  --mdc-switch-disabled-unselected-track-color: #424242;
  --mdc-switch-handle-surface-color: var(--mdc-theme-surface, #fff);
  --mdc-switch-handle-elevation-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
  --mdc-switch-handle-shadow-color: black;
  --mdc-switch-disabled-handle-elevation-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
  --mdc-switch-selected-icon-color: #fff;
  --mdc-switch-unselected-focus-handle-color: #212121;
  --mdc-switch-unselected-focus-state-layer-color: #424242;
  --mdc-switch-unselected-focus-track-color: #e0e0e0;
  --mdc-switch-unselected-handle-color: #616161;
  --mdc-switch-unselected-hover-handle-color: #212121;
  --mdc-switch-unselected-hover-state-layer-color: #424242;
  --mdc-switch-unselected-hover-track-color: #e0e0e0;
  --mdc-switch-unselected-icon-color: #fff;
  --mdc-switch-unselected-pressed-handle-color: #212121;
  --mdc-switch-unselected-pressed-state-layer-color: #424242;
  --mdc-switch-unselected-pressed-track-color: #e0e0e0;
  --mdc-switch-unselected-track-color: #e0e0e0;
  --mdc-switch-disabled-label-text-color: rgba(0, 0, 0, 0.38);
}
html .mat-mdc-slide-toggle {
  --mdc-form-field-label-text-color: rgba(0, 0, 0, 0.87);
}
html .mat-mdc-slide-toggle.mat-accent {
  --mdc-switch-selected-focus-state-layer-color: #d81b60;
  --mdc-switch-selected-handle-color: #d81b60;
  --mdc-switch-selected-hover-state-layer-color: #d81b60;
  --mdc-switch-selected-pressed-state-layer-color: #d81b60;
  --mdc-switch-selected-focus-handle-color: #880e4f;
  --mdc-switch-selected-hover-handle-color: #880e4f;
  --mdc-switch-selected-pressed-handle-color: #880e4f;
  --mdc-switch-selected-focus-track-color: #f06292;
  --mdc-switch-selected-hover-track-color: #f06292;
  --mdc-switch-selected-pressed-track-color: #f06292;
  --mdc-switch-selected-track-color: #f06292;
}
html .mat-mdc-slide-toggle.mat-warn {
  --mdc-switch-selected-focus-state-layer-color: #e53935;
  --mdc-switch-selected-handle-color: #e53935;
  --mdc-switch-selected-hover-state-layer-color: #e53935;
  --mdc-switch-selected-pressed-state-layer-color: #e53935;
  --mdc-switch-selected-focus-handle-color: #b71c1c;
  --mdc-switch-selected-hover-handle-color: #b71c1c;
  --mdc-switch-selected-pressed-handle-color: #b71c1c;
  --mdc-switch-selected-focus-track-color: #e57373;
  --mdc-switch-selected-hover-track-color: #e57373;
  --mdc-switch-selected-pressed-track-color: #e57373;
  --mdc-switch-selected-track-color: #e57373;
}

html {
  --mdc-switch-state-layer-size: 40px;
}

html .mat-mdc-slide-toggle {
  --mdc-form-field-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-form-field-label-text-line-height: 20px;
  --mdc-form-field-label-text-size: 14px;
  --mdc-form-field-label-text-tracking: 0.0178571429em;
  --mdc-form-field-label-text-weight: 400;
}

html {
  --mdc-radio-disabled-selected-icon-opacity: 0.38;
  --mdc-radio-disabled-unselected-icon-opacity: 0.38;
  --mdc-radio-state-layer-size: 40px;
}

.mat-mdc-radio-button {
  --mdc-form-field-label-text-color: rgba(0, 0, 0, 0.87);
}
.mat-mdc-radio-button.mat-primary {
  --mdc-radio-disabled-selected-icon-color: black;
  --mdc-radio-disabled-unselected-icon-color: black;
  --mdc-radio-unselected-hover-icon-color: #212121;
  --mdc-radio-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-selected-focus-icon-color: #304ffe;
  --mdc-radio-selected-hover-icon-color: #304ffe;
  --mdc-radio-selected-icon-color: #304ffe;
  --mdc-radio-selected-pressed-icon-color: #304ffe;
  --mat-radio-ripple-color: black;
  --mat-radio-checked-ripple-color: #304ffe;
  --mat-radio-disabled-label-color: rgba(0, 0, 0, 0.38);
}
.mat-mdc-radio-button.mat-accent {
  --mdc-radio-disabled-selected-icon-color: black;
  --mdc-radio-disabled-unselected-icon-color: black;
  --mdc-radio-unselected-hover-icon-color: #212121;
  --mdc-radio-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-selected-focus-icon-color: #ff4081;
  --mdc-radio-selected-hover-icon-color: #ff4081;
  --mdc-radio-selected-icon-color: #ff4081;
  --mdc-radio-selected-pressed-icon-color: #ff4081;
  --mat-radio-ripple-color: black;
  --mat-radio-checked-ripple-color: #ff4081;
  --mat-radio-disabled-label-color: rgba(0, 0, 0, 0.38);
}
.mat-mdc-radio-button.mat-warn {
  --mdc-radio-disabled-selected-icon-color: black;
  --mdc-radio-disabled-unselected-icon-color: black;
  --mdc-radio-unselected-hover-icon-color: #212121;
  --mdc-radio-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-selected-focus-icon-color: #f44336;
  --mdc-radio-selected-hover-icon-color: #f44336;
  --mdc-radio-selected-icon-color: #f44336;
  --mdc-radio-selected-pressed-icon-color: #f44336;
  --mat-radio-ripple-color: black;
  --mat-radio-checked-ripple-color: #f44336;
  --mat-radio-disabled-label-color: rgba(0, 0, 0, 0.38);
}

html {
  --mdc-radio-state-layer-size: 40px;
  --mat-radio-touch-target-display: block;
}

.mat-mdc-radio-button {
  --mdc-form-field-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-form-field-label-text-line-height: 20px;
  --mdc-form-field-label-text-size: 14px;
  --mdc-form-field-label-text-tracking: 0.0178571429em;
  --mdc-form-field-label-text-weight: 400;
}

html {
  --mat-slider-value-indicator-width: auto;
  --mat-slider-value-indicator-height: 32px;
  --mat-slider-value-indicator-caret-display: block;
  --mat-slider-value-indicator-border-radius: 4px;
  --mat-slider-value-indicator-padding: 0 12px;
  --mat-slider-value-indicator-text-transform: none;
  --mat-slider-value-indicator-container-transform: translateX(-50%);
  --mdc-slider-active-track-height: 6px;
  --mdc-slider-active-track-shape: 9999px;
  --mdc-slider-handle-height: 20px;
  --mdc-slider-handle-shape: 50%;
  --mdc-slider-handle-width: 20px;
  --mdc-slider-inactive-track-height: 4px;
  --mdc-slider-inactive-track-shape: 9999px;
  --mdc-slider-with-overlap-handle-outline-width: 1px;
  --mdc-slider-with-tick-marks-active-container-opacity: 0.6;
  --mdc-slider-with-tick-marks-container-shape: 50%;
  --mdc-slider-with-tick-marks-container-size: 2px;
  --mdc-slider-with-tick-marks-inactive-container-opacity: 0.6;
}

html {
  --mdc-slider-handle-color: #304ffe;
  --mdc-slider-focus-handle-color: #304ffe;
  --mdc-slider-hover-handle-color: #304ffe;
  --mdc-slider-active-track-color: #304ffe;
  --mdc-slider-inactive-track-color: #304ffe;
  --mdc-slider-with-tick-marks-inactive-container-color: #304ffe;
  --mdc-slider-with-tick-marks-active-container-color: white;
  --mdc-slider-disabled-active-track-color: #000;
  --mdc-slider-disabled-handle-color: #000;
  --mdc-slider-disabled-inactive-track-color: #000;
  --mdc-slider-label-container-color: #000;
  --mdc-slider-label-label-text-color: #fff;
  --mdc-slider-with-overlap-handle-outline-color: #fff;
  --mdc-slider-with-tick-marks-disabled-container-color: #000;
  --mdc-slider-handle-elevation: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
  --mat-slider-ripple-color: #304ffe;
  --mat-slider-hover-state-layer-color: rgba(48, 79, 254, 0.05);
  --mat-slider-focus-state-layer-color: rgba(48, 79, 254, 0.2);
  --mat-slider-value-indicator-opacity: 0.6;
}
html .mat-accent {
  --mat-slider-ripple-color: #ff4081;
  --mat-slider-hover-state-layer-color: rgba(255, 64, 129, 0.05);
  --mat-slider-focus-state-layer-color: rgba(255, 64, 129, 0.2);
  --mdc-slider-handle-color: #ff4081;
  --mdc-slider-focus-handle-color: #ff4081;
  --mdc-slider-hover-handle-color: #ff4081;
  --mdc-slider-active-track-color: #ff4081;
  --mdc-slider-inactive-track-color: #ff4081;
  --mdc-slider-with-tick-marks-inactive-container-color: #ff4081;
  --mdc-slider-with-tick-marks-active-container-color: white;
}
html .mat-warn {
  --mat-slider-ripple-color: #f44336;
  --mat-slider-hover-state-layer-color: rgba(244, 67, 54, 0.05);
  --mat-slider-focus-state-layer-color: rgba(244, 67, 54, 0.2);
  --mdc-slider-handle-color: #f44336;
  --mdc-slider-focus-handle-color: #f44336;
  --mdc-slider-hover-handle-color: #f44336;
  --mdc-slider-active-track-color: #f44336;
  --mdc-slider-inactive-track-color: #f44336;
  --mdc-slider-with-tick-marks-inactive-container-color: #f44336;
  --mdc-slider-with-tick-marks-active-container-color: white;
}

html {
  --mdc-slider-label-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-slider-label-label-text-size: 14px;
  --mdc-slider-label-label-text-line-height: 22px;
  --mdc-slider-label-label-text-tracking: 0.0071428571em;
  --mdc-slider-label-label-text-weight: 500;
}

html {
  --mat-menu-container-shape: 4px;
  --mat-menu-divider-bottom-spacing: 0;
  --mat-menu-divider-top-spacing: 0;
  --mat-menu-item-spacing: 16px;
  --mat-menu-item-icon-size: 24px;
  --mat-menu-item-leading-spacing: 16px;
  --mat-menu-item-trailing-spacing: 16px;
  --mat-menu-item-with-icon-leading-spacing: 16px;
  --mat-menu-item-with-icon-trailing-spacing: 16px;
}

html {
  --mat-menu-item-label-text-color: rgba(0, 0, 0, 0.87);
  --mat-menu-item-icon-color: rgba(0, 0, 0, 0.87);
  --mat-menu-item-hover-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-menu-item-focus-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-menu-container-color: white;
  --mat-menu-divider-color: rgba(0, 0, 0, 0.12);
}

html {
  --mat-menu-item-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-menu-item-label-text-size: 16px;
  --mat-menu-item-label-text-tracking: 0.03125em;
  --mat-menu-item-label-text-line-height: 24px;
  --mat-menu-item-label-text-weight: 400;
}

html {
  --mdc-list-list-item-container-shape: 0;
  --mdc-list-list-item-leading-avatar-shape: 50%;
  --mdc-list-list-item-container-color: transparent;
  --mdc-list-list-item-selected-container-color: transparent;
  --mdc-list-list-item-leading-avatar-color: transparent;
  --mdc-list-list-item-leading-icon-size: 24px;
  --mdc-list-list-item-leading-avatar-size: 40px;
  --mdc-list-list-item-trailing-icon-size: 24px;
  --mdc-list-list-item-disabled-state-layer-color: transparent;
  --mdc-list-list-item-disabled-state-layer-opacity: 0;
  --mdc-list-list-item-disabled-label-text-opacity: 0.38;
  --mdc-list-list-item-disabled-leading-icon-opacity: 0.38;
  --mdc-list-list-item-disabled-trailing-icon-opacity: 0.38;
  --mat-list-active-indicator-color: transparent;
  --mat-list-active-indicator-shape: 4px;
}

html {
  --mdc-list-list-item-label-text-color: rgba(0, 0, 0, 0.87);
  --mdc-list-list-item-supporting-text-color: rgba(0, 0, 0, 0.54);
  --mdc-list-list-item-leading-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-list-list-item-trailing-supporting-text-color: rgba(0, 0, 0, 0.38);
  --mdc-list-list-item-trailing-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-list-list-item-selected-trailing-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-list-list-item-disabled-label-text-color: black;
  --mdc-list-list-item-disabled-leading-icon-color: black;
  --mdc-list-list-item-disabled-trailing-icon-color: black;
  --mdc-list-list-item-hover-label-text-color: rgba(0, 0, 0, 0.87);
  --mdc-list-list-item-hover-leading-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-list-list-item-hover-trailing-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-list-list-item-focus-label-text-color: rgba(0, 0, 0, 0.87);
  --mdc-list-list-item-hover-state-layer-color: black;
  --mdc-list-list-item-hover-state-layer-opacity: 0.04;
  --mdc-list-list-item-focus-state-layer-color: black;
  --mdc-list-list-item-focus-state-layer-opacity: 0.12;
}

.mdc-list-item__start,
.mdc-list-item__end {
  --mdc-radio-disabled-selected-icon-color: black;
  --mdc-radio-disabled-unselected-icon-color: black;
  --mdc-radio-unselected-hover-icon-color: #212121;
  --mdc-radio-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-selected-focus-icon-color: #304ffe;
  --mdc-radio-selected-hover-icon-color: #304ffe;
  --mdc-radio-selected-icon-color: #304ffe;
  --mdc-radio-selected-pressed-icon-color: #304ffe;
}

.mat-accent .mdc-list-item__start,
.mat-accent .mdc-list-item__end {
  --mdc-radio-disabled-selected-icon-color: black;
  --mdc-radio-disabled-unselected-icon-color: black;
  --mdc-radio-unselected-hover-icon-color: #212121;
  --mdc-radio-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-selected-focus-icon-color: #ff4081;
  --mdc-radio-selected-hover-icon-color: #ff4081;
  --mdc-radio-selected-icon-color: #ff4081;
  --mdc-radio-selected-pressed-icon-color: #ff4081;
}

.mat-warn .mdc-list-item__start,
.mat-warn .mdc-list-item__end {
  --mdc-radio-disabled-selected-icon-color: black;
  --mdc-radio-disabled-unselected-icon-color: black;
  --mdc-radio-unselected-hover-icon-color: #212121;
  --mdc-radio-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-radio-selected-focus-icon-color: #f44336;
  --mdc-radio-selected-hover-icon-color: #f44336;
  --mdc-radio-selected-icon-color: #f44336;
  --mdc-radio-selected-pressed-icon-color: #f44336;
}

.mat-mdc-list-option {
  --mdc-checkbox-disabled-selected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-disabled-unselected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-selected-checkmark-color: white;
  --mdc-checkbox-selected-focus-icon-color: #304ffe;
  --mdc-checkbox-selected-hover-icon-color: #304ffe;
  --mdc-checkbox-selected-icon-color: #304ffe;
  --mdc-checkbox-selected-pressed-icon-color: #304ffe;
  --mdc-checkbox-unselected-focus-icon-color: #212121;
  --mdc-checkbox-unselected-hover-icon-color: #212121;
  --mdc-checkbox-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-selected-focus-state-layer-color: #304ffe;
  --mdc-checkbox-selected-hover-state-layer-color: #304ffe;
  --mdc-checkbox-selected-pressed-state-layer-color: #304ffe;
  --mdc-checkbox-unselected-focus-state-layer-color: black;
  --mdc-checkbox-unselected-hover-state-layer-color: black;
  --mdc-checkbox-unselected-pressed-state-layer-color: black;
}

.mat-mdc-list-option.mat-accent {
  --mdc-checkbox-disabled-selected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-disabled-unselected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-selected-checkmark-color: white;
  --mdc-checkbox-selected-focus-icon-color: #ff4081;
  --mdc-checkbox-selected-hover-icon-color: #ff4081;
  --mdc-checkbox-selected-icon-color: #ff4081;
  --mdc-checkbox-selected-pressed-icon-color: #ff4081;
  --mdc-checkbox-unselected-focus-icon-color: #212121;
  --mdc-checkbox-unselected-hover-icon-color: #212121;
  --mdc-checkbox-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-selected-focus-state-layer-color: #ff4081;
  --mdc-checkbox-selected-hover-state-layer-color: #ff4081;
  --mdc-checkbox-selected-pressed-state-layer-color: #ff4081;
  --mdc-checkbox-unselected-focus-state-layer-color: black;
  --mdc-checkbox-unselected-hover-state-layer-color: black;
  --mdc-checkbox-unselected-pressed-state-layer-color: black;
}

.mat-mdc-list-option.mat-warn {
  --mdc-checkbox-disabled-selected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-disabled-unselected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-selected-checkmark-color: white;
  --mdc-checkbox-selected-focus-icon-color: #f44336;
  --mdc-checkbox-selected-hover-icon-color: #f44336;
  --mdc-checkbox-selected-icon-color: #f44336;
  --mdc-checkbox-selected-pressed-icon-color: #f44336;
  --mdc-checkbox-unselected-focus-icon-color: #212121;
  --mdc-checkbox-unselected-hover-icon-color: #212121;
  --mdc-checkbox-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-selected-focus-state-layer-color: #f44336;
  --mdc-checkbox-selected-hover-state-layer-color: #f44336;
  --mdc-checkbox-selected-pressed-state-layer-color: #f44336;
  --mdc-checkbox-unselected-focus-state-layer-color: black;
  --mdc-checkbox-unselected-hover-state-layer-color: black;
  --mdc-checkbox-unselected-pressed-state-layer-color: black;
}

.mat-mdc-list-base.mat-mdc-list-base .mdc-list-item--selected .mdc-list-item__primary-text,
.mat-mdc-list-base.mat-mdc-list-base .mdc-list-item--activated .mdc-list-item__primary-text {
  color: #304ffe;
}
.mat-mdc-list-base.mat-mdc-list-base .mdc-list-item--selected.mdc-list-item--with-leading-icon .mdc-list-item__start,
.mat-mdc-list-base.mat-mdc-list-base .mdc-list-item--activated.mdc-list-item--with-leading-icon .mdc-list-item__start {
  color: #304ffe;
}

.mat-mdc-list-base .mdc-list-item--disabled .mdc-list-item__start,
.mat-mdc-list-base .mdc-list-item--disabled .mdc-list-item__content,
.mat-mdc-list-base .mdc-list-item--disabled .mdc-list-item__end {
  opacity: 1;
}

html {
  --mdc-list-list-item-one-line-container-height: 48px;
  --mdc-list-list-item-two-line-container-height: 64px;
  --mdc-list-list-item-three-line-container-height: 88px;
  --mat-list-list-item-leading-icon-start-space: 16px;
  --mat-list-list-item-leading-icon-end-space: 32px;
}

.mdc-list-item__start,
.mdc-list-item__end {
  --mdc-radio-state-layer-size: 40px;
}

.mat-mdc-list-item.mdc-list-item--with-leading-avatar.mdc-list-item--with-one-line, .mat-mdc-list-item.mdc-list-item--with-leading-checkbox.mdc-list-item--with-one-line, .mat-mdc-list-item.mdc-list-item--with-leading-icon.mdc-list-item--with-one-line {
  height: 56px;
}
.mat-mdc-list-item.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines, .mat-mdc-list-item.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines, .mat-mdc-list-item.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines {
  height: 72px;
}

html {
  --mdc-list-list-item-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-list-list-item-label-text-line-height: 24px;
  --mdc-list-list-item-label-text-size: 16px;
  --mdc-list-list-item-label-text-tracking: 0.03125em;
  --mdc-list-list-item-label-text-weight: 400;
  --mdc-list-list-item-supporting-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-list-list-item-supporting-text-line-height: 20px;
  --mdc-list-list-item-supporting-text-size: 14px;
  --mdc-list-list-item-supporting-text-tracking: 0.0178571429em;
  --mdc-list-list-item-supporting-text-weight: 400;
  --mdc-list-list-item-trailing-supporting-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-list-list-item-trailing-supporting-text-line-height: 20px;
  --mdc-list-list-item-trailing-supporting-text-size: 12px;
  --mdc-list-list-item-trailing-supporting-text-tracking: 0.0333333333em;
  --mdc-list-list-item-trailing-supporting-text-weight: 400;
}

.mdc-list-group__subheader {
  font: 400 16px / 28px Jost, "Jost Fallback", sans-serif;
  letter-spacing: 0.009375em;
}

html {
  --mat-paginator-container-text-color: rgba(0, 0, 0, 0.87);
  --mat-paginator-container-background-color: white;
  --mat-paginator-enabled-icon-color: rgba(0, 0, 0, 0.54);
  --mat-paginator-disabled-icon-color: rgba(0, 0, 0, 0.12);
}

html {
  --mat-paginator-container-size: 56px;
  --mat-paginator-form-field-container-height: 40px;
  --mat-paginator-form-field-container-vertical-padding: 8px;
}

html {
  --mat-paginator-container-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-paginator-container-text-line-height: 20px;
  --mat-paginator-container-text-size: 12px;
  --mat-paginator-container-text-tracking: 0.0333333333em;
  --mat-paginator-container-text-weight: 400;
  --mat-paginator-select-trigger-text-size: 12px;
}

html {
  --mdc-tab-indicator-active-indicator-height: 2px;
  --mdc-tab-indicator-active-indicator-shape: 0;
  --mdc-secondary-navigation-tab-container-height: 48px;
  --mat-tab-header-divider-color: transparent;
  --mat-tab-header-divider-height: 0;
}

.mat-mdc-tab-group, .mat-mdc-tab-nav-bar {
  --mdc-tab-indicator-active-indicator-color: #304ffe;
  --mat-tab-header-disabled-ripple-color: rgba(0, 0, 0, 0.38);
  --mat-tab-header-pagination-icon-color: black;
  --mat-tab-header-inactive-label-text-color: rgba(0, 0, 0, 0.6);
  --mat-tab-header-active-label-text-color: #304ffe;
  --mat-tab-header-active-ripple-color: #304ffe;
  --mat-tab-header-inactive-ripple-color: #304ffe;
  --mat-tab-header-inactive-focus-label-text-color: rgba(0, 0, 0, 0.6);
  --mat-tab-header-inactive-hover-label-text-color: rgba(0, 0, 0, 0.6);
  --mat-tab-header-active-focus-label-text-color: #304ffe;
  --mat-tab-header-active-hover-label-text-color: #304ffe;
  --mat-tab-header-active-focus-indicator-color: #304ffe;
  --mat-tab-header-active-hover-indicator-color: #304ffe;
}
.mat-mdc-tab-group.mat-accent, .mat-mdc-tab-nav-bar.mat-accent {
  --mdc-tab-indicator-active-indicator-color: #ff4081;
  --mat-tab-header-disabled-ripple-color: rgba(0, 0, 0, 0.38);
  --mat-tab-header-pagination-icon-color: black;
  --mat-tab-header-inactive-label-text-color: rgba(0, 0, 0, 0.6);
  --mat-tab-header-active-label-text-color: #ff4081;
  --mat-tab-header-active-ripple-color: #ff4081;
  --mat-tab-header-inactive-ripple-color: #ff4081;
  --mat-tab-header-inactive-focus-label-text-color: rgba(0, 0, 0, 0.6);
  --mat-tab-header-inactive-hover-label-text-color: rgba(0, 0, 0, 0.6);
  --mat-tab-header-active-focus-label-text-color: #ff4081;
  --mat-tab-header-active-hover-label-text-color: #ff4081;
  --mat-tab-header-active-focus-indicator-color: #ff4081;
  --mat-tab-header-active-hover-indicator-color: #ff4081;
}
.mat-mdc-tab-group.mat-warn, .mat-mdc-tab-nav-bar.mat-warn {
  --mdc-tab-indicator-active-indicator-color: #f44336;
  --mat-tab-header-disabled-ripple-color: rgba(0, 0, 0, 0.38);
  --mat-tab-header-pagination-icon-color: black;
  --mat-tab-header-inactive-label-text-color: rgba(0, 0, 0, 0.6);
  --mat-tab-header-active-label-text-color: #f44336;
  --mat-tab-header-active-ripple-color: #f44336;
  --mat-tab-header-inactive-ripple-color: #f44336;
  --mat-tab-header-inactive-focus-label-text-color: rgba(0, 0, 0, 0.6);
  --mat-tab-header-inactive-hover-label-text-color: rgba(0, 0, 0, 0.6);
  --mat-tab-header-active-focus-label-text-color: #f44336;
  --mat-tab-header-active-hover-label-text-color: #f44336;
  --mat-tab-header-active-focus-indicator-color: #f44336;
  --mat-tab-header-active-hover-indicator-color: #f44336;
}
.mat-mdc-tab-group.mat-background-primary, .mat-mdc-tab-nav-bar.mat-background-primary {
  --mat-tab-header-with-background-background-color: #304ffe;
  --mat-tab-header-with-background-foreground-color: white;
}
.mat-mdc-tab-group.mat-background-accent, .mat-mdc-tab-nav-bar.mat-background-accent {
  --mat-tab-header-with-background-background-color: #ff4081;
  --mat-tab-header-with-background-foreground-color: white;
}
.mat-mdc-tab-group.mat-background-warn, .mat-mdc-tab-nav-bar.mat-background-warn {
  --mat-tab-header-with-background-background-color: #f44336;
  --mat-tab-header-with-background-foreground-color: white;
}

.mat-mdc-tab-header {
  --mdc-secondary-navigation-tab-container-height: 48px;
}

.mat-mdc-tab-header {
  --mat-tab-header-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-tab-header-label-text-size: 14px;
  --mat-tab-header-label-text-tracking: 0.0892857143em;
  --mat-tab-header-label-text-line-height: 36px;
  --mat-tab-header-label-text-weight: 500;
}

html {
  --mdc-checkbox-disabled-selected-checkmark-color: #fff;
  --mdc-checkbox-selected-focus-state-layer-opacity: 0.16;
  --mdc-checkbox-selected-hover-state-layer-opacity: 0.04;
  --mdc-checkbox-selected-pressed-state-layer-opacity: 0.16;
  --mdc-checkbox-unselected-focus-state-layer-opacity: 0.16;
  --mdc-checkbox-unselected-hover-state-layer-opacity: 0.04;
  --mdc-checkbox-unselected-pressed-state-layer-opacity: 0.16;
}

html {
  --mdc-checkbox-disabled-selected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-disabled-unselected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-selected-checkmark-color: white;
  --mdc-checkbox-selected-focus-icon-color: #ff4081;
  --mdc-checkbox-selected-hover-icon-color: #ff4081;
  --mdc-checkbox-selected-icon-color: #ff4081;
  --mdc-checkbox-selected-pressed-icon-color: #ff4081;
  --mdc-checkbox-unselected-focus-icon-color: #212121;
  --mdc-checkbox-unselected-hover-icon-color: #212121;
  --mdc-checkbox-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-selected-focus-state-layer-color: #ff4081;
  --mdc-checkbox-selected-hover-state-layer-color: #ff4081;
  --mdc-checkbox-selected-pressed-state-layer-color: #ff4081;
  --mdc-checkbox-unselected-focus-state-layer-color: black;
  --mdc-checkbox-unselected-hover-state-layer-color: black;
  --mdc-checkbox-unselected-pressed-state-layer-color: black;
  --mat-checkbox-disabled-label-color: rgba(0, 0, 0, 0.38);
}

.mat-mdc-checkbox {
  --mdc-form-field-label-text-color: rgba(0, 0, 0, 0.87);
}
.mat-mdc-checkbox.mat-primary {
  --mdc-checkbox-disabled-selected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-disabled-unselected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-selected-checkmark-color: white;
  --mdc-checkbox-selected-focus-icon-color: #304ffe;
  --mdc-checkbox-selected-hover-icon-color: #304ffe;
  --mdc-checkbox-selected-icon-color: #304ffe;
  --mdc-checkbox-selected-pressed-icon-color: #304ffe;
  --mdc-checkbox-unselected-focus-icon-color: #212121;
  --mdc-checkbox-unselected-hover-icon-color: #212121;
  --mdc-checkbox-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-selected-focus-state-layer-color: #304ffe;
  --mdc-checkbox-selected-hover-state-layer-color: #304ffe;
  --mdc-checkbox-selected-pressed-state-layer-color: #304ffe;
  --mdc-checkbox-unselected-focus-state-layer-color: black;
  --mdc-checkbox-unselected-hover-state-layer-color: black;
  --mdc-checkbox-unselected-pressed-state-layer-color: black;
}
.mat-mdc-checkbox.mat-warn {
  --mdc-checkbox-disabled-selected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-disabled-unselected-icon-color: rgba(0, 0, 0, 0.38);
  --mdc-checkbox-selected-checkmark-color: white;
  --mdc-checkbox-selected-focus-icon-color: #f44336;
  --mdc-checkbox-selected-hover-icon-color: #f44336;
  --mdc-checkbox-selected-icon-color: #f44336;
  --mdc-checkbox-selected-pressed-icon-color: #f44336;
  --mdc-checkbox-unselected-focus-icon-color: #212121;
  --mdc-checkbox-unselected-hover-icon-color: #212121;
  --mdc-checkbox-unselected-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-unselected-pressed-icon-color: rgba(0, 0, 0, 0.54);
  --mdc-checkbox-selected-focus-state-layer-color: #f44336;
  --mdc-checkbox-selected-hover-state-layer-color: #f44336;
  --mdc-checkbox-selected-pressed-state-layer-color: #f44336;
  --mdc-checkbox-unselected-focus-state-layer-color: black;
  --mdc-checkbox-unselected-hover-state-layer-color: black;
  --mdc-checkbox-unselected-pressed-state-layer-color: black;
}

html {
  --mdc-checkbox-state-layer-size: 40px;
  --mat-checkbox-touch-target-display: block;
}

.mat-mdc-checkbox {
  --mdc-form-field-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-form-field-label-text-line-height: 20px;
  --mdc-form-field-label-text-size: 14px;
  --mdc-form-field-label-text-tracking: 0.0178571429em;
  --mdc-form-field-label-text-weight: 400;
}

html {
  --mdc-text-button-container-shape: 4px;
  --mdc-text-button-keep-touch-target: false;
  --mdc-filled-button-container-shape: 4px;
  --mdc-filled-button-keep-touch-target: false;
  --mdc-protected-button-container-shape: 4px;
  --mdc-protected-button-keep-touch-target: false;
  --mdc-outlined-button-keep-touch-target: false;
  --mdc-outlined-button-outline-width: 1px;
  --mdc-outlined-button-container-shape: 4px;
  --mat-text-button-horizontal-padding: 8px;
  --mat-text-button-with-icon-horizontal-padding: 8px;
  --mat-text-button-icon-spacing: 8px;
  --mat-text-button-icon-offset: 0;
  --mat-filled-button-horizontal-padding: 16px;
  --mat-filled-button-icon-spacing: 8px;
  --mat-filled-button-icon-offset: -4px;
  --mat-protected-button-horizontal-padding: 16px;
  --mat-protected-button-icon-spacing: 8px;
  --mat-protected-button-icon-offset: -4px;
  --mat-outlined-button-horizontal-padding: 15px;
  --mat-outlined-button-icon-spacing: 8px;
  --mat-outlined-button-icon-offset: -4px;
}

html {
  --mdc-text-button-label-text-color: black;
  --mdc-text-button-disabled-label-text-color: rgba(0, 0, 0, 0.38);
  --mat-text-button-state-layer-color: black;
  --mat-text-button-disabled-state-layer-color: black;
  --mat-text-button-ripple-color: rgba(0, 0, 0, 0.1);
  --mat-text-button-hover-state-layer-opacity: 0.04;
  --mat-text-button-focus-state-layer-opacity: 0.12;
  --mat-text-button-pressed-state-layer-opacity: 0.12;
  --mdc-filled-button-container-color: white;
  --mdc-filled-button-label-text-color: black;
  --mdc-filled-button-disabled-container-color: rgba(0, 0, 0, 0.12);
  --mdc-filled-button-disabled-label-text-color: rgba(0, 0, 0, 0.38);
  --mat-filled-button-state-layer-color: black;
  --mat-filled-button-disabled-state-layer-color: black;
  --mat-filled-button-ripple-color: rgba(0, 0, 0, 0.1);
  --mat-filled-button-hover-state-layer-opacity: 0.04;
  --mat-filled-button-focus-state-layer-opacity: 0.12;
  --mat-filled-button-pressed-state-layer-opacity: 0.12;
  --mdc-protected-button-container-color: white;
  --mdc-protected-button-label-text-color: black;
  --mdc-protected-button-disabled-container-color: rgba(0, 0, 0, 0.12);
  --mdc-protected-button-disabled-label-text-color: rgba(0, 0, 0, 0.38);
  --mdc-protected-button-container-elevation-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
  --mdc-protected-button-disabled-container-elevation-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
  --mdc-protected-button-focus-container-elevation-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
  --mdc-protected-button-hover-container-elevation-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
  --mdc-protected-button-pressed-container-elevation-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
  --mdc-protected-button-container-shadow-color: #000;
  --mat-protected-button-state-layer-color: black;
  --mat-protected-button-disabled-state-layer-color: black;
  --mat-protected-button-ripple-color: rgba(0, 0, 0, 0.1);
  --mat-protected-button-hover-state-layer-opacity: 0.04;
  --mat-protected-button-focus-state-layer-opacity: 0.12;
  --mat-protected-button-pressed-state-layer-opacity: 0.12;
  --mdc-outlined-button-disabled-outline-color: rgba(0, 0, 0, 0.12);
  --mdc-outlined-button-disabled-label-text-color: rgba(0, 0, 0, 0.38);
  --mdc-outlined-button-label-text-color: black;
  --mdc-outlined-button-outline-color: rgba(0, 0, 0, 0.12);
  --mat-outlined-button-state-layer-color: black;
  --mat-outlined-button-disabled-state-layer-color: black;
  --mat-outlined-button-ripple-color: rgba(0, 0, 0, 0.1);
  --mat-outlined-button-hover-state-layer-opacity: 0.04;
  --mat-outlined-button-focus-state-layer-opacity: 0.12;
  --mat-outlined-button-pressed-state-layer-opacity: 0.12;
}

.mat-mdc-button.mat-primary {
  --mdc-text-button-label-text-color: #304ffe;
  --mat-text-button-state-layer-color: #304ffe;
  --mat-text-button-ripple-color: rgba(48, 79, 254, 0.1);
}
.mat-mdc-button.mat-accent {
  --mdc-text-button-label-text-color: #ff4081;
  --mat-text-button-state-layer-color: #ff4081;
  --mat-text-button-ripple-color: rgba(255, 64, 129, 0.1);
}
.mat-mdc-button.mat-warn {
  --mdc-text-button-label-text-color: #f44336;
  --mat-text-button-state-layer-color: #f44336;
  --mat-text-button-ripple-color: rgba(244, 67, 54, 0.1);
}

.mat-mdc-unelevated-button.mat-primary {
  --mdc-filled-button-container-color: #304ffe;
  --mdc-filled-button-label-text-color: white;
  --mat-filled-button-state-layer-color: white;
  --mat-filled-button-ripple-color: rgba(255, 255, 255, 0.1);
}
.mat-mdc-unelevated-button.mat-accent {
  --mdc-filled-button-container-color: #ff4081;
  --mdc-filled-button-label-text-color: white;
  --mat-filled-button-state-layer-color: white;
  --mat-filled-button-ripple-color: rgba(255, 255, 255, 0.1);
}
.mat-mdc-unelevated-button.mat-warn {
  --mdc-filled-button-container-color: #f44336;
  --mdc-filled-button-label-text-color: white;
  --mat-filled-button-state-layer-color: white;
  --mat-filled-button-ripple-color: rgba(255, 255, 255, 0.1);
}

.mat-mdc-raised-button.mat-primary {
  --mdc-protected-button-container-color: #304ffe;
  --mdc-protected-button-label-text-color: white;
  --mat-protected-button-state-layer-color: white;
  --mat-protected-button-ripple-color: rgba(255, 255, 255, 0.1);
}
.mat-mdc-raised-button.mat-accent {
  --mdc-protected-button-container-color: #ff4081;
  --mdc-protected-button-label-text-color: white;
  --mat-protected-button-state-layer-color: white;
  --mat-protected-button-ripple-color: rgba(255, 255, 255, 0.1);
}
.mat-mdc-raised-button.mat-warn {
  --mdc-protected-button-container-color: #f44336;
  --mdc-protected-button-label-text-color: white;
  --mat-protected-button-state-layer-color: white;
  --mat-protected-button-ripple-color: rgba(255, 255, 255, 0.1);
}

.mat-mdc-outlined-button.mat-primary {
  --mdc-outlined-button-label-text-color: #304ffe;
  --mdc-outlined-button-outline-color: rgba(0, 0, 0, 0.12);
  --mat-outlined-button-state-layer-color: #304ffe;
  --mat-outlined-button-ripple-color: rgba(48, 79, 254, 0.1);
}
.mat-mdc-outlined-button.mat-accent {
  --mdc-outlined-button-label-text-color: #ff4081;
  --mdc-outlined-button-outline-color: rgba(0, 0, 0, 0.12);
  --mat-outlined-button-state-layer-color: #ff4081;
  --mat-outlined-button-ripple-color: rgba(255, 64, 129, 0.1);
}
.mat-mdc-outlined-button.mat-warn {
  --mdc-outlined-button-label-text-color: #f44336;
  --mdc-outlined-button-outline-color: rgba(0, 0, 0, 0.12);
  --mat-outlined-button-state-layer-color: #f44336;
  --mat-outlined-button-ripple-color: rgba(244, 67, 54, 0.1);
}

html {
  --mdc-text-button-container-height: 36px;
  --mdc-filled-button-container-height: 36px;
  --mdc-outlined-button-container-height: 36px;
  --mdc-protected-button-container-height: 36px;
  --mat-text-button-touch-target-display: block;
  --mat-filled-button-touch-target-display: block;
  --mat-protected-button-touch-target-display: block;
  --mat-outlined-button-touch-target-display: block;
}

html {
  --mdc-text-button-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-text-button-label-text-size: 14px;
  --mdc-text-button-label-text-tracking: 0.0892857143em;
  --mdc-text-button-label-text-weight: 500;
  --mdc-text-button-label-text-transform: none;
  --mdc-filled-button-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-filled-button-label-text-size: 14px;
  --mdc-filled-button-label-text-tracking: 0.0892857143em;
  --mdc-filled-button-label-text-weight: 500;
  --mdc-filled-button-label-text-transform: none;
  --mdc-outlined-button-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-outlined-button-label-text-size: 14px;
  --mdc-outlined-button-label-text-tracking: 0.0892857143em;
  --mdc-outlined-button-label-text-weight: 500;
  --mdc-outlined-button-label-text-transform: none;
  --mdc-protected-button-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-protected-button-label-text-size: 14px;
  --mdc-protected-button-label-text-tracking: 0.0892857143em;
  --mdc-protected-button-label-text-weight: 500;
  --mdc-protected-button-label-text-transform: none;
}

html {
  --mdc-icon-button-icon-size: 24px;
}

html {
  --mdc-icon-button-icon-color: inherit;
  --mdc-icon-button-disabled-icon-color: rgba(0, 0, 0, 0.38);
  --mat-icon-button-state-layer-color: black;
  --mat-icon-button-disabled-state-layer-color: black;
  --mat-icon-button-ripple-color: rgba(0, 0, 0, 0.1);
  --mat-icon-button-hover-state-layer-opacity: 0.04;
  --mat-icon-button-focus-state-layer-opacity: 0.12;
  --mat-icon-button-pressed-state-layer-opacity: 0.12;
}
html .mat-mdc-icon-button.mat-primary {
  --mdc-icon-button-icon-color: #304ffe;
  --mat-icon-button-state-layer-color: #304ffe;
  --mat-icon-button-ripple-color: rgba(48, 79, 254, 0.1);
}
html .mat-mdc-icon-button.mat-accent {
  --mdc-icon-button-icon-color: #ff4081;
  --mat-icon-button-state-layer-color: #ff4081;
  --mat-icon-button-ripple-color: rgba(255, 64, 129, 0.1);
}
html .mat-mdc-icon-button.mat-warn {
  --mdc-icon-button-icon-color: #f44336;
  --mat-icon-button-state-layer-color: #f44336;
  --mat-icon-button-ripple-color: rgba(244, 67, 54, 0.1);
}

html {
  --mat-icon-button-touch-target-display: block;
}

.mat-mdc-icon-button.mat-mdc-button-base {
  --mdc-icon-button-state-layer-size: 48px;
  width: var(--mdc-icon-button-state-layer-size);
  height: var(--mdc-icon-button-state-layer-size);
  padding: 12px;
}

html {
  --mdc-fab-container-shape: 50%;
  --mdc-fab-icon-size: 24px;
  --mdc-fab-small-container-shape: 50%;
  --mdc-fab-small-icon-size: 24px;
  --mdc-extended-fab-container-height: 48px;
  --mdc-extended-fab-container-shape: 24px;
}

html {
  --mdc-fab-container-color: white;
  --mdc-fab-container-elevation-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
  --mdc-fab-focus-container-elevation-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
  --mdc-fab-hover-container-elevation-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
  --mdc-fab-pressed-container-elevation-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
  --mdc-fab-container-shadow-color: #000;
  --mat-fab-foreground-color: black;
  --mat-fab-state-layer-color: black;
  --mat-fab-disabled-state-layer-color: black;
  --mat-fab-ripple-color: rgba(0, 0, 0, 0.1);
  --mat-fab-hover-state-layer-opacity: 0.04;
  --mat-fab-focus-state-layer-opacity: 0.12;
  --mat-fab-pressed-state-layer-opacity: 0.12;
  --mat-fab-disabled-state-container-color: rgba(0, 0, 0, 0.12);
  --mat-fab-disabled-state-foreground-color: rgba(0, 0, 0, 0.38);
  --mdc-fab-small-container-color: white;
  --mdc-fab-small-container-elevation-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
  --mdc-fab-small-focus-container-elevation-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
  --mdc-fab-small-hover-container-elevation-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
  --mdc-fab-small-pressed-container-elevation-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
  --mdc-fab-small-container-shadow-color: #000;
  --mat-fab-small-foreground-color: black;
  --mat-fab-small-state-layer-color: black;
  --mat-fab-small-disabled-state-layer-color: black;
  --mat-fab-small-ripple-color: rgba(0, 0, 0, 0.1);
  --mat-fab-small-hover-state-layer-opacity: 0.04;
  --mat-fab-small-focus-state-layer-opacity: 0.12;
  --mat-fab-small-pressed-state-layer-opacity: 0.12;
  --mat-fab-small-disabled-state-container-color: rgba(0, 0, 0, 0.12);
  --mat-fab-small-disabled-state-foreground-color: rgba(0, 0, 0, 0.38);
  --mdc-extended-fab-container-elevation-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
  --mdc-extended-fab-focus-container-elevation-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
  --mdc-extended-fab-hover-container-elevation-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
  --mdc-extended-fab-pressed-container-elevation-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
  --mdc-extended-fab-container-shadow-color: #000;
}
html .mat-mdc-fab.mat-primary {
  --mdc-fab-container-color: #304ffe;
  --mat-fab-foreground-color: white;
  --mat-fab-state-layer-color: white;
  --mat-fab-ripple-color: rgba(255, 255, 255, 0.1);
}
html .mat-mdc-fab.mat-accent {
  --mdc-fab-container-color: #ff4081;
  --mat-fab-foreground-color: white;
  --mat-fab-state-layer-color: white;
  --mat-fab-ripple-color: rgba(255, 255, 255, 0.1);
}
html .mat-mdc-fab.mat-warn {
  --mdc-fab-container-color: #f44336;
  --mat-fab-foreground-color: white;
  --mat-fab-state-layer-color: white;
  --mat-fab-ripple-color: rgba(255, 255, 255, 0.1);
}
html .mat-mdc-mini-fab.mat-primary {
  --mdc-fab-small-container-color: #304ffe;
  --mat-fab-small-foreground-color: white;
  --mat-fab-small-state-layer-color: white;
  --mat-fab-small-ripple-color: rgba(255, 255, 255, 0.1);
}
html .mat-mdc-mini-fab.mat-accent {
  --mdc-fab-small-container-color: #ff4081;
  --mat-fab-small-foreground-color: white;
  --mat-fab-small-state-layer-color: white;
  --mat-fab-small-ripple-color: rgba(255, 255, 255, 0.1);
}
html .mat-mdc-mini-fab.mat-warn {
  --mdc-fab-small-container-color: #f44336;
  --mat-fab-small-foreground-color: white;
  --mat-fab-small-state-layer-color: white;
  --mat-fab-small-ripple-color: rgba(255, 255, 255, 0.1);
}

html {
  --mat-fab-touch-target-display: block;
  --mat-fab-small-touch-target-display: block;
}

html {
  --mdc-extended-fab-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-extended-fab-label-text-size: 14px;
  --mdc-extended-fab-label-text-tracking: 0.0892857143em;
  --mdc-extended-fab-label-text-weight: 500;
}

html {
  --mdc-snackbar-container-shape: 4px;
}

html {
  --mdc-snackbar-container-color: #333333;
  --mdc-snackbar-supporting-text-color: rgba(255, 255, 255, 0.87);
  --mat-snack-bar-button-color: #ff4081;
}

html {
  --mdc-snackbar-supporting-text-font: Jost, "Jost Fallback", sans-serif;
  --mdc-snackbar-supporting-text-line-height: 20px;
  --mdc-snackbar-supporting-text-size: 14px;
  --mdc-snackbar-supporting-text-weight: 400;
}

html {
  --mat-table-row-item-outline-width: 1px;
}

html {
  --mat-table-background-color: white;
  --mat-table-header-headline-color: rgba(0, 0, 0, 0.87);
  --mat-table-row-item-label-text-color: rgba(0, 0, 0, 0.87);
  --mat-table-row-item-outline-color: rgba(0, 0, 0, 0.12);
}

html {
  --mat-table-header-container-height: 56px;
  --mat-table-footer-container-height: 52px;
  --mat-table-row-item-container-height: 52px;
}

html {
  --mat-table-header-headline-font: Jost, "Jost Fallback", sans-serif;
  --mat-table-header-headline-line-height: 22px;
  --mat-table-header-headline-size: 14px;
  --mat-table-header-headline-weight: 500;
  --mat-table-header-headline-tracking: 0.0071428571em;
  --mat-table-row-item-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-table-row-item-label-text-line-height: 20px;
  --mat-table-row-item-label-text-size: 14px;
  --mat-table-row-item-label-text-weight: 400;
  --mat-table-row-item-label-text-tracking: 0.0178571429em;
  --mat-table-footer-supporting-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-table-footer-supporting-text-line-height: 20px;
  --mat-table-footer-supporting-text-size: 14px;
  --mat-table-footer-supporting-text-weight: 400;
  --mat-table-footer-supporting-text-tracking: 0.0178571429em;
}

html {
  --mdc-circular-progress-active-indicator-width: 4px;
  --mdc-circular-progress-size: 48px;
}

html {
  --mdc-circular-progress-active-indicator-color: #304ffe;
}
html .mat-accent {
  --mdc-circular-progress-active-indicator-color: #ff4081;
}
html .mat-warn {
  --mdc-circular-progress-active-indicator-color: #f44336;
}

html {
  --mat-badge-container-shape: 50%;
  --mat-badge-container-size: unset;
  --mat-badge-small-size-container-size: unset;
  --mat-badge-large-size-container-size: unset;
  --mat-badge-legacy-container-size: 22px;
  --mat-badge-legacy-small-size-container-size: 16px;
  --mat-badge-legacy-large-size-container-size: 28px;
  --mat-badge-container-offset: -11px 0;
  --mat-badge-small-size-container-offset: -8px 0;
  --mat-badge-large-size-container-offset: -14px 0;
  --mat-badge-container-overlap-offset: -11px;
  --mat-badge-small-size-container-overlap-offset: -8px;
  --mat-badge-large-size-container-overlap-offset: -14px;
  --mat-badge-container-padding: 0;
  --mat-badge-small-size-container-padding: 0;
  --mat-badge-large-size-container-padding: 0;
}

html {
  --mat-badge-background-color: #304ffe;
  --mat-badge-text-color: white;
  --mat-badge-disabled-state-background-color: #b9b9b9;
  --mat-badge-disabled-state-text-color: rgba(0, 0, 0, 0.38);
}

.mat-badge-accent {
  --mat-badge-background-color: #ff4081;
  --mat-badge-text-color: white;
}

.mat-badge-warn {
  --mat-badge-background-color: #f44336;
  --mat-badge-text-color: white;
}

html {
  --mat-badge-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-badge-text-size: 12px;
  --mat-badge-text-weight: 600;
  --mat-badge-small-size-text-size: 9px;
  --mat-badge-large-size-text-size: 24px;
}

html {
  --mat-bottom-sheet-container-shape: 4px;
}

html {
  --mat-bottom-sheet-container-text-color: rgba(0, 0, 0, 0.87);
  --mat-bottom-sheet-container-background-color: white;
}

html {
  --mat-bottom-sheet-container-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-bottom-sheet-container-text-line-height: 20px;
  --mat-bottom-sheet-container-text-size: 14px;
  --mat-bottom-sheet-container-text-tracking: 0.0178571429em;
  --mat-bottom-sheet-container-text-weight: 400;
}

html {
  --mat-legacy-button-toggle-height: 36px;
  --mat-legacy-button-toggle-shape: 2px;
  --mat-legacy-button-toggle-focus-state-layer-opacity: 1;
  --mat-standard-button-toggle-shape: 4px;
  --mat-standard-button-toggle-hover-state-layer-opacity: 0.04;
  --mat-standard-button-toggle-focus-state-layer-opacity: 0.12;
}

html {
  --mat-legacy-button-toggle-text-color: rgba(0, 0, 0, 0.38);
  --mat-legacy-button-toggle-state-layer-color: rgba(0, 0, 0, 0.12);
  --mat-legacy-button-toggle-selected-state-text-color: rgba(0, 0, 0, 0.54);
  --mat-legacy-button-toggle-selected-state-background-color: #e0e0e0;
  --mat-legacy-button-toggle-disabled-state-text-color: rgba(0, 0, 0, 0.26);
  --mat-legacy-button-toggle-disabled-state-background-color: #eeeeee;
  --mat-legacy-button-toggle-disabled-selected-state-background-color: #bdbdbd;
  --mat-standard-button-toggle-text-color: rgba(0, 0, 0, 0.87);
  --mat-standard-button-toggle-background-color: white;
  --mat-standard-button-toggle-state-layer-color: black;
  --mat-standard-button-toggle-selected-state-background-color: #e0e0e0;
  --mat-standard-button-toggle-selected-state-text-color: rgba(0, 0, 0, 0.87);
  --mat-standard-button-toggle-disabled-state-text-color: rgba(0, 0, 0, 0.26);
  --mat-standard-button-toggle-disabled-state-background-color: white;
  --mat-standard-button-toggle-disabled-selected-state-text-color: rgba(0, 0, 0, 0.87);
  --mat-standard-button-toggle-disabled-selected-state-background-color: #bdbdbd;
  --mat-standard-button-toggle-divider-color: rgb(224.4, 224.4, 224.4);
}

html {
  --mat-standard-button-toggle-height: 48px;
}

html {
  --mat-legacy-button-toggle-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-legacy-button-toggle-label-text-line-height: 24px;
  --mat-legacy-button-toggle-label-text-size: 16px;
  --mat-legacy-button-toggle-label-text-tracking: 0.03125em;
  --mat-legacy-button-toggle-label-text-weight: 400;
  --mat-standard-button-toggle-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-standard-button-toggle-label-text-line-height: 24px;
  --mat-standard-button-toggle-label-text-size: 16px;
  --mat-standard-button-toggle-label-text-tracking: 0.03125em;
  --mat-standard-button-toggle-label-text-weight: 400;
}

html {
  --mat-datepicker-calendar-container-shape: 4px;
  --mat-datepicker-calendar-container-touch-shape: 4px;
  --mat-datepicker-calendar-container-elevation-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
  --mat-datepicker-calendar-container-touch-elevation-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
}

html {
  --mat-datepicker-calendar-date-selected-state-text-color: white;
  --mat-datepicker-calendar-date-selected-state-background-color: #304ffe;
  --mat-datepicker-calendar-date-selected-disabled-state-background-color: rgba(48, 79, 254, 0.4);
  --mat-datepicker-calendar-date-today-selected-state-outline-color: white;
  --mat-datepicker-calendar-date-focus-state-background-color: rgba(48, 79, 254, 0.3);
  --mat-datepicker-calendar-date-hover-state-background-color: rgba(48, 79, 254, 0.3);
  --mat-datepicker-toggle-active-state-icon-color: #304ffe;
  --mat-datepicker-calendar-date-in-range-state-background-color: rgba(48, 79, 254, 0.2);
  --mat-datepicker-calendar-date-in-comparison-range-state-background-color: rgba(249, 171, 0, 0.2);
  --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;
  --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: rgb(69.5241935484, 163.4758064516, 93.9516129032);
  --mat-datepicker-toggle-icon-color: rgba(0, 0, 0, 0.54);
  --mat-datepicker-calendar-body-label-text-color: rgba(0, 0, 0, 0.54);
  --mat-datepicker-calendar-period-button-text-color: black;
  --mat-datepicker-calendar-period-button-icon-color: rgba(0, 0, 0, 0.54);
  --mat-datepicker-calendar-navigation-button-icon-color: rgba(0, 0, 0, 0.54);
  --mat-datepicker-calendar-header-divider-color: rgba(0, 0, 0, 0.12);
  --mat-datepicker-calendar-header-text-color: rgba(0, 0, 0, 0.54);
  --mat-datepicker-calendar-date-today-outline-color: rgba(0, 0, 0, 0.38);
  --mat-datepicker-calendar-date-today-disabled-state-outline-color: rgba(0, 0, 0, 0.18);
  --mat-datepicker-calendar-date-text-color: rgba(0, 0, 0, 0.87);
  --mat-datepicker-calendar-date-outline-color: transparent;
  --mat-datepicker-calendar-date-disabled-state-text-color: rgba(0, 0, 0, 0.38);
  --mat-datepicker-calendar-date-preview-state-outline-color: rgba(0, 0, 0, 0.24);
  --mat-datepicker-range-input-separator-color: rgba(0, 0, 0, 0.87);
  --mat-datepicker-range-input-disabled-state-separator-color: rgba(0, 0, 0, 0.38);
  --mat-datepicker-range-input-disabled-state-text-color: rgba(0, 0, 0, 0.38);
  --mat-datepicker-calendar-container-background-color: white;
  --mat-datepicker-calendar-container-text-color: rgba(0, 0, 0, 0.87);
}

.mat-datepicker-content.mat-accent {
  --mat-datepicker-calendar-date-selected-state-text-color: white;
  --mat-datepicker-calendar-date-selected-state-background-color: #ff4081;
  --mat-datepicker-calendar-date-selected-disabled-state-background-color: rgba(255, 64, 129, 0.4);
  --mat-datepicker-calendar-date-today-selected-state-outline-color: white;
  --mat-datepicker-calendar-date-focus-state-background-color: rgba(255, 64, 129, 0.3);
  --mat-datepicker-calendar-date-hover-state-background-color: rgba(255, 64, 129, 0.3);
  --mat-datepicker-calendar-date-in-range-state-background-color: rgba(255, 64, 129, 0.2);
  --mat-datepicker-calendar-date-in-comparison-range-state-background-color: rgba(249, 171, 0, 0.2);
  --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;
  --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: rgb(69.5241935484, 163.4758064516, 93.9516129032);
}
.mat-datepicker-content.mat-warn {
  --mat-datepicker-calendar-date-selected-state-text-color: white;
  --mat-datepicker-calendar-date-selected-state-background-color: #f44336;
  --mat-datepicker-calendar-date-selected-disabled-state-background-color: rgba(244, 67, 54, 0.4);
  --mat-datepicker-calendar-date-today-selected-state-outline-color: white;
  --mat-datepicker-calendar-date-focus-state-background-color: rgba(244, 67, 54, 0.3);
  --mat-datepicker-calendar-date-hover-state-background-color: rgba(244, 67, 54, 0.3);
  --mat-datepicker-calendar-date-in-range-state-background-color: rgba(244, 67, 54, 0.2);
  --mat-datepicker-calendar-date-in-comparison-range-state-background-color: rgba(249, 171, 0, 0.2);
  --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;
  --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: rgb(69.5241935484, 163.4758064516, 93.9516129032);
}

.mat-datepicker-toggle-active.mat-accent {
  --mat-datepicker-toggle-active-state-icon-color: #ff4081;
}
.mat-datepicker-toggle-active.mat-warn {
  --mat-datepicker-toggle-active-state-icon-color: #f44336;
}

.mat-calendar-controls {
  --mat-icon-button-touch-target-display: none;
}
.mat-calendar-controls .mat-mdc-icon-button.mat-mdc-button-base {
  --mdc-icon-button-state-layer-size: 40px;
  width: var(--mdc-icon-button-state-layer-size);
  height: var(--mdc-icon-button-state-layer-size);
  padding: 8px;
}

html {
  --mat-datepicker-calendar-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-datepicker-calendar-text-size: 13px;
  --mat-datepicker-calendar-body-label-text-size: 14px;
  --mat-datepicker-calendar-body-label-text-weight: 500;
  --mat-datepicker-calendar-period-button-text-size: 14px;
  --mat-datepicker-calendar-period-button-text-weight: 500;
  --mat-datepicker-calendar-header-text-size: 11px;
  --mat-datepicker-calendar-header-text-weight: 400;
}

html {
  --mat-divider-width: 1px;
}

html {
  --mat-divider-color: rgba(0, 0, 0, 0.12);
}

html {
  --mat-expansion-container-shape: 4px;
  --mat-expansion-legacy-header-indicator-display: inline-block;
  --mat-expansion-header-indicator-display: none;
}

html {
  --mat-expansion-container-background-color: white;
  --mat-expansion-container-text-color: rgba(0, 0, 0, 0.87);
  --mat-expansion-actions-divider-color: rgba(0, 0, 0, 0.12);
  --mat-expansion-header-hover-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-expansion-header-focus-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-expansion-header-disabled-state-text-color: rgba(0, 0, 0, 0.26);
  --mat-expansion-header-text-color: rgba(0, 0, 0, 0.87);
  --mat-expansion-header-description-color: rgba(0, 0, 0, 0.54);
  --mat-expansion-header-indicator-color: rgba(0, 0, 0, 0.54);
}

html {
  --mat-expansion-header-collapsed-state-height: 48px;
  --mat-expansion-header-expanded-state-height: 64px;
}

html {
  --mat-expansion-header-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-expansion-header-text-size: 14px;
  --mat-expansion-header-text-weight: 500;
  --mat-expansion-header-text-line-height: inherit;
  --mat-expansion-header-text-tracking: inherit;
  --mat-expansion-container-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-expansion-container-text-line-height: 20px;
  --mat-expansion-container-text-size: 14px;
  --mat-expansion-container-text-tracking: 0.0178571429em;
  --mat-expansion-container-text-weight: 400;
}

html {
  --mat-grid-list-tile-header-primary-text-size: 14px;
  --mat-grid-list-tile-header-secondary-text-size: 12px;
  --mat-grid-list-tile-footer-primary-text-size: 14px;
  --mat-grid-list-tile-footer-secondary-text-size: 12px;
}

html {
  --mat-icon-color: inherit;
}

.mat-icon.mat-primary {
  --mat-icon-color: #304ffe;
}
.mat-icon.mat-accent {
  --mat-icon-color: #ff4081;
}
.mat-icon.mat-warn {
  --mat-icon-color: #f44336;
}

html {
  --mat-sidenav-container-shape: 0;
  --mat-sidenav-container-elevation-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
  --mat-sidenav-container-width: auto;
}

html {
  --mat-sidenav-container-divider-color: rgba(0, 0, 0, 0.12);
  --mat-sidenav-container-background-color: white;
  --mat-sidenav-container-text-color: rgba(0, 0, 0, 0.87);
  --mat-sidenav-content-background-color: #fafafa;
  --mat-sidenav-content-text-color: rgba(0, 0, 0, 0.87);
  --mat-sidenav-scrim-color: rgba(0, 0, 0, 0.6);
}

html {
  --mat-stepper-header-icon-foreground-color: white;
  --mat-stepper-header-selected-state-icon-background-color: #304ffe;
  --mat-stepper-header-selected-state-icon-foreground-color: white;
  --mat-stepper-header-done-state-icon-background-color: #304ffe;
  --mat-stepper-header-done-state-icon-foreground-color: white;
  --mat-stepper-header-edit-state-icon-background-color: #304ffe;
  --mat-stepper-header-edit-state-icon-foreground-color: white;
  --mat-stepper-container-color: white;
  --mat-stepper-line-color: rgba(0, 0, 0, 0.12);
  --mat-stepper-header-hover-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-stepper-header-focus-state-layer-color: rgba(0, 0, 0, 0.04);
  --mat-stepper-header-label-text-color: rgba(0, 0, 0, 0.54);
  --mat-stepper-header-optional-label-text-color: rgba(0, 0, 0, 0.54);
  --mat-stepper-header-selected-state-label-text-color: rgba(0, 0, 0, 0.87);
  --mat-stepper-header-error-state-label-text-color: #f44336;
  --mat-stepper-header-icon-background-color: rgba(0, 0, 0, 0.54);
  --mat-stepper-header-error-state-icon-foreground-color: #f44336;
  --mat-stepper-header-error-state-icon-background-color: transparent;
}
html .mat-step-header.mat-accent {
  --mat-stepper-header-icon-foreground-color: white;
  --mat-stepper-header-selected-state-icon-background-color: #ff4081;
  --mat-stepper-header-selected-state-icon-foreground-color: white;
  --mat-stepper-header-done-state-icon-background-color: #ff4081;
  --mat-stepper-header-done-state-icon-foreground-color: white;
  --mat-stepper-header-edit-state-icon-background-color: #ff4081;
  --mat-stepper-header-edit-state-icon-foreground-color: white;
}
html .mat-step-header.mat-warn {
  --mat-stepper-header-icon-foreground-color: white;
  --mat-stepper-header-selected-state-icon-background-color: #f44336;
  --mat-stepper-header-selected-state-icon-foreground-color: white;
  --mat-stepper-header-done-state-icon-background-color: #f44336;
  --mat-stepper-header-done-state-icon-foreground-color: white;
  --mat-stepper-header-edit-state-icon-background-color: #f44336;
  --mat-stepper-header-edit-state-icon-foreground-color: white;
}

html {
  --mat-stepper-header-height: 72px;
}

html {
  --mat-stepper-container-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-stepper-header-label-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-stepper-header-label-text-size: 14px;
  --mat-stepper-header-label-text-weight: 400;
  --mat-stepper-header-error-state-label-text-size: 16px;
  --mat-stepper-header-selected-state-label-text-size: 16px;
  --mat-stepper-header-selected-state-label-text-weight: 400;
}

html {
  --mat-sort-arrow-color: rgb(117.3, 117.3, 117.3);
}

html {
  --mat-toolbar-container-background-color: whitesmoke;
  --mat-toolbar-container-text-color: rgba(0, 0, 0, 0.87);
}

.mat-toolbar.mat-primary {
  --mat-toolbar-container-background-color: #304ffe;
  --mat-toolbar-container-text-color: white;
}
.mat-toolbar.mat-accent {
  --mat-toolbar-container-background-color: #ff4081;
  --mat-toolbar-container-text-color: white;
}
.mat-toolbar.mat-warn {
  --mat-toolbar-container-background-color: #f44336;
  --mat-toolbar-container-text-color: white;
}

html {
  --mat-toolbar-standard-height: 64px;
  --mat-toolbar-mobile-height: 56px;
}

html {
  --mat-toolbar-title-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-toolbar-title-text-line-height: 32px;
  --mat-toolbar-title-text-size: 20px;
  --mat-toolbar-title-text-tracking: 0.0125em;
  --mat-toolbar-title-text-weight: 500;
}

html {
  --mat-tree-container-background-color: white;
  --mat-tree-node-text-color: rgba(0, 0, 0, 0.87);
}

html {
  --mat-tree-node-min-height: 48px;
}

html {
  --mat-tree-node-text-font: Jost, "Jost Fallback", sans-serif;
  --mat-tree-node-text-size: 14px;
  --mat-tree-node-text-weight: 400;
}

@font-face {
  font-family: "bootstrap-icons";
  src: url("/assets/fonts/bootstrap-icons.woff2") format("woff2"), url("/assets/fonts/bootstrap-icons.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
/* -------Main Styles-------- */
/*
* css reset
*/
:root {
  --font: Jost, "Jost Fallback", sans-serif;
  --mono: "JetBrains Mono", monospace;
  --bg: #fff;
  --surface: #fff;
  --hover: #f8f9fa;
  --raised: #f1f2f4;
  --border: #e2e8f0;
  --border-strong: #cbd5e1;
  --text: #242529;
  --t2: #505154;
  --t3: #94a3b8;
  --t4: #cbd5e1;
  --brand: #266df0;
  --brand-dk: #215bc4;
  --brand-bg: #ebf2ff;
  --brand-bd: #c7d8fd;
  --green: #166534;
  --green-bg: #f0fdf4;
  --amber: #92400e;
  --amber-bg: #fffbeb;
  --red: #991b1b;
  --red-bg: #fef2f2;
  --sb: 46px;
  --sb-xl: 275px;
  --hh: 50px;
  --ease: cubic-bezier(0.4, 0, 0.2, 1);
}

html,
body {
  margin: 0;
  padding: 0;
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 14px;
  color: #141516;
  font-weight: 400;
  color: #383c40;
}

::selection {
  background: var(--brand-bg);
  color: var(--brand);
}

::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: var(--border-strong);
  border-radius: 4px;
}

:focus-visible {
  outline: 2px solid var(--brand);
  outline-offset: 2px;
  border-radius: 4px;
}

body .mat-h4,
body .mat-body-1, body.mat-typography .mat-h4, body.mat-typography .mat-body-1, body.mat-typography h4, body.mat-body, body.mat-body-2, body.mat-typography .mat-body, body.mat-typography .mat-body-2, body.mat-typography,
body .mat-h1,
body .mat-headline-5, body.mat-typography .mat-h1, body.mat-typography .mat-headline-5, body.mat-typography h1 {
  font-family: Jost, "Jost Fallback", sans-serif;
}
body .btn-custom {
  height: 32px;
  line-height: 32px;
  font-size: 12px !important;
  border-radius: 6px;
  padding: 0 12px;
}
body .btn-custom.small-padding {
  padding: 0 6px;
}
body .btn-custom.btn-custom-primary {
  color: #fff;
}
body .btn-custom.btn-custom-primary:hover, body .btn-custom.btn-custom-primary:focus-visible, body .btn-custom.btn-custom-primary:focus {
  color: #fff;
}
body .btn-custom i {
  margin-right: 2px;
  font-size: 9px;
}
body .btn-custom-primary,
body .btn-custom-success,
body .btn-custom-info,
body .btn-custom-warning {
  line-height: 32px;
  height: 32px;
  padding: 0 13px;
  border-radius: 5px;
  border: none;
  background: var(--brand);
  color: #fff;
  font-family: var(--font);
  font-size: 13px;
  cursor: pointer;
  transition: all 80ms var(--ease);
  box-shadow: 0 1px 3px rgba(10, 78, 244, 0.25);
}
body .btn-custom-primary:hover, body .btn-custom-primary:focus-visible, body .btn-custom-primary:focus,
body .btn-custom-success:hover,
body .btn-custom-success:focus-visible,
body .btn-custom-success:focus,
body .btn-custom-info:hover,
body .btn-custom-info:focus-visible,
body .btn-custom-info:focus,
body .btn-custom-warning:hover,
body .btn-custom-warning:focus-visible,
body .btn-custom-warning:focus {
  color: #FFFFFF;
  background: var(--brand-dk);
  box-shadow: 0 2px 6px rgba(10, 78, 244, 0.3);
}
body .btn-custom-primary:disabled,
body .btn-custom-success:disabled,
body .btn-custom-info:disabled,
body .btn-custom-warning:disabled {
  opacity: 0.5;
}
body .btn-custom-outline-primary,
body .btn-custom-outline-secondary,
body .btn-custom-outline-success {
  color: #141516;
  border-color: #141516;
}
body .btn-custom-outline-primary:hover, body .btn-custom-outline-primary:focus-visible, body .btn-custom-outline-primary:focus,
body .btn-custom-outline-secondary:hover,
body .btn-custom-outline-secondary:focus-visible,
body .btn-custom-outline-secondary:focus,
body .btn-custom-outline-success:hover,
body .btn-custom-outline-success:focus-visible,
body .btn-custom-outline-success:focus {
  color: #FFFFFF !important;
  border-color: #141516 !important;
  background: #266DF0 !important;
}
body .btn-custom-outline-primary:hover svg path, body .btn-custom-outline-primary:focus-visible svg path, body .btn-custom-outline-primary:focus svg path,
body .btn-custom-outline-secondary:hover svg path,
body .btn-custom-outline-secondary:focus-visible svg path,
body .btn-custom-outline-secondary:focus svg path,
body .btn-custom-outline-success:hover svg path,
body .btn-custom-outline-success:focus-visible svg path,
body .btn-custom-outline-success:focus svg path {
  fill: #FFFFFF !important;
}
body .btn-custom-outline-primary:disabled,
body .btn-custom-outline-secondary:disabled,
body .btn-custom-outline-success:disabled {
  color: #141516;
  border-color: #141516;
  opacity: 0.5;
}
body .btn-custom-outline-solid {
  color: #696969;
  border-color: #e2e3e3;
  box-shadow: none;
}
body .btn-custom-outline-solid:hover {
  color: #696969;
  border-color: #696969;
  background: #e2e3e3;
}
body .btn-custom-outline-dashed {
  color: #696969;
  border-color: #e2e3e3;
  border-style: dashed;
  box-shadow: none;
  background: #e9e9e9;
}
body .btn-custom-outline-dashed:hover {
  color: #696969;
  border-color: #696969;
}
body .btn-link {
  color: #141516;
}
body .btn-custom-small {
  font-size: 13px !important;
  border-radius: 6px;
  line-height: 32px;
  padding: 0 20px;
  height: 34px;
}
body .btn-custom-small.icon-only {
  width: 34px;
  min-width: 34px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: normal;
}
body .btn-custom-small.btn-completed {
  border-radius: 10px;
  background: #d9f2de;
  color: #349746;
  font-weight: 500;
  font-size: 14px;
  border: none;
  outline: none;
  pointer-events: none;
}
body .btn-custom-small.btn-custom-outline-secondary {
  color: #141516;
  border-color: #ECEDEE;
}
body .btn-custom-small.btn-custom-outline-secondary:hover {
  color: #FFFFFF;
}
body .btn-custom-small.btn-custom-outline-secondary.btn-white-bg:hover {
  color: #266DF0;
}
body .btn-custom-small.btn-custom-primary {
  background: #266DF0;
  color: #fff;
  border: none;
}
body .btn-custom-small.btn-custom-primary:hover {
  background: #266DF0;
  color: #fff;
}
body .btn-custom-grey {
  background: #e9e9e9;
  color: #949494;
}
body .btn-custom-grey:hover {
  color: #fff;
  background: #266df0;
}
body a {
  text-decoration: none;
  cursor: pointer;
}
body p {
  color: #383c40;
}
body .message-text p:last-child {
  margin-bottom: 0;
}
body .mes-question .message-text {
  color: #FFFFFF;
}
body .mes-question .message-text p {
  color: #FFFFFF;
}
body .card {
  --bs-card-border-color: #ecedee;
}
body .page-container {
  color: #141516;
}

.mf-container {
  padding: 0 15px;
}

.small-container {
  max-width: 1000px;
  margin: 0 auto;
}

.by-container {
  max-width: 1330px;
  margin: 0 auto;
}

.cursor-move {
  cursor: move;
}

.btn-check:checked + .btn {
  color: #141516;
}
.btn-check:checked + .btn.bg-white {
  color: #141516;
}

.cursor-pointer {
  cursor: pointer;
}

body .ng-select .ng-arrow-wrapper {
  background: url(../images/icons/dropdown.svg) no-repeat top left;
  background-size: 12px auto;
  background-position: center;
}
body .ng-select .ng-arrow-wrapper .ng-arrow {
  border: none;
}

/* The custom-checkbox */
.custom-checkbox {
  position: relative;
  padding-left: 25px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  line-height: 18px;
}
.custom-checkbox.single {
  width: 18px;
  height: 22px;
  padding: 0;
}
.custom-checkbox.indeterminate .checkmark::before {
  width: 8px;
  height: 2px;
  background-color: #bfc3cb;
  content: "";
  left: 3px;
  top: calc(50% - 1px);
  position: absolute;
}
.custom-checkbox.disabled {
  color: #8c8c8c;
  cursor: not-allowed;
}
.custom-checkbox.no-text-label {
  padding-left: 18px;
}
.custom-checkbox input {
  position: absolute !important;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.custom-checkbox input:checked ~ .checkmark, .custom-checkbox.haveActive input ~ .checkmark {
  border-color: #266DF0;
  background: #266DF0;
}
.custom-checkbox input:checked ~ .checkmark:after, .custom-checkbox.haveActive input ~ .checkmark:after {
  display: block;
}
.custom-checkbox .checkmark:after {
  left: 5px;
  top: 1px;
  width: 5px;
  height: 10px;
  border: solid #FFFFFF;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.custom-checkbox.haveActive .checkmark:after {
  transform: none;
  border: none;
  height: 2px;
  top: 6px;
  width: 8px;
  left: 3px;
  background: #266DF0;
}
.custom-checkbox input[type=checkbox][disabled] ~ .checkmark {
  cursor: not-allowed;
  background: #e2e2e2;
  border-color: #e2e2e2;
}
.custom-checkbox input[type=checkbox][disabled] ~ .checkmark:after {
  border-color: #bfc3cb;
}
.custom-checkbox .is-invalid ~ .checkmark {
  border-color: #dc3545 !important;
}
.custom-checkbox.checkbox-rouded {
  width: 20px;
  height: 20px;
}
.custom-checkbox.checkbox-rouded .checkmark {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #e1e9fd;
  border: 1px solid #266df0;
}
.custom-checkbox.checkbox-rouded input:checked ~ .checkmark, .custom-checkbox.checkbox-rouded.haveActive input ~ .checkmark {
  border-color: #40b36a;
  background-color: #40b36a;
}
.custom-checkbox.checkbox-rouded input:checked ~ .checkmark:after, .custom-checkbox.checkbox-rouded.haveActive input ~ .checkmark:after {
  left: 6.5px;
  top: 1.5px;
  width: 6px;
  height: 12px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
}
body .btn.icon-only {
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: normal;
}

.checkmark {
  position: absolute;
  bottom: 0px;
  left: 0;
  background: #fff;
  height: 18px;
  width: 18px;
  border-radius: 4px;
  border: 2px solid #bfc3cb;
}
.checkmark:hover input ~ .checkmark {
  border-color: #bdbaba;
}
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.customer-type {
  font-size: 12px;
}

.modal-footer .btn {
  min-width: 150px;
}

.h-100 {
  height: 100%;
}

body .custom-modal {
  width: 550px;
}
body .custom-modal .modal-dialog {
  margin-right: 0;
  height: 100%;
  margin-top: 0;
}
body .custom-modal .modal-dialog .modal-content {
  border-radius: 0;
  border: none;
}

body .custom-medium {
  width: 1100px;
}
body .custom-medium .modal-dialog {
  margin-right: 0;
  height: 100%;
  margin-top: 0;
}
body .custom-medium .modal-dialog .modal-content {
  border-radius: 0;
  border: none;
}

body .custom-large {
  width: 1440px;
}
body .custom-large .modal-dialog {
  margin-right: 0;
  height: 100%;
  margin-top: 0;
}
body .custom-large .modal-dialog .modal-content {
  border-radius: 0;
  border: none;
}

.input-group.full-select {
  position: relative;
}
.input-group.full-select input::-moz-placeholder {
  color: #212529 !important;
  opacity: 1;
}
.input-group.full-select input:-ms-input-placeholder {
  color: #212529 !important;
  opacity: 1;
}
.input-group.full-select input::placeholder {
  color: #212529 !important;
  opacity: 1;
}
.input-group.full-select .btn {
  position: absolute;
  width: calc(100% - 40px);
  height: 100%;
  opacity: 0;
  font-size: 0;
  z-index: 3;
}
.input-group.full-select .remove-btn {
  position: absolute;
  right: 0px;
  top: 1px;
  padding: 10px;
  z-index: 4;
}
.input-group .btn-input-group {
  border-color: #ECEDEE;
  border-left: none;
  background: #FFFFFF;
  color: #696969;
  font-size: 18px;
}
.input-group .btn-input-group:hover {
  background: #FFFFFF;
  color: #696969;
}

.form-select {
  font-size: 13px;
}

.form-control {
  font-size: 13px;
}
.form-control::-moz-placeholder {
  color: #adadad !important;
  opacity: 1;
  text-transform: capitalize !important;
}
.form-control:-ms-input-placeholder {
  color: #adadad !important;
  opacity: 1;
  text-transform: capitalize !important;
}
.form-control::placeholder {
  color: #adadad !important;
  opacity: 1;
  text-transform: capitalize !important;
}

.modal-dialog-scrollable .modal-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  height: 50px;
  border-top: 1px solid var(--border);
  flex-shrink: 0;
  background: #fff;
  position: relative;
}
.modal-dialog-scrollable .modal-body .gc {
  display: none;
}

.f-checkbox {
  margin: 0.5rem 0;
  display: inline-block;
}

.radio {
  margin: 0.5rem 0;
  display: inline-block;
}
.radio input[type=radio] {
  position: absolute;
  opacity: 0;
}
.radio input[type=radio] + .radio-label {
  cursor: pointer;
}
.radio input[type=radio] + .radio-label:before {
  content: "";
  background: #fff;
  border-radius: 100%;
  border: 1.5px solid #696969;
  display: inline-block;
  width: 20px;
  height: 20px;
  position: relative;
  top: 0;
  margin-right: 8px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  transition: all 250ms ease;
}
.radio input[type=radio]:checked + .radio-label:before {
  background-color: #141516;
  box-shadow: inset 0 0 0 3.5px #FFFFFF;
  border-color: #141516;
}
.radio input[type=radio]:focus + .radio-label:before {
  outline: none;
  border-color: #696969;
}
.radio input[type=radio]:disabled + .radio-label:before {
  box-shadow: inset 0 0 0 4px #ECEDEE;
  border-color: #696969;
  background: #696969;
}
.radio input[type=radio] + .radio-label:empty:before {
  margin-right: 0;
}

a.icon-anchor {
  min-width: 44px;
  height: 44px;
  text-align: center;
  line-height: 32px;
  margin: 3px 0;
  font-size: 16px;
  border: 1px solid #dfdfdf;
  background: linear-gradient(0deg, #ecedee, #ecedee), linear-gradient(0deg, #dfdfdf, #dfdfdf);
}

input[type=password]::-ms-reveal,
input[type=password]::-ms-clear {
  display: none;
}

input::-ms-reveal,
input::-ms-clear {
  display: none;
}

button,
input,
textarea {
  outline: none !important;
  box-shadow: none !important;
}
button:focus, button:active,
input:focus,
input:active,
textarea:focus,
textarea:active {
  outline: none !important;
  box-shadow: none !important;
}

/**back to top*/
.back-to-top-button {
  position: fixed;
  right: 20px;
  bottom: 10px;
  border: 0;
  font-size: 10px;
  outline: none;
  text-transform: uppercase;
  padding: 3px 8px;
  color: white;
  text-decoration: none;
  z-index: 6;
  background: #949494;
  text-align: center;
  outline: none !important;
  cursor: pointer;
}
.back-to-top-button:hover {
  opacity: 0.8 !important;
}
.back-to-top-button span.arrow-top {
  width: 100%;
  height: 10px;
  position: relative;
  display: table;
  margin-top: 5px;
}
.back-to-top-button span.arrow-top:before {
  content: "";
  position: absolute;
  width: 10px;
  top: 2px;
  left: 2px;
  transform: rotate(-40deg);
  height: 2px;
  background: #ffffff;
}
.back-to-top-button span.arrow-top:after {
  content: "";
  position: absolute;
  width: 10px;
  top: 2px;
  left: 8px;
  transform: rotate(40deg);
  height: 2px;
  background: #ffffff;
}

.phone-input-container {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px; /* Add gap to visually separate country code from input */
}
.phone-input-container .country-selector .selected-country {
  width: 90px;
  padding: 0 8px;
  height: 34px !important;
  line-height: 32px !important;
  border-radius: 5px !important;
}
.phone-input-container .country-selector .selected-country .code {
  font-weight: 500;
}
.phone-input-container.small-field .slected-phone-type {
  margin-left: 0;
}
.phone-input-container.small-field .country-selector .selected-country {
  height: 34px !important;
  line-height: 32px !important;
}
.phone-input-container .mat-mdc-input-element {
  border-radius: 5px !important;
  border: 1px solid var(--border-strong);
  width: 90%;
  padding: 0 10px;
}
.phone-input-container .slected-phone-type {
  margin-left: 0;
  width: 100px;
}
.phone-input-container .selected-country {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 5px;
  border: 1px solid var(--border-strong);
  cursor: pointer;
  background: white;
  border-radius: 4px;
}
.phone-input-container .flag {
  font-size: 17px;
}
.phone-input-container .code {
  flex: 1;
  text-align: left;
}
.phone-input-container .arrow {
  font-size: 10px;
}
.phone-input-container .dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  max-width: 230px;
  background: white;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
  z-index: 1000;
}
.phone-input-container .dropdown .code {
  color: #bfc3cb;
}
.phone-input-container .dropdown input {
  width: 100%;
  padding: 5px 10px;
  border: none;
  border-bottom: 1px solid #ccc;
  outline: none;
  border-radius: 5px 5px 0 0;
}
.phone-input-container .dropdown ul {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 200px;
  overflow-y: auto;
}
.phone-input-container .dropdown li {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 5px 10px;
  cursor: pointer;
}
.phone-input-container .dropdown li:hover {
  background: #f0f0f0;
}

.phone-input-container .mat-mdc-input-element,
.phone-input-container .slected-phone-type {
  height: 34px;
  line-height: 32px;
}

.form-multiselect .multiselect-dropdown .dropdown-btn {
  padding: 0 !important;
  border: none !important;
}
.form-multiselect .multiselect-dropdown .dropdown-btn .dropdown-multiselect__caret {
  height: 30px !important;
  width: 20px !important;
  padding: 4px 0 !important;
  top: -3px !important;
}
.form-multiselect .multiselect-dropdown h5 {
  font-size: 14px !important;
}

.panel.panel-default.panel-table {
  padding: 0;
}

.panel-table > .table-responsive > table,
.panel-table > table {
  margin-bottom: 0;
}

.panel-table > .table-responsive > table tr td:first-child,
.panel-table > .table-responsive > table tr th:first-child,
.panel-table > table tr td:first-child,
.panel-table > table tr th:first-child {
  padding-left: 20px;
}

.panel-table > .table-responsive > table tr td:last-child,
.panel-table > .table-responsive > table tr th:last-child,
.panel-table > table tr td:last-child,
.panel-table > table tr th:last-child {
  padding-right: 20px;
}

.submission-table table tr th {
  white-space: nowrap;
}

.table {
  color: #141516;
  background-color: #fff;
}
.table.table-slines tr th,
.table.table-slines tr td {
  border-color: #dee2e6;
}
.table.table-slines > tbody > tr > td {
  padding: 0;
}
.table.table-slines > tbody > tr th {
  font-weight: 600;
}
.table.table-slines .table-child {
  background: none;
  border: none;
}
.table.table-slines .table-child .cell-wrap {
  padding: 0;
}
.table.table-slines .table-child .l-col-move .cell-wrap {
  width: 25px;
}
.table.table-slines .table-child .l-col-name {
  width: 100%;
}
.table.table-slines .table-child .l-col-name .cell-wrap {
  min-width: 200px;
}
.table.table-slines .table-child .l-col-value .cell-wrap {
  width: 98px;
}
.table.table-slines .table-child .l-col-action .cell-wrap {
  width: 55px;
}
.table.table-no-border tr,
.table.table-no-border th,
.table.table-no-border td {
  border: none !important;
}
.table.table-no-border.table-sm th,
.table.table-no-border.table-sm td {
  padding: 5px !important;
  font-size: 12px;
}
.table.table-no-border.table-sm th {
  padding-left: 0 !important;
  width: 1%;
  white-space: nowrap;
  font-weight: 400;
  color: #6f767e;
}
.table tr.editing {
  background: #FFFFFF !important;
}
.table tr.editing > * {
  --mo-table-color-state: $white !important;
  --mo-table-bg-state: $white !important;
}
.table tr.editing .comment-line .NgxEditor__Wrapper {
  border-radius: 10px;
}
.table tr.editing .comment-line .NgxEditor__Wrapper .NgxEditor {
  border-radius: 10px;
}
.table tr.editing .comment-line .NgxEditor__Wrapper .NgxEditor .NgxEditor__Content {
  padding: 8px 8px 40px 8px;
}
.table tr.already-added td {
  background: rgb(250, 216, 222);
}
.table.vertical-top > tr > td {
  vertical-align: top;
}
.table.vertical-top > tr > td p {
  padding: 0;
}
.table.table-border--bottom td,
.table.table-border--bottom th {
  border-bottom: 1px solid #dee2e6;
  border-top: none;
}
.table .th-nowrap {
  width: 1%;
  text-align: center;
}
.table .td-nowrap {
  text-align: center;
  white-space: nowrap;
}
.table .td-nowrap a {
  cursor: pointer;
}
.table .td-nowrap a.disabled {
  color: rgba(0, 0, 0, 0.24) !important;
  cursor: not-allowed;
  pointer-events: all;
}
.table tr.highlight {
  animation: changebg 4s infinite;
}
.table thead .fixed-column,
.table tfoot .fixed-column {
  z-index: 5 !important;
}
.table tr:hover .fixed-column.td-col {
  background: inherit;
}
.table th.employee-column {
  width: 220px;
}
.table th.employee-column .employee-header {
  width: 200px;
}
.table .fixed-column {
  position: -webkit-sticky !important;
  position: sticky !important;
  left: 0;
  z-index: 3;
  background: inherit;
}
.table .fixed-column.td-left--highlight::before {
  border-left-color: #141516;
}
.table .fixed-column.td-right--highlight::before {
  border-right-color: #141516;
}
.table .fixed-column {
  border: none;
}
.table .fixed-column::before {
  border: 1px solid;
  border-color: #ddd;
  border-width: 0 1px 0 1px;
  content: "";
  position: absolute;
  height: calc(100% + 1px);
  width: calc(100% + 1px);
  top: 0;
  left: 0;
  z-index: -1;
}
.table .fixed-column.td-col {
  background: inherit;
}
.table .wrap-h-table {
  display: flex;
  align-items: center;
}
.table .wrap-h-table .rf-button {
  color: #adadad;
  font-size: 12px;
  height: 17px;
  margin-top: 4px;
}

.sticky-table table .table-child-border tr.total-row td {
  height: 40px;
}
.sticky-table table .table-child-border tr {
  border-width: 1px;
}
.sticky-table table .table-child-border tr th.checkbox-column {
  padding-right: 0;
  padding-left: 10px;
}
.sticky-table table .table-child-border tr td.checkbox-column {
  padding-right: 0;
  padding-left: 10px;
}
.sticky-table table tbody tr {
  background: #FFFFFF;
}
.sticky-table table tbody tr.it-property {
  background: #fafafa;
}
.sticky-table table tbody tr.it-property td {
  background: none;
}
.sticky-table.sticky-table-noborder table > thead {
  position: relative;
  z-index: 11;
}
.sticky-table.sticky-table-noborder table > thead tr th {
  background: #fafafa;
}
.sticky-table.sticky-table-noborder .fixed-column {
  left: 2px;
}
.sticky-table.sticky-table-noborder .fixed-column::before {
  border: none;
  border-top: 1px solid #ecedee;
  top: -0.5px;
}
.sticky-table.sticky-table-noborder tr th.fixed-column:first-child::before,
.sticky-table.sticky-table-noborder tr td.fixed-column:first-child::before {
  border-left: 1px solid #ecedee;
  width: calc(100% + 2px);
  left: -2px;
}
.sticky-table.sticky-table-noborder tr td.fixed-column:first-child::before {
  background: #fff;
}
.sticky-table.sticky-table-noborder tr th.fixed-column:first-child::before {
  background: #fafafa;
}
.sticky-table.sticky-table-noborder tr:hover td.fixed-column:first-child::before {
  background: #e3e3e3;
}

.table > :not(caption) > * td {
  background: none;
}

@keyframes changebg {
  0% {
    background: #f3e3b0;
  }
  100% {
    background: #fff;
  }
}
caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777;
  text-align: left;
}

th {
  font-weight: 500;
  color: #181818;
}

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px;
}

.table > tbody > tr > td,
.table > tbody > tr > th,
.table > tfoot > tr > td,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > thead > tr > th {
  vertical-align: middle;
}

.table > thead > tr > th,
.table thead th {
  background-color: #f5f5f5;
  color: #6f767e;
  font-weight: 600;
  font-family: Jost, "Jost Fallback", sans-serif;
}

.table > tr > td {
  padding: 8px;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  hyphens: auto;
}

.table > tbody + tbody {
  border-top: 2px solid #ddd;
}

.table .table {
  background-color: #eee;
}
.table .table.table-description-list {
  background: none;
}
.table .table.table-description-list td {
  border-radius: 0 !important;
}
.table .table.table-description-list td.bg-none {
  background-color: transparent;
  background: none;
}
.table .table.table-description-list > :not(caption) > * > * {
  background: none;
}

.table-condensed > tbody > tr > td,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > td,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > thead > tr > th {
  padding: 5px;
}

.table-bordered {
  border: 1px solid #ddd;
}

.table-bordered > tbody > tr > td,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > td,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > thead > tr > th {
  border: 1px solid #ddd;
}

.table-bordered > thead > tr > td,
.table-bordered > thead > tr > th {
  border-bottom-width: 2px;
}

.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9;
}

.table-hover > tbody > tr:hover {
  background-color: #f8f9fb;
}

.table-hover > tbody > tr:hover > * {
  --mo-table-bg-state: #f8f9fb;
}

table col[class*=col-] {
  position: static;
  float: none;
  display: table-column;
}

table td[class*=col-],
table th[class*=col-] {
  position: static;
  float: none;
  display: table-cell;
}

.table > tbody > tr.active > td,
.table > tbody > tr.active > th,
.table > tbody > tr > td.active,
.table > tbody > tr > th.active,
.table > tfoot > tr.active > td,
.table > tfoot > tr.active > th,
.table > tfoot > tr > td.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > thead > tr.active > th,
.table > thead > tr > td.active,
.table > thead > tr > th.active {
  background-color: #f5f5f5;
}

.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr.active:hover > th,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover {
  background-color: #e8e8e8;
}

.table > tbody > tr.success > td,
.table > tbody > tr.success > th,
.table > tbody > tr > td.success,
.table > tbody > tr > th.success,
.table > tfoot > tr.success > td,
.table > tfoot > tr.success > th,
.table > tfoot > tr > td.success,
.table > tfoot > tr > th.success,
.table > thead > tr.success > td,
.table > thead > tr.success > th,
.table > thead > tr > td.success,
.table > thead > tr > th.success {
  background-color: #bdebc9;
}

.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr.success:hover > th,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover {
  background-color: #aae5ba;
}

.table > tbody > tr.info > td,
.table > tbody > tr.info > th,
.table > tbody > tr > td.info,
.table > tbody > tr > th.info,
.table > tfoot > tr.info > td,
.table > tfoot > tr.info > th,
.table > tfoot > tr > td.info,
.table > tfoot > tr > th.info,
.table > thead > tr.info > td,
.table > thead > tr.info > th,
.table > thead > tr > td.info,
.table > thead > tr > th.info {
  background-color: #f0ecf8;
}

.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr.info:hover > th,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover {
  background-color: #e2d9f1;
}

.table > tbody > tr.warning > td,
.table > tbody > tr.warning > th,
.table > tbody > tr > td.warning,
.table > tbody > tr > th.warning,
.table > tfoot > tr.warning > td,
.table > tfoot > tr.warning > th,
.table > tfoot > tr > td.warning,
.table > tfoot > tr > th.warning,
.table > thead > tr.warning > td,
.table > thead > tr.warning > th,
.table > thead > tr > td.warning,
.table > thead > tr > th.warning {
  background-color: #ffedc7;
}

.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr.warning:hover > th,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover {
  background-color: #ffe4ae;
}

.table > tbody > tr.danger > td,
.table > tbody > tr.danger > th,
.table > tbody > tr > td.danger,
.table > tbody > tr > th.danger,
.table > tfoot > tr.danger > td,
.table > tfoot > tr.danger > th,
.table > tfoot > tr > td.danger,
.table > tfoot > tr > th.danger,
.table > thead > tr.danger > td,
.table > thead > tr.danger > th,
.table > thead > tr > td.danger,
.table > thead > tr > th.danger {
  background-color: #fceaea;
}

.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr.danger:hover > th,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover {
  background-color: #f9d4d3;
}

.table > tfoot > tr:last-child > td:first-child,
.table > tfoot > tr:last-child > th:first-child {
  border-bottom-left-radius: 10px;
}
.table > tfoot > tr:last-child > td:last-child,
.table > tfoot > tr:last-child > th:last-child {
  border-bottom-right-radius: 10px;
}
.table > tfoot > tr > td,
.table > tfoot > tr > th {
  height: 60px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.table tbody > tr.tr-sub td:first-child::before {
  content: "-";
  display: inline-block;
  padding-right: 5px;
  margin-left: 3px;
  color: rgb(56.4285714286, 59.25, 62.0714285714);
}

.table-description-list {
  margin-bottom: 0;
}
.table-description-list > tr > td:first-child {
  text-align: right;
  font-weight: bold;
  background-color: #f8f9fa;
  width: 25%;
  white-space: nowrap;
}

.bg-rs-tblist {
  background: #f8f8f8 !important;
}

td.bg-rs-tblist {
  border: none !important;
}

.wrap-list-detail {
  border: 1px solid #ecedee;
  border-radius: 10px;
  padding: 0 10px;
  margin-top: 20px;
  background: #fff;
}
.wrap-list-detail .table-list {
  border: none;
  margin: 0;
  background: #fff;
}
.wrap-list-detail .table-list tr td {
  border-bottom: 1px solid #ecedee;
  padding: 12px 0;
  font-weight: 400;
  font-size: 14px;
}
.wrap-list-detail .table-list tr td.col-label {
  color: #4d4f52;
  white-space: nowrap;
  padding-right: 35px;
  width: 15%;
}
.wrap-list-detail .table-list tr td.col-value {
  color: #141516;
  width: 85%;
}
.wrap-list-detail .table-list tr:last-child {
  border-right: none;
}
.wrap-list-detail .table-list tr:last-child td {
  border: none;
}

/**
* Table
*/
.table-wrap-fit-content {
  display: inline-block;
  max-width: 100%;
  vertical-align: top;
}
.table-wrap-fit-content .table.table-width-by-content {
  width: auto;
}

.table {
  border-radius: 10px;
}
.table .custom-checkbox.checkbox-rouded input:checked ~ .checkmark:after,
.table .custom-checkbox.checkbox-rouded.haveActive input ~ .checkmark:after {
  left: 3.3px;
  top: -0.5px;
  width: 5px;
  height: 10px;
}
.table.table-select-field tr.disabled {
  pointer-events: none;
  opacity: 0.8;
}
.table.table-select-field tr.disabled td {
  background: #ccc;
}
.table thead tr th {
  font-size: 12px;
  font-weight: 500;
  color: #383c40;
  background: #fafafa;
}
.table tbody tr.tr-main td {
  border-bottom: none;
  border-top: 1px solid #ECEDEE;
}
.table tbody tr.tr-main td.td-open-column {
  position: relative;
}
.table tbody tr.tr-main td.td-open-column::before {
  content: "";
  position: absolute;
  top: 60px;
  width: 2px;
  height: calc(100% - 80px);
  border-radius: 10px;
  background: #ECEDEE;
  left: 50%;
}
.table tbody tr.tr-main:first-child > td {
  border: none;
}
.table tbody tr.tr-child > td {
  border: none;
}
.table tbody tr td {
  font-size: 12px;
  font-weight: 400;
  color: #141516;
  vertical-align: middle;
}
.table tbody tr td.row-num {
  color: #94a3b8;
}
.table tbody tr td.action-column .list-action {
  padding: 0;
}
.table tbody tr td .text-dark-custom {
  color: #141516;
}
.table tbody tr td.column-post-title {
  width: 90%;
}
.table tbody tr td.column-post-title .wrap-p-line {
  display: flex;
  align-items: center;
}
.table tbody tr td.column-post-title .post-thumb {
  width: 90px;
  height: 60px;
  margin-right: 10px;
  border-radius: 3px;
  overflow: hidden;
  min-width: 90px;
}
.table tbody tr td.column-post-title .post-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.table tbody tr td .line-grey {
  color: #969696;
}
.table tbody tr td a {
  color: #266df0;
  font-weight: 500;
}
.table tbody tr td .status {
  height: 30px;
  line-height: 30px;
  border-radius: 10px;
  text-align: center;
  min-width: 100px;
  margin: auto;
  padding: 0 25px;
  display: inline-block;
  white-space: nowrap;
}
.table tbody tr td .status.status-job {
  background: rgba(58, 177, 116, 0.15);
  color: #3AB174;
}
.table tbody tr td .status.status-success {
  background: rgba(58, 177, 116, 0.15);
  color: #3AB174;
}
.table tbody tr td .status.status-danger {
  background: rgba(245, 73, 73, 0.15);
  color: #F54949;
}
.table tbody tr td .status.status-new {
  background: rgba(38, 109, 240, 0.15);
  color: #266DF0;
}
.table tbody tr td .status.status-open {
  background: rgba(38, 109, 240, 0.15);
  color: #266DF0;
}
.table tbody tr td .status.status-closed {
  background: rgba(211, 89, 89, 0.15);
  color: #D35959;
}
.table tbody tr td .status.status-in-progress {
  background: rgba(255, 179, 32, 0.15);
  color: #FFB320;
}
.table tbody tr td .status.status-external-provider {
  background: rgba(58, 177, 116, 0.15);
  color: #3AB174;
}
.table tbody tr td .status.status-paid {
  background: rgba(58, 177, 116, 0.15);
  color: #3AB174;
}
.table tbody tr td .status.status-pending {
  background: rgba(255, 179, 32, 0.15);
  color: #FFB320;
}
.table tbody tr td .status.status-overdue {
  background: rgba(245, 73, 73, 0.15);
  color: #F54949;
}
.table tbody tr td .status.status-not-sent {
  background: rgba(38, 109, 240, 0.15);
  color: #266DF0;
}
.table tbody tr td .status.status-verified {
  background: rgba(38, 109, 240, 0.15);
  color: #266DF0;
}
.table tbody tr td .status.status-approved {
  background: rgba(58, 177, 116, 0.15);
  color: #3AB174;
}
.table tbody tr td .status.status-reversed {
  background: rgba(245, 73, 73, 0.15);
  color: #F54949;
}
.table tbody tr td .title {
  color: #141516;
}
.table .checkbox-column {
  width: 25px;
  padding-right: 0;
  padding-left: 10px;
}
.table .action-column {
  white-space: nowrap;
  width: 1px;
}
.table .col-action {
  width: 120px;
  max-width: fit-content;
}
.table.table-rounded {
  border-collapse: collapse;
  border-radius: 10px;
  border-style: hidden; /* hide standard table (collapsed) border */
  box-shadow: 0 0 0 1px #ECEDEE; /* this draws the table border  */
  margin: 1px;
  width: calc(100% - 2px);
}
.table.table-rounded.table-no-thead > tbody > tr:first-child > td:first-child,
.table.table-rounded.table-no-thead > tbody > tr:first-child > th:first-child {
  border-radius: 10px 0 0 0;
}
.table.table-rounded.table-no-thead > tbody > tr:first-child > td:last-child {
  border-radius: 0 12px 0 0;
}
.table.table-rounded.table-no-thead > tbody > tr:first-child.one-column > td,
.table.table-rounded.table-no-thead > tbody > tr:first-child.one-column > th {
  border-radius: 10px 12px 0 0;
}
.table.table-rounded thead th:first-child {
  border-radius: 10px 0 0 0;
}
.table.table-rounded thead th:last-child {
  border-radius: 0 12px 0 0;
}
.table.table-rounded > tbody > tr:last-child > td:first-child,
.table.table-rounded > tbody > tr:last-child > th:first-child {
  border-radius: 0 0 0 12px;
}
.table.table-rounded > tbody > tr:last-child > td:last-child {
  border-radius: 0 0 12px 0;
}
.table.table-rounded > tbody > tr:last-child.one-column > td,
.table.table-rounded > tbody > tr:last-child.one-column > th {
  border-radius: 0 0 12px 12px;
}
.table.table-rounded.no-thead tbody tr:first-child td:first-child {
  border-radius: 10px 0 0 0;
}
.table.table-rounded.no-thead tbody tr:first-child td:last-child {
  border-radius: 0 12px 0 0;
}
.table.table-not-rounded {
  border: none;
}
.table.table-not-rounded tr th {
  border: none;
}
.table.table-not-rounded tr td {
  border-color: #ECEDEE;
}
.table.one-row tbody tr td:first-child {
  border-bottom-left-radius: 10px !important;
}
.table.one-row tbody tr td:last-child {
  border-bottom-right-radius: 10px !important;
}

/**Sticky Table**/
.sticky-table {
  max-height: calc(100vh - 272px);
  min-height: 100px;
}
.sticky-table.show-full-height {
  max-height: none;
}
.sticky-table.medium-height {
  max-height: 500px;
}
.sticky-table.smaller-height {
  max-height: 300px;
}
.sticky-table.fillter-table {
  min-height: 100px;
}
.sticky-table.box-table {
  max-height: 200px;
}
.sticky-table > table.table-bordered > thead > tr > th {
  border: 1px solid #ddd;
}
.sticky-table > table > thead > tr {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 3;
  border: none;
}
.sticky-table > table > thead > tr > th {
  border-top: none;
  position: relative;
  border-left: none;
  border-right: none;
  border-bottom: 2px solid #cbd5e1;
}
.sticky-table > table > thead > tr > th::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  height: 1px;
  border-top: 1px solid #eee;
}
.sticky-table > table > thead > tr > th::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid #eee;
}
.sticky-table > table > thead > tr > th:first-child::before {
  border-radius: 10px 0 0 0;
  background: #fafafa;
}
.sticky-table > table > thead > tr > th:last-child::before {
  height: 12px;
  border-radius: 0 12px 0 0;
}
.sticky-table > table > thead > tr > th.th-left--highlight::before {
  border-left-color: #141516;
  border-left-width: 1px;
}
.sticky-table > table > thead > tr > th.th-right--highlight::before {
  border-right-color: #141516;
  border-right-width: 1px;
}
.sticky-table > table > thead > tr > th.fix-row-1 {
  height: 32px;
}
.sticky-table > table > thead > tr > th.fix-row-2 {
  top: 32px;
  height: 32px;
}
.sticky-table > table > thead > tr > th.fix-row-3 {
  top: 64px;
}
.sticky-table > table tbody thead tr {
  z-index: 2;
}
.sticky-table thead .fixed-column,
.sticky-table tfoot .fixed-column {
  z-index: 5 !important;
}
.sticky-table tr:hover .fixed-column.td-col {
  background: inherit;
}
.sticky-table .fixed-column {
  position: -webkit-sticky !important;
  position: sticky !important;
  left: 0;
  z-index: 3;
}
.sticky-table .fixed-column.td-left--highlight::before {
  border-left-color: #141516;
}
.sticky-table .fixed-column.td-right--highlight::before {
  border-right-color: #141516;
}
.sticky-table .fixed-column {
  border: none;
}
.sticky-table .fixed-column::before {
  border: 1px solid;
  border-color: #ddd;
  content: "";
  position: absolute;
  width: 100%;
  height: calc(100% + 1px);
  top: 0;
  left: 0;
  z-index: -1;
}
.sticky-table .fixed-column.td-col {
  background: inherit;
  z-index: 4;
}

.parent-table {
  border-radius: 0;
}
.parent-table.sticky-table {
  max-height: calc(100vh - 175px);
  border-top: 1px solid var(--border);
}
.parent-table.list-2-tabs {
  max-height: calc(100vh - 280px);
}
.parent-table > table > thead > tr > th:last-child::before {
  border-radius: 0;
}

.content-nav-top .parent-table.sticky-table {
  max-height: calc(100vh - 220px);
}

.border-table table > thead > tr > th {
  font-weight: 500;
  background: #f1f2f4;
  color: #94a3b8;
  padding-bottom: 0.415rem;
  padding-top: 0.415rem;
}
table .custom-checkbox.single {
  height: 17px;
  width: 15px;
}
table .custom-checkbox.single .checkmark {
  width: 13px;
  height: 13px;
  border: 1px solid #767676;
  border-radius: 2px;
}
table .custom-checkbox.single .checkmark::after {
  left: 3px;
  top: -1px;
}
table .custom-checkbox.single.indeterminate .checkmark::before {
  left: 1.5px;
}

.table-excel {
  width: 100%;
  white-space: nowrap;
  background: #fff none repeat scroll 0 0;
  border-left: 1px solid #ddd;
  border-top: 1px solid #ddd;
  /*table tr:nth-child(even){background:#ccc;}
  table tr:nth-child(odd){background:#eee;}
  */
}
.table-excel thead tr th {
  background: #eee;
  border-right: 1px solid #ddd !important;
  border-bottom: 1px solid #ddd !important;
  padding: 5px;
}
.table-excel tr td {
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  vertical-align: top;
}
.table-excel tr td .order-number {
  padding-top: 8px;
  display: block;
}
.table-excel textarea,
.table-excel select,
.table-excel input {
  border: 0px solid #000;
  margin: 0;
  background: transparent;
  width: 100%;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  appearance: auto;
  border-radius: 0;
  font-size: inherit;
  display: inline-block;
  height: 34px;
}
.table-excel textarea {
  padding-top: 6px;
}
.table-excel select {
  padding: 4px 2px;
  box-shadow: none;
}
.table-excel input {
  padding: 5px;
}
.table-excel .form-control:focus,
.table-excel input:focus,
.table-excel select:focus {
  outline: none !important;
  box-shadow: 0 0 0 1px #555 !important;
}
.table-excel .mat-mdc-form-field {
  width: 100%;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.table-excel .mat-mdc-form-field.mat-focused {
  box-shadow: 0 0 0 1px #555 !important;
}
.table-excel .mat-mdc-form-field .mat-mdc-form-field-flex {
  width: 140px;
}
.table-excel .mdc-text-field--outlined {
  padding-left: 0 !important;
  --mdc-outlined-text-field-outline-width: 0;
  --mdc-outlined-text-field-focus-outline-width: 0;
  --mdc-outlined-text-field-container-shape: 0;
}
.table-excel .mat-mdc-form-field-input-control.mat-mdc-form-field-input-control {
  height: -webkit-fill-available !important;
  font-size: 13px;
  font-family: Jost, "Jost Fallback", sans-serif;
}
.table-excel .mat-mdc-form-field-input-control.mat-mdc-form-field-input-control:focus {
  box-shadow: none !important;
}
.table-excel .mat-mdc-icon-button {
  --mdc-icon-button-icon-size: 18px;
}
.table-excel .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mat-mdc-form-field-infix {
  flex: initial;
  min-width: 165px !important;
  padding-top: 3px;
}

.table-tree-input thead > tr > th {
  border-left: 1px solid #dee2e6 !important;
}
.table-tree-input tbody tr td {
  padding-top: 0;
  padding-bottom: 0;
  border-left: 1px solid #dee2e6;
  vertical-align: top;
}
.table-tree-input tbody tr td:first-child {
  padding-left: 10px;
}
.table-tree-input tbody tr td:first-child textarea {
  height: 32px;
  border: none;
}
.table-tree-input tbody tr td > * {
  margin-top: -1px;
  margin-bottom: -1px;
}
.table-tree-input tbody tr td textarea,
.table-tree-input tbody tr td select,
.table-tree-input tbody tr td input {
  font-size: 12px;
  height: 32px;
  padding-left: 6px;
  border-radius: 0;
}
.table-tree-input tbody tr td textarea {
  padding-top: 3px;
  line-height: 1;
  margin-top: 6px;
}
.table-tree-input tbody tr td .form-control:focus,
.table-tree-input tbody tr td input:focus,
.table-tree-input tbody tr td select:focus {
  outline: none !important;
  box-shadow: 0 0 0 1px #555 !important;
}
.table-tree-input tbody tr td .list-action {
  padding-top: 0;
  padding-bottom: 0;
}
.table-tree-input tbody tr td .list-action a i,
.table-tree-input tbody tr td .list-action button i {
  font-size: 12px;
  line-height: 30px;
}
.table-tree-input tbody tr td .mdc-text-field--outlined {
  padding-left: 0;
  --mdc-outlined-text-field-container-shape: 0px !important;
  --mdc-outlined-text-field-outline-width: 0.05px;
}
.table-tree-input tbody tr td .mat-mdc-icon-button.mat-mdc-button-base {
  margin-left: -25px;
}
.table-tree-input tbody tr td .mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control {
  font-size: 12px;
}
.table-tree-input tbody tr td .mat-mdc-select {
  font-size: 12px;
}
.table-tree-input .wrap-project-title {
  min-height: 34px;
  padding-left: 20px;
}
.table-tree-input .wrap-project-title .ex-button {
  width: 16px;
  height: 16px;
}
.table-tree-input .wrap-project-title .ex-button span::before {
  left: 2px;
}
.table-tree-input .wrap-project-title .ex-button span::after {
  top: 2px;
  left: 45%;
}
.table-tree-input .mat-mdc-icon-button svg {
  height: 18px;
  width: 18px;
}
.table-tree-input .ng-select .ng-select-container {
  border-radius: 0;
  min-height: auto;
  border: none;
}
.table-tree-input .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input {
  padding: 0;
  margin: 0;
}
.table-tree-input--editing thead > tr > th {
  border-left: none;
}
.table-tree-input--editing tbody tr td {
  padding-left: 0;
  padding-right: 0;
}

.sticky-table > table.table-excel > thead > tr {
  top: 0;
}
.sticky-table > table.table-excel > thead > tr > th::after {
  bottom: -1px;
  border-bottom: 1px solid #ddd;
  top: 0;
  height: 100%;
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd;
  left: -1px;
  width: calc(100% + 2px);
}
.sticky-table > table.table-excel > thead > tr > th::before {
  top: -1px;
  left: -1px;
  height: 100%;
  border-top: 1px solid #dddddd;
  background: transparent;
  border-radius: 0;
  width: calc(100% + 1px);
  z-index: 9999999999999;
}

.page-container {
  display: flex;
}
.page-container .wrap-navs {
  width: 225px;
  background: #fafafa;
  border-right: 1px solid #ECEDEE;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 7;
  overflow: visible;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.page-container .wrap-navs .small-logo img {
  width: 0px;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.page-container .wrap-navs .full-logo img {
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.page-container .wrap-navs .wrap-toggle-icon {
  position: absolute;
  top: 10px;
  right: -30px;
  z-index: 2;
  font-size: 18px;
  cursor: pointer;
  color: #94a3b8;
}
.page-container .wrap-navs .wrap-toggle-icon i.fa-bars {
  padding-right: 5px;
}
.page-container .wrap-navs .sidebar {
  height: 100%;
  overflow-y: auto;
  -ms-overflow-style: none; /* IE 11 */
  scrollbar-width: none; /* Firefox 64 */
  position: relative;
}
.page-container .wrap-navs .sidebar #top-nav-sidebar {
  position: absolute;
  top: -300px;
}
.page-container .wrap-navs .fix-bar {
  padding: 0px 0 8px 0;
  position: sticky;
  top: 0;
  z-index: 1;
  background: #fafafa;
}
.page-container .wrap-navs .main-logo {
  text-align: left;
  padding: 8px;
  border-bottom: 1px solid #ecedee;
  height: 50px;
}
.page-container .wrap-navs .main-logo img {
  max-width: 80%;
}
.page-container .wrap-navs .nav-button button {
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  display: table;
  width: auto;
  margin: auto;
  text-align: center;
  padding: 0 22px;
}
.page-container .wrap-navs .nav-button button i {
  margin: 0;
}
.page-container .wrap-navs .main-navigation .main-menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.page-container .wrap-navs .main-navigation .main-menu > li {
  margin-bottom: 5px;
}
.page-container .wrap-navs .main-navigation .main-menu > li.no-item {
  padding: 15px 20px 0px 20px;
}
.page-container .wrap-navs .main-navigation .main-menu > li .ico-user {
  position: absolute;
  left: 20px;
  top: 36%;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a {
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  width: 100%;
  padding: 6px 6px 6px 36px;
  display: block;
  position: relative;
  height: 30px;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a span.text {
  display: block;
  width: 100%;
  overflow: hidden;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a i {
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  position: absolute;
  right: 15px;
  top: 10px;
  font-size: 10px;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a.active::before, .page-container .wrap-navs .main-navigation .main-menu > li > a:hover::before {
  content: "";
  display: block;
  position: absolute;
  left: 0%;
  background: #ebf2ff;
  width: 100%;
  height: 100%;
  z-index: -10;
  top: 0;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a.active svg path, .page-container .wrap-navs .main-navigation .main-menu > li > a:hover svg path {
  fill: #266df0;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a svg,
.page-container .wrap-navs .main-navigation .main-menu > li > a .fas {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateX(0%) translateY(-51%);
  max-width: 16px;
  max-height: 13px;
}
.page-container .wrap-navs .main-navigation .main-menu li.inside-bg-rect a:hover > svg > rect, .page-container .wrap-navs .main-navigation .main-menu li.inside-bg-rect a.active > svg > rect {
  fill: #266DF0 !important;
}
.page-container .wrap-navs .main-navigation .main-menu li.inside-bg-rect a:hover > svg > circle#issue-indicator, .page-container .wrap-navs .main-navigation .main-menu li.inside-bg-rect a.active > svg > circle#issue-indicator {
  fill: #FFFFFF !important;
}
.page-container .wrap-navs .main-navigation .main-menu li.inside-bg a:hover svg path, .page-container .wrap-navs .main-navigation .main-menu li.inside-bg a.active svg path {
  stroke: #141516;
}
.page-container .wrap-navs .main-navigation .main-menu li.inside-bg a svg path {
  fill: none;
}
.page-container .wrap-navs .main-navigation .main-menu li a {
  color: #505154;
  text-decoration: none;
  font-size: 12px;
}
.page-container .wrap-navs .main-navigation .main-menu li a.active {
  color: #266df0;
}
.page-container .wrap-navs .main-navigation .main-menu li a .highlight {
  font-weight: 600;
  color: #266df0;
}
.page-container .wrap-navs .main-navigation .main-menu li a svg.fill-none path {
  fill: none;
}
.page-container .wrap-navs .main-navigation .main-menu li a svg path {
  fill: #696969;
}
.page-container .wrap-navs .main-navigation .main-menu li a {
  /*&.active, */
}
.page-container .wrap-navs .main-navigation .main-menu li a.is-open + .sub-menu {
  max-height: 740px;
  margin: 10px 0 10px 0;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.page-container .wrap-navs .main-navigation .main-menu li a.is-open i::before {
  content: "\f077";
}
.page-container .wrap-navs .main-navigation .main-menu li:hover .sub-menu {
  max-height: 740px;
  margin: 10px 0 10px 0;
  transition-delay: 0.7s;
  transition-duration: 0.5s ease-in-out;
}
.page-container .wrap-navs .main-navigation .main-menu li .sub-menu {
  max-height: 0px;
  overflow: hidden;
  list-style: none;
  padding: 0;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  position: relative;
}
.page-container .wrap-navs .main-navigation .main-menu li .sub-menu .sub-submenu {
  padding-left: 5px;
}
.page-container .wrap-navs .main-navigation .main-menu li .sub-menu .sub-submenu li {
  padding: 0;
  position: relative;
  list-style: none;
}
.page-container .wrap-navs .main-navigation .main-menu li .sub-menu .sub-submenu li a {
  padding-left: 16px;
}
.page-container .wrap-navs .main-navigation .main-menu li .sub-menu .sub-submenu li::before {
  top: 17px;
  left: 6px;
  position: absolute;
  content: "";
  width: 5px;
  height: 5px;
  background: #6f767e;
  border-radius: 50%;
  border: none;
}
.page-container .wrap-navs .main-navigation .main-menu li .sub-menu::before {
  position: absolute;
  content: "";
  width: 2px;
  height: calc(100% - 22px);
  left: 20px;
  top: -18px;
  background: #dfdfdf;
}
.page-container .wrap-navs .main-navigation .main-menu li .sub-menu li {
  padding: 0px 10px 0px 40px;
  position: relative;
  margin-bottom: 1px;
}
.page-container .wrap-navs .main-navigation .main-menu li .sub-menu li::before {
  content: "";
  position: absolute;
  left: 20px;
  top: -6px;
  width: 22px;
  height: 25px;
  border-left: 2px solid #dfdfdf;
  border-bottom: 2px solid #dfdfdf;
  border-radius: 0 0 0 12px;
}
.page-container .wrap-navs .main-navigation .main-menu li .sub-menu li a {
  display: block;
  width: 100%;
  padding: 8px;
}
.page-container .wrap-navs .main-navigation .main-menu li .sub-menu li a.active, .page-container .wrap-navs .main-navigation .main-menu li .sub-menu li a:hover {
  color: #266df0;
  background: #ebf2ff;
  border-radius: 6px;
}
.page-container .main-container {
  width: 100%;
  padding-left: 225px;
  padding-bottom: 0;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.page-container .main-container > app-portal-header {
  display: block;
  position: sticky;
  top: 0;
  z-index: 50;
}
.page-container .main-container.no-padding-bottom {
  padding-bottom: 0;
}
.page-container .main-container .ot-content {
  width: calc(100% - 225px);
}
.page-container .main-container > app-portal-header > header {
  width: 100%;
  border-bottom: 1px solid #ECEDEE;
  position: sticky;
  top: 0;
  background: #FFFFFF;
  z-index: 50;
  height: 50px;
}
.page-container .main-container > app-portal-header > header .headerwrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 3px 0.5rem;
}
.page-container .main-container > app-portal-header > header .headerwrapper .left-content {
  display: flex;
  align-items: center;
  padding-left: 2.5rem;
}
.page-container .main-container > app-portal-header > header .headerwrapper .left-content .page-title h1 {
  color: #1a1d1f;
  font-weight: 600;
  font-size: 22px;
}
.page-container .main-container > app-portal-header > header .headerwrapper .left-content .search-box {
  margin-right: 10px;
}
.page-container .main-container > app-portal-header > header .headerwrapper .left-content .date-time-line {
  color: #141516;
  font-size: 14px;
  padding-left: 0;
}
.page-container .main-container > app-portal-header > header .headerwrapper .left-content .date-time-line i {
  font-size: 18px;
  margin-right: 3px;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content {
  display: flex;
  justify-content: end;
  align-items: center;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top {
  border-radius: 12px;
  width: 36px;
  height: 36px;
  line-height: 36px;
  text-align: center;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top i {
  font-size: 16px;
  color: #6f767e;
  line-height: 36px;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top .wrap-popup-noti {
  text-align: center !important;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top .wrap-popup-noti i {
  line-height: normal;
  color: #fff;
  font-size: 13px;
  margin-right: 5px;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top .phone-call {
  padding: 0;
  border: 1px solid transparent;
  border-radius: 50%;
  cursor: pointer;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top .phone-call.ot-header-phone-enabled {
  border-color: green;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top .phone-call.ot-header-phone-enabled svg path {
  fill: green;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.message {
  margin-right: 8px;
  position: relative;
  border-radius: 50%;
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.message a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.message.chat-open {
  background: rgba(38, 109, 240, 0.1);
  box-shadow: inset 0 0 0 1px rgba(38, 109, 240, 0.2);
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.message.chat-error {
  background: rgba(245, 158, 11, 0.12);
  box-shadow: inset 0 0 0 1px rgba(245, 158, 11, 0.28);
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.message .number {
  position: absolute;
  top: 4px;
  left: 17px;
  min-width: 17px;
  height: 17px;
  background: #e1002d;
  color: #fff;
  border-radius: 20px;
  font-size: 10px;
  line-height: 17px;
  text-align: center;
  border: 0px solid #fff;
  padding: 0 3px;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.message .chat-error-badge {
  position: absolute;
  top: 3px;
  right: 3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #f59e0b;
  color: #fff;
  border: 2px solid #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 12px;
  text-align: center;
  z-index: 1;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.16);
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.setting {
  margin-top: -4px;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.notification {
  margin-right: 8px;
  position: relative;
  border-radius: 50%;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.notification .number {
  position: absolute;
  top: 4px;
  left: 17px;
  min-width: 17px;
  height: 17px;
  background: #e1002d;
  color: #fff;
  border-radius: 20px;
  font-size: 10px;
  line-height: 17px;
  text-align: center;
  border: 0px solid #fff;
  padding: 0 3px;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.notification .wrap-popup-noti {
  position: absolute;
  width: 600px;
  max-width: 100vw;
  right: 0;
  text-align: left;
  background: #fff;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
  line-height: normal;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.notification .wrap-popup-noti .tab-content {
  max-height: calc(100vh - 120px);
  overflow-y: auto;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.notification .wrap-popup-noti .countdown-timer {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  margin: 12px auto;
  max-width: 250px;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.notification .wrap-popup-noti .countdown-timer .countdown-segment {
  flex: 1 1 0;
  min-width: 0;
  text-align: center;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.notification .wrap-popup-noti .countdown-timer .countdown-value {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border-radius: 10px;
  background: linear-gradient(180deg, rgb(38, 110, 239) 0%, rgb(34, 201, 255) 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15);
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.04em;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.notification .wrap-popup-noti .countdown-timer .countdown-label {
  margin-top: 8px;
  color: #6f767e;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
}
.page-container .main-container > app-portal-header > header .headerwrapper .right-content .icon-top.notification .wrap-popup-noti .countdown-timer .countdown-separator {
  align-self: center;
  margin-top: -21px;
  color: #9ca3af;
  font-size: 22px;
  font-weight: 500;
  line-height: 1;
}
.page-container .main-container > app-portal-header > header .headerwrapper .head-date {
  position: relative;
  top: 2px;
  font-size: 14px;
  font-weight: 500;
  color: #94a3b8;
  white-space: nowrap;
}

.btn-signup {
  background: #266df0;
  color: #fff;
  border-radius: 8px;
  box-shadow: none;
  padding: 0 25px;
  height: 36px;
  line-height: 34px;
  font-weight: 600;
  font-size: 13px;
  white-space: nowrap;
}
.btn-signup:hover, .btn-signup:active, .btn-signup:focus {
  background: #266df0;
  color: #fff;
  opacity: 0.9;
}

.btn-loggedin {
  background: #fff;
  color: #141516;
  border: 1px solid #d0d0d0;
  border-radius: 8px;
  box-shadow: none;
  padding: 0 25px;
  height: 36px;
  line-height: 34px;
  font-weight: 600;
  font-size: 13px;
}
.btn-loggedin:hover, .btn-loggedin:active, .btn-loggedin:focus {
  background: #fff;
  color: #141516;
  opacity: 0.9;
  border: 1px solid #d0d0d0;
}

.user-setting .wrap-user-info {
  display: flex;
  align-items: center;
  cursor: pointer;
}
.user-setting .wrap-user-info > i {
  font-size: 20px;
  color: #c9cccf;
  position: relative;
  border-radius: 50%;
}
.user-setting .wrap-user-info > i::after {
  content: "";
  position: absolute;
  width: 90%;
  height: 90%;
  background: #1a1d1f;
  border-radius: 50%;
  z-index: -1;
  left: 5%;
  top: 5%;
}
.user-setting {
  color: #1e1e1e;
  position: relative;
}
.user-setting .user-dropdown {
  position: absolute;
  background: #FFFFFF;
  top: 52px;
  right: 0;
  z-index: 30;
  padding: 10px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
  max-height: calc(100vh - 100px);
  overflow-y: auto;
}
.user-setting .user-dropdown ul {
  margin: 0;
  padding: 0;
  width: 255px;
}
.user-setting .user-dropdown ul li {
  list-style: none;
  display: table;
  width: 100%;
  border-bottom: 1px solid #ECEDEE;
}
.user-setting .user-dropdown ul li:last-child {
  border: none;
}
.user-setting .user-dropdown ul li a {
  color: #141516;
  display: table;
  width: 100%;
  padding: 8px 0;
}
.user-setting .avatar {
  margin-right: 5px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
}
.user-setting .avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.user-setting .username {
  padding: 0 8px 0 5px;
}
.user-setting .username .name {
  font-size: 14px;
  color: #141516;
}
.user-setting .username .email {
  color: #6f767e;
  font-weight: 400;
  font-size: 12px;
}

header {
  position: relative;
}
header .public-search {
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
}

.search-bar {
  box-shadow: 0 0 40px rgba(51, 51, 51, 0.1);
}
.search-bar .search-select {
  position: relative;
}
.search-bar .search-select select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  min-width: 200px;
  text-indent: 25px;
}
.search-bar .search-select .icon-location {
  position: absolute;
  top: 5px;
  left: 15px;
}
.search-bar .search-input {
  position: relative;
}
.search-bar .search-input input {
  min-width: 290px;
  border-radius: 0;
}
.search-bar .search-input .icon-search {
  position: absolute;
  top: 5px;
  left: 15px;
}
.search-bar .search-button {
  padding: 1px 8px;
  background: rgb(39, 80, 248);
  line-height: 0;
  border: 1px solid rgb(39, 80, 248);
}
.search-bar .search-button:hover, .search-bar .search-button:active {
  background: rgba(39, 80, 248, 0.9) !important;
  border-color: rgba(39, 80, 248, 0.9) !important;
}

.navbar-toggler .bar1,
.navbar-toggler .bar2,
.navbar-toggler .bar3 {
  transition: 0.4s;
  width: 30px;
  height: 4px;
  background-color: #383c40;
  margin: 0 0 7px 0;
  display: block;
  border-radius: 10px;
}
.navbar-toggler .bar3 {
  margin-bottom: 0;
}
.navbar-toggler.active .bar1 {
  transform: rotate(-45deg) translate(-8px, 0px);
}
.navbar-toggler.active .bar3 {
  transform: rotate(45deg) translate(-7px, 0px);
}
.navbar-toggler.active .bar2 {
  opacity: 0;
  display: none;
}

.signin-up {
  list-style: none;
  font-weight: 500;
  font-size: 15px;
  margin: 0;
  padding: 0;
  margin: 10px 0;
  text-align: right;
}
.signin-up li {
  display: inline-block;
}
.signin-up li a {
  background: #266df0;
  color: #fff;
  border-radius: 8px;
  box-shadow: none;
  padding: 10px 25px;
  font-weight: 600;
  font-size: 13px;
  white-space: nowrap;
}
.signin-up li a:hover, .signin-up li a:active, .signin-up li a:focus {
  background: #266df0;
  color: #fff;
  opacity: 0.9;
}
.signin-up li a i {
  padding-right: 3px;
}
.signin-up li.signin {
  margin-left: 10px;
}
.signin-up li.signin a {
  background: #fff;
  color: #141516;
  border: 1px solid #d0d0d0;
}
.signin-up li.signin a:hover {
  color: #141516;
  border: 1px solid #d0d0d0;
}

.search-feature {
  position: relative;
}
.search-feature .form-control {
  padding-right: 24px;
}
.search-feature .clear-search {
  position: absolute;
  top: 7px;
  right: 3px;
  cursor: pointer;
  display: none;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.search-feature .clear-search.has-text {
  display: block;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.search-feature .clear-search.has-text .btn-close {
  background-size: 0.8em auto;
}

/* ─── Sidebar – List View Standard Overrides ─── */
/* Overrides the existing _header.scss sidebar styles to match the design reference */
/* toggleMenu=false → no .active → sidebar EXPANDED (default) */
/* toggleMenu=true → .active → sidebar COLLAPSED */
.page-container .wrap-navs {
  width: 225px !important;
  background: var(--surface) !important;
  border-right: 1px solid var(--border) !important;
  transition: width 180ms var(--ease) !important;
}
.page-container .wrap-navs .wrap-toggle-icon {
  position: absolute;
  top: 10px;
  right: -30px;
  z-index: 2;
  cursor: pointer;
  color: var(--t3);
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  border: none;
  background: none;
  transition: all 80ms var(--ease);
}
.page-container .wrap-navs .wrap-toggle-icon:hover {
  background: var(--raised);
  color: var(--text);
}
.page-container .wrap-navs .sidebar {
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.page-container .wrap-navs .sidebar::-webkit-scrollbar {
  width: 0;
}
.page-container .wrap-navs .sidebar .fix-bar {
  padding: 0 0 0 0 !important;
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--surface) !important;
}
.page-container .wrap-navs .sidebar .fix-bar .main-logo {
  height: var(--hh) !important;
  padding: 0 8px !important;
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--border) !important;
}
.page-container .wrap-navs .sidebar .fix-bar .main-logo .full-logo {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
}
.page-container .wrap-navs .sidebar .fix-bar .main-logo .full-logo img {
  max-width: 100%;
  height: 24px;
}
.page-container .wrap-navs .sidebar .fix-bar .main-logo .small-logo img {
  width: 0;
  transition: width 140ms;
}
.page-container .wrap-navs .sidebar .s-organization {
  padding: 8px 10px 4px !important;
}
.page-container .wrap-navs .sidebar .s-organization .search-feature .form-control {
  height: 30px !important;
  font-size: 12px !important;
  border: 1px solid var(--border) !important;
  border-radius: 5px !important;
  padding-left: 8px !important;
  color: var(--t3);
}
.page-container .wrap-navs .sidebar .s-organization .search-feature .form-control:focus {
  border-color: var(--brand) !important;
}
.page-container .wrap-navs {
  /* Main navigation overhaul */
}
.page-container .wrap-navs .main-navigation .main-menu {
  padding: 2px 0 !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li {
  margin-bottom: 0 !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  height: 36px !important;
  padding: 0 12px !important;
  cursor: pointer;
  color: var(--t2) !important;
  font-size: 13px !important;
  white-space: nowrap;
  transition: background 80ms, color 80ms !important;
  text-decoration: none;
  position: relative;
  border-radius: 0 !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a::before {
  display: none !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a svg, .page-container .wrap-navs .main-navigation .main-menu > li > a .fas {
  position: static !important;
  transform: none !important;
  width: 15px !important;
  height: 15px !important;
  max-width: 15px !important;
  max-height: 15px !important;
  flex-shrink: 0;
  opacity: 0.55;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a span.text {
  display: block !important;
  overflow: hidden !important;
  opacity: 1;
  max-width: 200px;
  transition: opacity 140ms, max-width 140ms !important;
  white-space: nowrap;
  font-size: 13px;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a i.fa-chevron-down {
  position: static !important;
  margin-left: auto !important;
  flex-shrink: 0;
  opacity: 0.4;
  font-size: 10px !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a:hover {
  background: var(--raised) !important;
  color: var(--text) !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a.active:not(.ot-sidebar-nav-disabled) {
  background: var(--brand-bg) !important;
  color: var(--brand) !important;
  font-weight: 500;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a.active:not(.ot-sidebar-nav-disabled) svg {
  opacity: 1 !important;
  /* Only fill paths that are intended to be filled */
}
.page-container .wrap-navs .main-navigation .main-menu > li > a.active:not(.ot-sidebar-nav-disabled) svg path[fill]:not([fill=none]), .page-container .wrap-navs .main-navigation .main-menu > li > a.active:not(.ot-sidebar-nav-disabled) svg circle[fill]:not([fill=none]), .page-container .wrap-navs .main-navigation .main-menu > li > a.active:not(.ot-sidebar-nav-disabled) svg rect[fill]:not([fill=none]) {
  fill: var(--brand) !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a.active:not(.ot-sidebar-nav-disabled) svg {
  /* Only stroke paths that are intended to be stroked */
}
.page-container .wrap-navs .main-navigation .main-menu > li > a.active:not(.ot-sidebar-nav-disabled) svg path[stroke]:not([stroke=none]), .page-container .wrap-navs .main-navigation .main-menu > li > a.active:not(.ot-sidebar-nav-disabled) svg circle[stroke]:not([stroke=none]), .page-container .wrap-navs .main-navigation .main-menu > li > a.active:not(.ot-sidebar-nav-disabled) svg rect[stroke]:not([stroke=none]) {
  stroke: var(--brand) !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li {
  /* closes > a */
}
.page-container .wrap-navs .main-navigation .main-menu > li.opacity-25 > a {
  opacity: 1 !important;
  pointer-events: none !important;
  font-style: italic !important;
  font-weight: 700 !important;
  color: #3f4246 !important;
  background: transparent !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li > a.ot-sidebar-nav-disabled {
  pointer-events: none !important;
  font-weight: normal !important;
  color: #dc3545 !important;
  background: transparent !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li {
  /* Sub-menu restyling */
}
.page-container .wrap-navs .main-navigation .main-menu > li .sub-menu {
  border-left: 2px solid var(--brand-bd) !important;
  margin: 0 0 2px 22px !important;
  padding: 0 !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li .sub-menu::before {
  display: none !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li .sub-menu li {
  padding: 0 !important;
  margin: 0 !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li .sub-menu li::before {
  display: none !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li .sub-menu li a {
  display: flex !important;
  align-items: center !important;
  height: 32px !important;
  padding: 0 12px !important;
  cursor: pointer;
  color: var(--t2) !important;
  font-size: 13px !important;
  white-space: nowrap;
  transition: background 80ms, color 80ms !important;
  text-decoration: none;
  border-radius: 0 !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li .sub-menu li a:hover {
  background: var(--raised) !important;
  color: var(--text) !important;
}
.page-container .wrap-navs .main-navigation .main-menu > li .sub-menu li a.active:not(.ot-sidebar-nav-disabled) {
  color: var(--brand) !important;
  font-weight: 500 !important;
  background: var(--brand-bg) !important;
}
.page-container .wrap-navs .main-navigation .main-menu {
  /* Admin section */
}
.page-container .wrap-navs .main-navigation .main-menu li.text-center {
  margin: 0 !important;
  padding: 0 10px !important;
}
.page-container .wrap-navs .main-navigation .main-menu li.text-center h4 {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--text) !important;
  text-align: center;
  padding: 8px 0 6px !important;
  margin: 0 !important;
  border-top: 1px solid var(--border);
}
.page-container {
  /* Main container follows sidebar expanded width */
}
.page-container .main-container {
  padding-left: 225px !important;
  transition: padding-left 180ms var(--ease) !important;
  max-width: 100vw !important;
}
.page-container .main-container .ot-content {
  width: calc(100vw - 225px) !important;
  max-width: calc(100vw - 225px) !important;
}
.page-container .main-container header {
  height: var(--hh) !important;
}

/* COLLAPSED state (.active = toggleMenu is true = collapsed) */
@media (min-width: 993px) {
  .page-container .wrap-navs.active {
    width: var(--sb) !important;
  }
  .page-container .wrap-navs.active .sidebar .fix-bar .main-logo .full-logo {
    display: none;
  }
  .page-container .wrap-navs.active .sidebar .fix-bar .main-logo .small-logo img {
    width: 16px !important;
  }
  .page-container .wrap-navs.active .s-organization {
    display: none !important;
  }
  .page-container .wrap-navs.active .main-navigation .main-menu > li > a span.text {
    opacity: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
  }
  .page-container .wrap-navs.active .main-navigation .main-menu > li > a i {
    display: none !important;
  }
  .page-container .wrap-navs.active .main-navigation .main-menu > li .sub-menu {
    max-height: 0 !important;
    margin: 0 !important;
    opacity: 0;
    overflow: hidden;
  }
  .page-container .wrap-navs.active .main-navigation .main-menu li.text-center {
    display: none !important;
  }
  .page-container {
    /* When sidebar is collapsed, main content takes full width */
  }
  .page-container .main-container.openedMenu {
    padding-left: var(--sb) !important;
    max-width: 100vw !important;
  }
  .page-container .main-container.openedMenu .ot-content {
    width: calc(100vw - var(--sb)) !important;
    max-width: calc(100vw - var(--sb)) !important;
  }
}
/* ── MAIN ── */
.main {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-width: 0;
  background: var(--bg);
  height: calc(100vh - 65px);
}

.main.page-content-dialog {
  height: 100vh;
}
.main.page-content-dialog .topbar {
  padding-right: 40px;
}

/* ── TOPBAR ── */
.topbar {
  height: var(--hh, 48px);
  background: var(--surface);
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}

.topbar-inner {
  height: 100%;
  display: flex;
  align-items: center;
  padding: 0 20px;
  gap: 14px;
  width: 100%;
}

.bc {
  display: flex;
  align-items: center;
  flex: 1;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: 0;
  padding-left: 0;
  min-width: 0;
}

.bc-s {
  color: var(--t3);
  cursor: pointer;
  transition: color 80ms;
  text-decoration: none;
}

.bc-s:hover {
  color: var(--brand);
}

.bc-d {
  color: var(--t4);
  margin: 0 8px;
  font-size: 14px;
  flex-shrink: 0;
}

.bc-cur {
  color: var(--text);
  font-weight: 600;
}

.bc-eq {
  color: var(--text);
  font-weight: 600;
  white-space: nowrap;
  text-decoration: none;
}

.bc-link {
  cursor: pointer;
  transition: opacity 80ms;
}

.bc-link:hover {
  color: var(--text);
  opacity: 0.8;
}

.bc-tail {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bc-eq.bc-current {
  color: #266df0;
}

.tb-r {
  display: flex;
  align-items: center;
  gap: 7px;
}

.btn-dv {
  height: 32px;
  padding: 0 10px;
  border-radius: 6px;
  border: 1px solid var(--border-strong);
  background: var(--surface);
  color: var(--text);
  font-family: var(--font);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  transition: all 100ms var(--ease);
  white-space: nowrap;
}

.btn-dv.icon-only {
  width: 32px;
  min-width: 32px;
  padding: 0;
}

.btn-dv:hover {
  background: var(--raised);
  border-color: #bbb;
}

.btn-dv:active {
  transform: scale(0.98);
}

.btn-dv:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  box-shadow: none;
}

.btn-dv:disabled:hover {
  background: var(--surface);
  border-color: var(--border-strong);
}

.btn-dv.primary {
  background: var(--brand);
  color: #fff;
  border-color: var(--brand);
  box-shadow: 0 1px 3px rgba(10, 78, 244, 0.25);
}

.btn-dv.primary:hover {
  background: var(--brand-dk);
  box-shadow: 0 2px 6px rgba(10, 78, 244, 0.3);
}

.btn-dv.xs {
  height: 28px;
  padding: 0 10px;
  font-size: 12px;
  border-radius: 5px;
}

.main-inner {
  display: flex;
  flex: 1;
  overflow: hidden;
  width: 100%;
  background: var(--surface);
}

.content {
  display: flex;
  flex: 1;
  overflow: hidden;
  min-height: 0;
}

.lease-detail-layout {
  min-height: 0;
}

.lease-detail-layout {
  display: flex;
  flex: 1;
  height: 100%;
}

.lease-detail-layout > .main-inner {
  height: 100%;
  min-height: 0;
}

.lease-tenant-detail-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  background: var(--surface);
}

.lease-tenant-detail-tabs {
  flex-shrink: 0;
}

.lease-tenant-tab-body {
  display: flex;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.lease-tenant-tab-outlet {
  display: flex;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  width: 100%;
}

.lease-tenant-tab-outlet > .tab-content {
  display: flex;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  width: 100%;
}

.lease-tenant-tab-outlet > .tab-content > .tab-pane {
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.lease-tenant-tab-outlet > .tab-content > .active {
  display: flex;
  flex: 1;
  min-height: 0;
}

.tab-content > .active {
  width: 100%;
}

/* ── LEFT PANEL ── */
.lp {
  width: 340px;
  flex-shrink: 0;
  background: var(--surface);
  border-right: 1px solid var(--border);
  overflow-y: auto;
  overflow-x: hidden;
  height: 100%;
}

.lp::-webkit-scrollbar {
  width: 6px;
}

.lp::-webkit-scrollbar-track {
  background: var(--raised);
  border-left: 1px solid var(--border);
}

.lp::-webkit-scrollbar-thumb {
  background: var(--border-strong);
  border-radius: 4px;
}

.lp::-webkit-scrollbar-thumb:hover {
  background: var(--t3);
}

.lp-photos {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px;
  background: var(--border);
  height: 172px;
  flex-shrink: 0;
  position: relative;
}

.lp-photo {
  background: var(--raised);
  transition: filter 200ms;
  cursor: pointer;
}

.lp-photo:hover {
  filter: brightness(0.92);
}

.lp-photos-overlay {
  position: absolute;
  bottom: 8px;
  right: 8px;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  padding: 3px 10px;
  border-radius: 4px;
  backdrop-filter: blur(4px);
  pointer-events: none;
}

.kpis {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: var(--border);
  border: 1px solid var(--border);
  border-radius: 6px;
  overflow: hidden;
  margin-bottom: 14px;
}

.kpi {
  background: var(--surface);
  padding: 10px 12px;
  transition: background 80ms;
  cursor: pointer;
}

.kpi:hover {
  background: var(--hover);
}

.kv {
  font-size: 22px;
  font-weight: 600;
  font-family: var(--font);
  letter-spacing: -0.03em;
  line-height: 1;
}

.kl {
  font-size: 12px;
  color: var(--t3);
  margin-top: 4px;
}

.kv.cb {
  color: var(--brand);
}

.kv.cg {
  color: var(--green);
}

.kv.ca {
  color: var(--amber);
}

.kv.cr {
  color: var(--red);
}

.fb {
  margin-bottom: 14px;
}

.fb-lbl {
  font-size: 12px;
  font-weight: 600;
  color: var(--t3);
  margin-bottom: 6px;
}

.fr {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 5px 0;
  border-bottom: 1px solid var(--border);
}

.fr:last-child {
  border-bottom: none;
}

.fk {
  font-size: 13px;
  color: var(--t3);
  padding: 5px 0;
}

.fv {
  font-size: 13px;
  color: var(--text);
  font-family: var(--font);
  font-weight: 500;
  text-align: right;
  margin-right: 20px;
}

.fv.ft {
  font-family: var(--font);
}

.fv.fl {
  color: var(--brand);
  font-family: var(--font);
  cursor: pointer;
  transition: color 80ms;
}

.fv.fl:hover {
  text-decoration: underline;
}

/* ── COLLAPSIBLE SECTIONS ── */
.lp-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 0 14px;
  border-top: 1px solid var(--border);
  margin-top: 2px;
  cursor: pointer;
  user-select: none;
  transition: background 80ms;
}

.lp-section-lbl {
  font-size: 12px;
  font-weight: 600;
  color: var(--t3);
}

.lp-section-chevron {
  width: 14px;
  height: 14px;
  color: var(--t3);
  transition: transform 200ms var(--ease);
  flex-shrink: 0;
}

.lp-section-head.collapsed .lp-section-chevron {
  transform: rotate(-90deg);
}

.lp-section-body {
  overflow: hidden;
  transition: max-height 300ms var(--ease), opacity 180ms;
  opacity: 1;
  max-height: 2000px;
}

.lp-section-body.collapsed {
  max-height: 0 !important;
  opacity: 0;
}

.cf-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 5px 0;
  border-bottom: 1px solid var(--border);
}

.cf-row:last-child {
  border-bottom: none;
}

.cf-key {
  font-size: 13px;
  color: var(--t3);
}

.cf-val {
  font-size: 13px;
  color: var(--text);
  text-align: right;
  max-width: 55%;
  word-break: break-all;
}

.cf-tag {
  display: inline-block;
  font-size: 11px;
  font-weight: 500;
  padding: 2px 7px;
  border-radius: 12px;
  background: var(--raised);
  color: var(--t2);
  border: 1px solid var(--border);
}

.log-item {
  display: flex;
  gap: 10px;
  padding: 8px 4px;
  border-bottom: 1px solid var(--border);
  transition: background 80ms;
  border-radius: 4px;
  margin: 0 -4px;
}

.log-item:hover {
  background: var(--hover);
}

.log-item:last-child {
  border-bottom: none;
}

.log-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--brand-bd);
  flex-shrink: 0;
  margin-top: 4px;
}

.log-dot.green {
  background: #86efac;
}

.log-dot.amber {
  background: #fcd34d;
}

.log-dot.red {
  background: #fca5a5;
}

.log-body {
  flex: 1;
  min-width: 0;
}

.log-action {
  font-size: 13px;
  color: var(--text);
  line-height: 1.4;
}

.log-meta {
  font-size: 12px;
  color: var(--t3);
  margin-top: 2px;
}

/* ── RIGHT PANEL ── */
.rp {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  min-width: 0;
  display: flex;
  flex-direction: column;
  background: #ececec;
  position: relative;
}

/* ── ANCHOR NAV ── */
.anav {
  position: sticky;
  top: 0;
  z-index: 3;
  background: var(--surface);
  border-bottom: 1px solid var(--border);
  padding: 0 20px;
  overflow-x: auto;
  flex-shrink: 0;
}

.anav::-webkit-scrollbar {
  height: 0;
}

.ap {
  height: 36px;
  border: none;
  background: none;
  font-family: var(--font);
  font-size: 13px;
  font-weight: 500;
  color: var(--t3);
  cursor: pointer;
  padding: 0 16px;
  position: relative;
  transition: color 80ms;
  white-space: nowrap;
  border-radius: 0;
  outline: none;
}

.ap:hover {
  color: var(--t2);
}

.ap.on {
  color: var(--brand);
  background: none;
}

.ap.on::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 8px;
  right: 8px;
  height: 2px;
  background: var(--brand);
  border-radius: 1px;
}

.ap-badge {
  font-size: 11px;
  font-family: var(--font);
  color: var(--t3);
  background: var(--raised);
  border: 1px solid var(--border);
  padding: 0 5px;
  border-radius: 3px;
  margin-left: 6px;
  vertical-align: middle;
  font-weight: 500;
}

.ap.on .ap-badge {
  background: var(--brand-bg);
  color: var(--brand);
  border-color: var(--brand-bd);
}

.property-left-anav {
  margin: 0 -12px;
  padding: 0 12px;
}

.property-left-target {
  scroll-margin-top: 56px;
}

.detail-left-anav {
  margin: -12px -12px 12px;
  padding: 0 12px;
}

.detail-left-target {
  scroll-margin-top: 56px;
}

/* ── SECTIONS ── */
.sections {
  padding: 10px 12px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.sections > app-contact-info-column-2,
.sections > app-contact-info-column-3,
.sections > app-account-info-column-2,
.sections > app-job-request-estimate-related,
.sections > app-form-detail-submissions,
.sections > app-property-lease-charge,
.sections > app-property-lease-entry,
.sections > app-lease-charge,
.sections > app-lease-entry,
.sections > app-lease-invoice,
.sections > app-lease-jobrequest {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.sections app-contact-info-column-2 .ds,
.sections app-contact-info-column-3 .ds,
.sections app-account-info-column-2 .ds,
.sections app-job-request-estimate-related .ds,
.sections app-form-detail-submissions .ds,
.sections app-property-lease-charge .ds,
.sections app-property-lease-entry .ds,
.sections app-lease-charge .ds,
.sections app-lease-entry .ds,
.sections app-lease-invoice .ds,
.sections app-lease-jobrequest .ds {
  margin-bottom: 0 !important;
}

.ds {
  background: var(--surface);
  border: 1px solid #d4d4d4;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
  transition: box-shadow 150ms var(--ease);
  scroll-margin-top: 52px;
}

.ds:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.ds-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  height: 44px;
  border-bottom: 1px solid #e0e0e0;
  background: #fff;
  border-left: 3px solid var(--brand);
}

.dh-l {
  display: flex;
  align-items: center;
  gap: 8px;
}

.ds-title {
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 0;
}

.ds-n {
  font-size: 11px;
  font-family: var(--font);
  color: var(--t3);
  background: var(--raised);
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 2px 7px;
  font-weight: 500;
  display: inline-block;
  line-height: 1;
}

.dh-r {
  display: flex;
  align-items: center;
  gap: 6px;
}

.slnk {
  font-size: 13px;
  color: var(--t3);
  background: none;
  border: none;
  cursor: pointer;
  font-family: var(--font);
  padding: 4px 8px;
  border-radius: 4px;
  transition: all 80ms;
}

.slnk:hover {
  color: var(--t2);
  background: var(--raised);
}

/* ── EMPTY TILE ── */
.ds-empty {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 0 14px;
  height: 48px;
  border: 1.5px dashed #c8c8c8;
  border-radius: 6px;
  cursor: pointer;
  transition: all 120ms var(--ease);
  background: #fff;
  scroll-margin-top: 52px;
}

.ds-empty:hover {
  background: var(--brand-bg);
  border-color: var(--brand-bd);
  border-style: solid;
}

.ds-empty:hover .de-lbl,
.ds-empty:hover .de-add,
.ds-empty:hover .de-icon {
  color: var(--brand);
}

.event-private-detail app-event-info-schedules,
.event-private-detail app-event-info-tickets,
.event-private-detail app-event-info-registrations,
.event-private-detail app-event-info-attendees,
.event-private-detail app-event-info-accounts,
.event-private-detail app-event-info-submissions {
  display: block;
}

.event-private-detail .filter-wrap {
  margin-bottom: 12px;
}

.event-private-detail .search-box {
  margin-top: 0;
}

.event-private-detail .search-box .cf {
  width: 34px;
  min-width: 34px;
  height: 32px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.event-private-detail .search-box .cf svg {
  width: 20px;
  height: 20px;
}

.event-private-detail .search-box .cf i {
  padding: 0;
  line-height: 1;
  font-size: 14px;
  color: #0d0d0d;
}

.event-private-detail .ds-empty {
  width: 100%;
}

.event-private-detail .bottom-pagination {
  position: static;
  left: auto;
  bottom: auto;
  width: 100%;
  padding: 12px 0 0;
  background: transparent;
}

.event-private-detail .bottom-pagination .mf-container {
  width: 100%;
  max-width: none;
  padding: 0;
}

@media (max-width: 1199.98px) {
  .event-private-detail .lp {
    width: 360px !important;
  }
}
@media (max-width: 991.98px) {
  .event-private-detail {
    height: auto;
    min-height: calc(100vh - 65px);
    overflow: visible;
  }
  .event-private-detail .topbar {
    height: auto;
  }
  .event-private-detail .topbar-inner {
    min-height: var(--hh, 48px);
    flex-wrap: wrap;
    align-items: flex-start;
    padding: 8px 12px;
  }
  .event-private-detail .bc {
    flex: 0 0 100%;
    width: 100%;
    font-size: 14px;
  }
  .event-private-detail .tb-r {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 2px;
  }
  .event-private-detail .main-inner {
    display: block;
    overflow: visible;
  }
  .event-private-detail .lp {
    width: 100% !important;
    height: auto;
    max-height: none;
    overflow: visible;
    border-right: 0;
    border-bottom: 1px solid var(--border);
  }
  .event-private-detail .rp {
    display: block;
    overflow: visible;
    min-height: 0;
  }
  .event-private-detail .anav {
    padding: 0 12px;
  }
  .event-private-detail .sections {
    padding: 10px 10px 16px;
  }
  .event-private-detail .ds-head {
    padding: 0 12px;
  }
  .event-private-detail .search-box {
    width: 100%;
    justify-content: flex-start;
  }
  .event-private-detail .filter-wrap,
  .event-private-detail .ph-left {
    width: 100%;
    max-width: 100%;
  }
  .event-private-detail .search-box .wrap-input {
    flex: 1;
    min-width: 0;
  }
  .event-private-detail .search-box .wrap-input .form-control {
    width: 100%;
  }
  .event-private-detail .bottom-pagination .pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    text-align: right;
  }
  .event-private-detail .bottom-pagination .pagination .total,
  .event-private-detail .bottom-pagination .pagination .page-item,
  .event-private-detail .bottom-pagination .pagination .label-space,
  .event-private-detail .bottom-pagination .pagination .wrap-select {
    margin: 0;
  }
}
@media (max-width: 575.98px) {
  .event-private-detail .topbar-inner {
    gap: 8px;
  }
  .event-private-detail .btn-dv span {
    display: none;
  }
  .event-private-detail .bc-d,
  .event-private-detail .bc-eq:not(.bc-tail):not(.bc-link) {
    display: none;
  }
  .event-private-detail .ds-head {
    height: auto;
    min-height: 44px;
    gap: 8px;
    padding-top: 6px;
    padding-bottom: 6px;
  }
  .event-private-detail .dh-l {
    min-width: 0;
  }
  .event-private-detail .ds-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .event-private-detail .bottom-pagination .pagination {
    justify-content: flex-start;
    text-align: left;
  }
}
.de-lbl {
  font-size: 13px;
  font-weight: 500;
  color: var(--t3);
  flex: 1;
  transition: color 120ms;
  margin-bottom: 0;
}

.de-n {
  font-size: 11px;
  font-family: var(--font);
  color: var(--t4);
  background: var(--raised);
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 2px 7px;
  font-weight: 500;
  line-height: 1;
  display: inline-block;
}

.de-add {
  font-size: 13px;
  color: var(--t4);
  font-weight: 500;
  transition: color 120ms;
}

.de-icon {
  color: var(--t4);
  flex-shrink: 0;
  transition: color 120ms;
}

/* ── TABLE ── */
.t {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 0;
}

.t thead th {
  padding: 0 12px;
  height: 34px;
  font-size: 12px;
  font-weight: 600;
  color: var(--t3);
  text-align: left;
  background: #fafafa;
  border-bottom: 1px solid #e0e0e0;
  white-space: nowrap;
  vertical-align: middle;
  border-top: none;
}

.t thead th:first-child {
  padding-left: 16px;
}

.t tbody tr {
  border-bottom: 1px solid var(--border);
  cursor: pointer;
  transition: background 50ms;
}

.t tbody tr:last-child {
  border-bottom: none;
}

.t tbody tr:hover {
  background: #f5f7fa;
}

.t tbody tr:hover .ra {
  opacity: 1;
}

.t td {
  padding: 0 12px;
  height: 46px;
  font-size: 13px;
  color: var(--text);
  vertical-align: middle;
  border-top: none;
}

.t td:first-child {
  padding-left: 16px;
}

.t td.mo {
  font-family: var(--font);
  font-size: 13px;
  color: var(--t2);
  font-weight: 500;
}

.t td.dim {
  color: var(--t3);
}

.t td.lnk {
  color: var(--brand);
  cursor: pointer;
  transition: color 80ms;
  text-decoration: none;
}

.t td.lnk:hover {
  text-decoration: underline;
  color: var(--brand-dk);
}

.ra {
  opacity: 1;
  display: flex;
  gap: 3px;
  transition: opacity 80ms;
  justify-content: flex-end;
}

.ra-b {
  width: 26px;
  height: 26px;
  border: 1px solid var(--border);
  border-radius: 4px;
  background: var(--surface);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--t3);
  font-size: 13px;
  transition: all 80ms var(--ease);
}

.ra-b:hover {
  background: var(--raised);
  color: var(--text);
  border-color: var(--border-strong);
}

/* ── BADGE ── */
.badge-dv {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 500;
  padding: 3px 9px;
  border-radius: 4px;
  white-space: nowrap;
}

.badge-dv.brand {
  background: var(--brand-bg);
  color: var(--brand);
}

.badge-dv.green {
  background: var(--green-bg);
  color: var(--green);
}

.badge-dv.amber {
  background: var(--amber-bg);
  color: var(--amber);
}

.badge-dv.red {
  background: var(--red-bg);
  color: var(--red);
}

.badge-dv.neutral {
  background: var(--raised);
  color: var(--t2);
  border: 1px solid var(--border);
}

/* ── KANBAN STEP PILLS ── */
.pipe {
  display: flex;
  align-items: center;
  gap: 2px;
}

.ps {
  font-size: 11px;
  padding: 3px 7px;
  border-radius: 3px;
  border: 1px solid var(--border);
  background: var(--raised);
  color: var(--t4);
  white-space: nowrap;
  font-weight: 500;
  transition: all 80ms var(--ease);
}

.ps.done {
  background: var(--brand-bg);
  border-color: var(--brand-bd);
  color: var(--brand);
  opacity: 0.55;
}

.ps.on {
  background: var(--brand);
  color: #fff;
  border-color: var(--brand);
  font-weight: 600;
  opacity: 1;
  box-shadow: 0 1px 3px rgba(10, 78, 244, 0.25);
}

/* ── STATUS DOT ── */
.dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  display: inline-block;
  margin-right: 7px;
  flex-shrink: 0;
  vertical-align: middle;
  background: var(--brand);
}

.dot.green {
  background: #16a34a;
}

.dot.amber {
  background: #d97706;
}

.dot.red {
  background: #dc2626;
}

/* ── MONTH DIVIDER ── */
.mth {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  height: 34px;
  background: #fafafa;
  border-bottom: 1px solid #e0e0e0;
  font-size: 12px;
  font-weight: 600;
  color: var(--t2);
}

.mth-tot {
  font-family: var(--font);
  font-weight: 500;
  font-size: 13px;
  color: var(--t2);
}

.mth-tot.warn {
  color: var(--red);
}

/* ── UNIT GRID ── */
.ug {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
  gap: 1px;
  background: #e0e0e0;
}

.uc {
  background: var(--surface);
  padding: 12px 14px;
  cursor: pointer;
  transition: all 80ms var(--ease);
}

.uc:hover {
  background: #f5f7fa;
}

.uc-n {
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 3px;
  font-family: var(--font);
}

.uc-m {
  font-size: 12px;
  color: var(--t3);
  line-height: 1.6;
}

.uc-st {
  font-size: 12px;
  font-weight: 600;
  margin-top: 4px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.uc-st::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}

.uc-st.occ {
  color: var(--green);
}

.uc-st.occ::before {
  background: var(--green);
}

.uc-st.vac {
  color: var(--amber);
}

.uc-st.vac::before {
  background: var(--amber);
}

.footer-copytext {
  width: 100%;
  padding: 20px;
  margin-top: 40px;
  border-top: 1px solid #ECEDEE;
  color: #383c40;
}

.fs-10px {
  font-size: 10px !important;
}

.fs-11px {
  font-size: 11px !important;
}

.fs-12px {
  font-size: 12px !important;
}

.fs-13px {
  font-size: 13px !important;
}

.fs-14px {
  font-size: 14px !important;
}

.fs-15px {
  font-size: 15px !important;
}

.fs-16px {
  font-size: 16px !important;
}

.fs-16px {
  font-size: 16px !important;
}

.fs-17px {
  font-size: 17px !important;
}

.fs-18px {
  font-size: 18px !important;
}

.fs-19px {
  font-size: 19px !important;
}

.fs-20px {
  font-size: 20px !important;
}

.fs-21px {
  font-size: 21px !important;
}

.fs-22px {
  font-size: 22px !important;
}

.fs-23px {
  font-size: 23px !important;
}

.fs-24px {
  font-size: 24px !important;
}

@media (min-width: 1200px) {
  .border-xl-0 {
    border: none !important;
  }
}
@media (min-width: 576px) {
  .border-sm-0 {
    border: none !important;
  }
}
.btn-svg {
  background-color: transparent;
  border-color: #696969;
}
.btn-svg svg rect,
.btn-svg svg path {
  stroke: #696969;
}
.btn-svg:hover, .btn-svg.active {
  border-color: #266DF0;
}
.btn-svg:hover svg rect,
.btn-svg:hover svg path, .btn-svg.active svg rect,
.btn-svg.active svg path {
  stroke: #266DF0;
}

.form-control.form-control-disable {
  background: #f0f0f0;
  cursor: not-allowed;
}

.form-primary .form-label {
  font-weight: 500;
  display: table;
}
.form-primary .form-select.form-control-select,
.form-primary .form-control.form-control-select {
  min-height: calc(1.5em + 0.75rem + var(--mo-border-width) * 2);
  padding: 0.65rem 1rem;
  height: auto;
}
.form-primary .form-select.small-control,
.form-primary .form-control.small-control {
  min-height: calc(1.5em + 0.5rem + var(--mo-border-width) * 2);
  padding: 0.5rem 0.8rem;
  font-size: 13px;
}
.form-primary .form-select--small {
  font-size: 12px;
  padding: 0.5rem 22px 0.5rem 8px;
  background-position: right 2px center;
}
.form-primary textarea.form-control {
  height: auto;
}
.form-primary textarea.auto-height {
  overflow: hidden !important;
  resize: none !important;
  box-sizing: border-box;
  line-height: 1.5;
  padding: 1rem;
  box-sizing: border-box;
}
.form-primary .wrap-upload-file {
  background: #FFFFFF;
  width: 100%;
  padding: 1rem 0;
  text-align: center;
  cursor: pointer;
  /* Greyscale/Black 30 */
  border: 1px dashed #ECEDEE;
  border-radius: 8px;
  color: #adadad;
}
.form-primary .wrap-upload-file span {
  display: block;
}

.form-select.small-control {
  padding: 0.5rem 1rem;
}

.form-primary .ng-select .ng-select-container {
  min-height: 41.19px;
}

.form-control-area {
  border: 1px solid #cbd5e1 !important;
  padding: 10px;
  border-radius: 5px;
}
.form-control-area.wrap-textarea-auto-height {
  background: #fff;
}

.chk-list-box .form-control-area {
  border: none !important;
}

.form-primary .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder {
  top: 10px;
}

.ng-select.ng-select-single.small-control-select .ng-select-container {
  height: 31px !important;
}
.ng-select.ng-select-single .ng-select-container {
  height: 41px !important;
  min-height: auto;
  min-width: 240px;
}
.ng-select.ng-select-single.form-select-large .ng-select-container {
  height: 41px !important;
  min-width: 150px;
}
.ng-select.ng-select-single.form-select-large .ng-select-container .ng-value-container .ng-input {
  top: 10px !important;
}

/*Custom-radio button*/
.custom-radio {
  display: block;
  position: relative;
  padding-left: 25px;
  margin-bottom: 12px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.custom-radio input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}
.custom-radio .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 19px;
  width: 19px;
  background-color: #eee;
  border-radius: 50%;
}
.custom-radio .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  top: 4px;
  left: 4px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: white;
}
.custom-radio:hover input ~ .checkmark {
  background-color: #ccc;
}
.custom-radio input:checked ~ .checkmark {
  background-color: #2196f3;
}
.custom-radio input:checked ~ .checkmark:after {
  display: block;
}

/*End Checkbox-Radio*/
.bg-grey {
  background-color: #f4f4f4;
}

.gauge-chart .reading-block {
  overflow: visible;
}
.gauge-chart .reading-block .gauge-info {
  position: relative;
  margin-top: -15px;
  line-height: 1;
}
.gauge-chart .reading-block .gauge-info .gauge-icon {
  position: absolute;
  left: 0;
  right: 0;
  top: -30px;
}
.gauge-chart .reading-block .gauge-info .gauge-info--1 {
  font-weight: 500;
  font-size: 14px;
  color: #141516;
}
.gauge-chart .reading-block .gauge-info .gauge-info--2 {
  color: #266DF0;
  font-weight: 500;
  font-size: 34px;
}
.gauge-chart .reading-block .gauge-info .gauge-info--3 {
  font-size: 14px;
}
.gauge-chart .reading-block .gauge-info .gauge-info--4 {
  font-size: 12px;
  font-weight: normal;
}
.gauge-chart .reading-block .gauge-info .gauge-info--5 {
  color: #f54949;
}
.gauge-chart .reading-block .gauge-info .gauge-info--6 {
  color: #046e04;
}

.apexcharts-toolbar {
  z-index: 3 !important;
}

.review-items .item {
  margin-top: 1.5rem;
  margin-bottom: 1.125rem;
  display: flex;
  flex-direction: row;
}
.review-items .item .item__avatar {
  width: 5.375rem;
}
.review-items .item .item__avatar img {
  border-radius: 50% !important;
  width: 100%;
  height: auto;
}
.review-items .item .item__avatar .item-time {
  text-align: center;
  margin-top: 0.25rem;
  color: #696969;
}
.review-items .item .item__content {
  width: calc(100% - 0px);
  padding-left: 1rem;
  border-bottom: 1px solid #ECEDEE;
}
.review-items .item .item__content .author__name {
  font-size: 1rem;
  font-weight: 600;
  color: #383c40;
  margin-bottom: 0.25rem;
}
.review-items .item .item__content .content-text {
  font-size: 0.9rem;
  color: #383c40;
}
.review-items .item.item-inner {
  margin-top: 1rem;
  margin-bottom: 0;
  border-top: 1px solid #ebebeb;
  padding-top: 1rem;
}

.review-ratings {
  list-style-type: none;
  direction: rtl;
  text-align: left;
  margin-bottom: 0;
}
.review-ratings .star {
  position: relative;
  line-height: 20px;
  display: inline-block;
  transition: color 0.2s ease;
  color: #696969;
  margin-right: 0.4rem;
}
.review-ratings .star:before {
  content: "★";
  width: 24px;
  height: 24px;
  font-size: 1.2rem;
}
.review-ratings .star:hover,
.review-ratings .star.selected,
.review-ratings .star:hover ~ .star,
.review-ratings .star.selected ~ .star {
  transition: color 0.8s ease;
  color: #ff9416;
}

.rating-summary {
  text-align: center;
  margin-bottom: 30px;
}

.rating-number {
  font-size: 48px;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0;
}

.rating-breakdown {
  max-width: 400px;
  margin: 0 auto;
}

.rating-row {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}

.rating-label {
  width: 20px;
  font-size: 14px;
  color: #6c757d;
}

.rating-bar {
  flex: 1;
  height: 8px;
  background: #f1f3f4;
  border-radius: 4px;
  margin: 0 10px;
  overflow: hidden;
}

.rating-fill {
  height: 100%;
  background: #ffc107;
  border-radius: 4px;
}

.review-filters {
  display: flex;
  gap: 15px;
  margin-bottom: 30px;
}

.filter-dropdown {
  border: 1px solid #e9ecef;
  border-radius: 8px;
  padding: 8px 12px;
  background: white;
  color: #6c757d;
  font-size: 14px;
}

.wider-tooltip {
  width: 420px;
}
.wider-tooltip .tooltip-inner {
  max-width: fit-content;
  font-family: monospace;
  font-size: 11px;
}

.form-switch.form-switch-lg .form-check-input {
  margin-right: 1.5rem;
  transform: scale(1.5);
  transform-origin: left center;
  cursor: pointer;
}

.invalid-feedback {
  font-size: 12px;
  font-weight: normal;
}

.alert-danger {
  --mo-alert-color: var(--mo-danger);
}

.radar-map {
  width: 100%;
  border: 1px solid var(--border-strong);
  border-radius: 8px;
  overflow: hidden;
  background: var(--surface);
}

.discover-radar-map {
  min-height: 220px;
}

.empty-state {
  padding: 16px;
  border: 1px dashed var(--border-strong);
  border-radius: 8px;
  color: var(--t4);
  background: #fbfdff;
}

.drag-handle {
  color: #444;
  cursor: move;
}
.drag-handle .handle {
  margin-right: 5px;
}

a.drag-handle {
  color: #444;
  cursor: move;
}

.cdk-drag .cdk-drag-handle.drag-handle {
  visibility: visible;
  padding: 0;
}

.drop-area {
  border: solid 1px #ccc;
  overflow: hidden;
  display: block;
  border-radius: 6px;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.drag-item {
  border: 1px solid #e0e0e0;
  border-radius: 7px;
  background: #fff;
}

/* Animate items as they're being sorted. */
.cdk-drop-list-dragging .cdk-drag {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}

.cdk-drag-preview {
  box-sizing: border-box;
  border-radius: 4px;
  box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);
  padding: 4px;
}

.cdk-drag-placeholder {
  opacity: 0;
}

.cdk-drag-animating {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}

.drop-area.cdk-drop-list-dragging .drag-item:not(.cdk-drag-placeholder) {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}

.drag-box {
  width: 200px;
  height: 200px;
  padding: 10px;
  box-sizing: border-box;
  border: solid 1px #ccc;
  color: rgba(0, 0, 0, 0.87);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: #fff;
  border-radius: 4px;
  position: relative;
  z-index: 1;
  transition: box-shadow 200ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}

.drag-box:active {
  box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);
}

.drag-box-handle {
  position: absolute;
  top: 10px;
  right: 10px;
  color: #ccc;
  cursor: move;
  width: 24px;
  height: 24px;
}

.mat-mdc-form-field .mdc-notched-outline__leading,
.mat-mdc-form-field .mdc-notched-outline__trailing {
  border-color: #dee2e6 !important;
}
.mat-mdc-form-field .mat-mdc-form-field-flex {
  height: 34px;
}

.mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper {
  padding-left: 8px;
}

.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mat-mdc-form-field-infix {
  color: var(--mo-body-color);
  padding: 6px 0;
  height: 34px;
  min-height: 34px;
}

.ngx-mat-timepicker .mat-mdc-form-field-infix {
  min-width: 20px !important;
}

.mat-mdc-form-field-infix {
  width: auto !important;
  min-width: 50px !important;
}

.mat-mdc-icon-button.mat-mdc-button-base {
  color: #666;
  width: 34px;
  height: 34px;
  padding: 6px;
}

.form-primary .mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper {
  background: #fff;
}
.form-primary .mat-mdc-form-field .mat-mdc-form-field-flex {
  height: 41px;
}
.form-primary .mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper {
  padding-left: 1rem;
}
.form-primary .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mat-mdc-form-field-infix {
  font-size: 14px;
  padding: 10px 0;
  height: 41px;
  min-height: 41px;
  color: var(--mo-body-color);
}
.form-primary .mat-mdc-icon-button.mat-mdc-button-base {
  width: 41px;
  height: 41px;
  padding: 8px;
}

.text-primary .mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control {
  color: #266DF0;
}

.mat-mdc-form-field-hint-wrapper,
.mat-mdc-form-field-error-wrapper {
  padding: 0 6px !important;
}

mat-form-field.fit-content .mat-select-placeholder {
  min-width: 180px;
}
mat-form-field.fit-content .mat-form-field-infix {
  width: fit-content;
  min-width: fit-content;
}
mat-form-field.fit-content .mat-form-field {
  width: auto !important;
}
mat-form-field.fit-content .mat-select-value {
  max-width: 100%;
  width: auto;
}

.mat-mdc-option .mdc-list-item__primary-text {
  white-space: nowrap !important;
}

::ng-deep .my-custom-panel-class.mat-select-panel {
  max-width: fit-content;
}

.mat-select-value {
  max-width: max-content !important;
}

.mat-form-field-infix {
  width: fit-content !important;
}

.cdk-overlay-pane {
  width: fit-content !important;
}

.mat-select-panel {
  max-width: unset !important;
}

.mat-mdc-form-field-icon-suffix {
  display: flex;
}

.mat-form-field--date-only {
  max-width: 160px;
  width: 100%;
}

/* Custom CSS for mat-form-field to resemble Bootstrap 5 form fields */
.mat-form-field-bootstrap {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.mat-form-field-bootstrap:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.mat-form-field-bootstrap::placeholder {
  color: #6c757d;
  opacity: 1;
}
.mat-form-field-bootstrap:disabled, .mat-form-field-bootstrap[disabled] {
  background-color: #e9ecef;
  opacity: 1;
}
.mat-form-field-bootstrap:read-only, .mat-form-field-bootstrap[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

/* Custom CSS for smaller mat-form-field */
.mat-form-field-small {
  display: block;
  width: 100%;
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.2rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.mat-form-field-small:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.1rem rgba(0, 123, 255, 0.25);
}
.mat-form-field-small::placeholder {
  color: #6c757d;
  opacity: 1;
}
.mat-form-field-small:disabled, .mat-form-field-small[disabled] {
  background-color: #e9ecef;
  opacity: 1;
}
.mat-form-field-small:read-only, .mat-form-field-small[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}
.mat-form-field-small {
  /* Additional styles for smaller appearance */
}
.mat-form-field-small .mat-form-field-label {
  font-size: 0.75rem;
}
.mat-form-field-small .mat-input-element {
  font-size: 0.875rem;
  padding: 0.25rem 0.5rem;
}
.mat-form-field-small .mat-form-field-underline {
  height: 1px;
}

.ot-time-picker .time-icon {
  color: rgba(0, 0, 0, 0.54);
  cursor: pointer;
  font-size: 20px;
}
.ot-time-picker .clear-button {
  width: 28px;
  height: 28px;
  line-height: 28px;
}
.ot-time-picker .clear-button .mat-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  line-height: 18px;
}

.ot-time-picker-panel {
  max-height: 256px !important;
}
.ot-time-picker-panel .mat-mdc-option {
  height: 40px;
  line-height: 40px;
  font-size: 14px;
  min-height: 40px;
}

.ot-tz-datetime-picker > .d-flex {
  flex-wrap: nowrap;
  align-items: flex-start;
}
.ot-tz-datetime-picker .ot-date-field,
.ot-tz-datetime-picker .ot-time-field {
  flex: 0 0 auto !important;
}
.ot-tz-datetime-picker .ot-date-field .mat-mdc-text-field-wrapper,
.ot-tz-datetime-picker .ot-time-field .mat-mdc-text-field-wrapper {
  overflow: visible;
}
.ot-tz-datetime-picker .ot-date-field .mat-mdc-form-field-flex,
.ot-tz-datetime-picker .ot-time-field .mat-mdc-form-field-flex {
  display: flex;
  align-items: center;
}
.ot-tz-datetime-picker .ot-date-field .mat-mdc-form-field-infix,
.ot-tz-datetime-picker .ot-time-field .mat-mdc-form-field-infix {
  min-width: 70px !important;
  max-width: 100px !important;
  width: auto !important;
  flex: 0 1 auto;
}
.ot-tz-datetime-picker .ot-date-field .mat-mdc-form-field-icon-suffix,
.ot-tz-datetime-picker .ot-time-field .mat-mdc-form-field-icon-suffix {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  padding-right: 4px;
}
.ot-tz-datetime-picker .ot-date-field {
  width: 145px !important;
  max-width: 145px !important;
}
.ot-tz-datetime-picker .ot-date-field .mat-datepicker-toggle .mat-mdc-icon-button {
  width: 32px;
  height: 32px;
  padding: 4px;
}
.ot-tz-datetime-picker .ot-time-field {
  width: 155px !important;
  max-width: 155px !important;
}
.ot-tz-datetime-picker .ot-time-field .clear-button,
.ot-tz-datetime-picker .ot-time-field .timezone-button {
  width: 28px;
  height: 28px;
  padding: 0;
  flex-shrink: 0;
}
.ot-tz-datetime-picker .ot-time-field .clear-button .mat-icon,
.ot-tz-datetime-picker .ot-time-field .timezone-button .mat-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  line-height: 18px;
}
.ot-tz-datetime-picker .ot-time-field .clear-button i,
.ot-tz-datetime-picker .ot-time-field .timezone-button i {
  font-size: 16px;
  color: rgba(0, 0, 0, 0.54);
}
.ot-tz-datetime-picker .ot-time-field .timezone-button:hover:not(:disabled) i {
  color: rgba(0, 0, 0, 0.87);
}
.ot-tz-datetime-picker .ot-time-field-anchor {
  position: relative;
  flex: 0 0 auto;
  width: 155px;
  max-width: 155px;
}
.ot-tz-datetime-picker .ot-time-field-anchor .ot-time-field {
  width: 100% !important;
  max-width: 100% !important;
}
.ot-tz-datetime-picker .ot-time-field-anchor .custom-select-panel-ot {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% - 1px);
  height: 1px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}
.ot-tz-datetime-picker .ot-time-field-anchor .custom-select-panel-ot .mat-mdc-select {
  display: block;
  visibility: hidden;
  width: 100%;
  height: 1px;
  min-height: 1px;
  padding: 0;
  margin: 0;
  line-height: 1px;
  transform: none;
}
.ot-tz-datetime-picker .timezone-hint {
  margin-top: 2px;
  padding-left: 4px;
  line-height: 1.4;
}
.ot-tz-datetime-picker .timezone-hint small {
  font-size: 11px;
  display: block;
}

.ot-datetime-picker .datetime-row {
  display: flex;
  gap: 8px;
  align-items: flex-start;
}
.ot-datetime-picker .date-field,
.ot-datetime-picker .time-field {
  flex: 0 0 auto;
  width: 140px;
  max-width: 160px;
}
.ot-datetime-picker .timezone-btn {
  margin-top: 4px;
  height: 40px;
  width: 40px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
}
.ot-datetime-picker .timezone-btn i {
  font-size: 16px;
}
.ot-datetime-picker .timezone-btn:hover:not(:disabled) {
  background-color: rgba(0, 0, 0, 0.04);
}
.ot-datetime-picker .timezone-hint {
  margin-top: 2px;
  margin-bottom: 8px;
  padding-left: 4px;
}
.ot-datetime-picker .timezone-hint small {
  font-size: 11px;
}

.custom-select-panel.custom-select-search .mat-mdc-option:first-child {
  height: auto !important;
  background: white;
  pointer-events: none;
  position: sticky;
  top: 0;
  z-index: 1;
}

.page-header {
  position: sticky;
  top: 0;
  z-index: 5;
  background: #fff;
  top: 48px;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.page-header h1 {
  color: #141516;
  font-size: 25px;
  font-weight: 500;
}
.page-header .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mat-mdc-form-field-infix {
  padding: 5px 0;
}
.page-header.page-header--none-fix {
  position: relative;
  top: 0;
}

.chat-translation-standalone-menu {
  display: inline-flex;
  align-items: center;
}

.chat-translation-standalone-trigger {
  display: inline-flex;
  min-width: 30px;
  height: 30px;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: 0;
  background: transparent !important;
  color: #4c5258;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.chat-translation-standalone-trigger::after {
  display: none;
}
.chat-translation-standalone-trigger:hover .chat-translation-standalone-icon {
  background: #f0f4f9;
}
.chat-translation-standalone-trigger.is-on {
  color: #0d6efd;
}
.chat-translation-standalone-trigger:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.chat-translation-standalone-icon {
  display: inline-flex;
  width: 30px;
  height: 30px;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
}

.chat-translation-dropdown-panel {
  width: min(360px, 100vw - 24px);
  padding: 14px;
  border: 1px solid #dce4ee;
  border-radius: 14px;
  color: #1f2937;
  box-shadow: 0 20px 52px rgba(15, 23, 42, 0.2);
}
.chat-translation-dropdown-panel .chat-translation-header-menu-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
  color: #172033;
  font-size: 13px;
  font-weight: 800;
}
.chat-translation-dropdown-panel .chat-translation-language-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
}
.chat-translation-dropdown-panel .chat-translation-language-option {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 7px;
  padding: 7px 8px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  color: #364152;
  font-size: 12px;
  text-align: left;
}
.chat-translation-dropdown-panel .chat-translation-language-option i {
  width: 12px;
  color: transparent;
  font-size: 10px;
}
.chat-translation-dropdown-panel .chat-translation-language-option:hover {
  background: #f3f6fb;
}
.chat-translation-dropdown-panel .chat-translation-language-option.is-selected {
  border-color: #bfd5fb;
  background: #eef5ff;
  color: #0b5ed7;
  font-weight: 700;
}
.chat-translation-dropdown-panel .chat-translation-language-option.is-selected i {
  color: #0b5ed7;
}
.chat-translation-dropdown-panel .chat-translation-menu-divider {
  height: 1px;
  margin: 12px 0;
  background: #e8edf3;
}
.chat-translation-dropdown-panel .chat-translation-auto-option {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  cursor: pointer;
}
.chat-translation-dropdown-panel .chat-translation-auto-option strong, .chat-translation-dropdown-panel .chat-translation-auto-option small {
  display: block;
}
.chat-translation-dropdown-panel .chat-translation-auto-option strong {
  color: #263244;
  font-size: 12px;
  line-height: 17px;
}
.chat-translation-dropdown-panel .chat-translation-auto-option small {
  margin-top: 2px;
  color: #778195;
  font-size: 11px;
  line-height: 15px;
}

.chat-translation-switch {
  position: relative;
  display: inline-flex;
  width: 36px;
  height: 20px;
  flex: 0 0 36px;
  margin-top: 1px;
}
.chat-translation-switch input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.chat-translation-switch > span {
  position: relative;
  width: 36px;
  height: 20px;
  border-radius: 999px;
  background: #c7cdd5;
  transition: background-color 160ms ease;
}
.chat-translation-switch > span::after {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.22);
  transition: transform 160ms ease;
}
.chat-translation-switch input:checked + span {
  background: #0d6efd;
}
.chat-translation-switch input:checked + span::after {
  transform: translateX(16px);
}
.chat-translation-switch input:focus-visible + span {
  outline: 3px solid rgba(13, 110, 253, 0.22);
  outline-offset: 2px;
}

.page-header:has(~ .page-content table thead) {
  position: relative;
  top: 0;
}

.wrap-input-question {
  width: 100%;
  position: relative;
}
.wrap-input-question .txt-control {
  width: 100%;
  height: 45px;
  border: 1px solid #dee2e6;
  padding: 10px 40px 10px 10px;
  border-radius: 5px;
}
.wrap-input-question .txt-control:focus {
  border-bottom: 2px solid #0a4ef4;
}
.wrap-input-question .btn-send {
  position: absolute;
  right: 0;
  top: 50%;
  padding: 10px;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
}

.detail-main-tab {
  position: sticky;
  top: 0;
  background: #FFFFFF;
  z-index: 5;
  top: 102.5px;
  padding: 0 15px;
}

.ot-header {
  background: #eff4f9;
  border-bottom: 1px solid #ecedee;
  padding: 10px 10px;
  min-height: 54px;
}
.ot-header .ot-header-left {
  display: flex;
  align-items: center;
}
.ot-header .ot-header-left .wrap-avatar {
  margin: -6px 0;
}
.ot-header .ot-header-left h2 {
  margin-bottom: 0;
}
.ot-header .ot-header-left .btn-back-to-list {
  padding-right: 5px;
}
.ot-header .ot-header-left .wrap-main-title {
  margin: -5px 0;
}
.ot-header .ot-header-right .wrap-btns-header {
  display: flex;
  align-items: center;
}

.more-property {
  position: relative;
}
.more-property .current-property {
  border: 1px solid #e0e0e0;
  padding: 0 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  min-width: 260px;
  max-width: 100%;
  border-radius: 3px;
  height: 35px;
  line-height: 35px;
}
.more-property .current-property .name {
  padding-right: 10px;
}
.more-property .other-property {
  position: absolute;
  background: #fff;
  top: 40px;
  right: 0;
  z-index: 4;
  padding: 10px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
  max-height: calc(100vh - 135px);
  overflow-y: auto;
  min-width: 280px;
  max-width: 100%;
}
.more-property .other-property ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.more-property .other-property ul li {
  color: #141516;
  display: table;
  width: 100%;
  border-bottom: 1px solid #ecedee;
  padding: 8px 0;
  cursor: pointer;
}
.more-property .other-property ul li:last-child {
  border: 0;
}
.more-property .other-property ul li h3 {
  font-size: 13px;
  font-weight: 500;
  margin-bottom: 0;
}
.more-property .other-property ul li small {
  font-size: 12px;
  color: #7b7b7b;
}

.btn-select-items {
  border-color: rgba(222, 226, 230, 0.73) !important;
  font-size: 16px !important;
}

.wrap-ai-btn {
  display: flex;
  align-items: center;
}

.ai-chat-box {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1040; /* Keep below modal/backdrop/overlays */
  background: #fff;
  width: 100%;
  max-width: 1000px;
  height: 100%;
}

/* Override Bootstrap modal z-index to ensure it appears above AI chat box */
.modal-backdrop {
  z-index: 1050 !important; /* Bootstrap default */
}

.modal {
  z-index: 1055 !important; /* Bootstrap default above backdrop */
}

/* This ensures the NgbModal dialogs also appear above the AI chat box */
.cdk-overlay-container {
  z-index: 1060 !important; /* Above Bootstrap modals so pickers/menus show */
}

/* Remove the previous fix as it was ineffective */
.ai-btn {
  right: 50px;
  bottom: 45px;
  z-index: 5;
  border-radius: 50%;
  padding: 0;
  width: 40px;
  height: 40px;
  position: fixed;
  background: #FFFFFF;
}
.ai-btn:hover svg path {
  fill: #FFFFFF;
}

.pop-search-field.search-feature .clear-search {
  top: 10px;
  right: 10px;
}

.h-150 {
  height: 150px !important;
}

.unit-detail-page-dialog .page-sub-header,
.unit-detail-page-dialog .back-property-link {
  display: none;
}

.list-detail-info ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.list-detail-info ul li {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ecedee;
  display: flex;
}
.list-detail-info ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.list-detail-info ul li .col-title {
  width: 232px;
  font-weight: 400;
  font-size: 14px;
  color: #4d4f52;
  padding-right: 10px;
}
.list-detail-info ul li .col-value {
  color: #141516;
  font-size: 14px;
  font-weight: 500;
  width: 100%;
}
.list-detail-info ul li .col-value a {
  color: #141516;
}

.disableDate {
  position: relative;
}
.disableDate input {
  opacity: 0.8;
}
.disableDate::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  cursor: not-allowed;
}

.s-organization {
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 10px;
  padding-bottom: 5px;
}

.time-off-toolbar-actions {
  margin-top: 6px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.time-off-view-select {
  height: 32px;
  min-width: 160px;
  padding: 0 32px 0 11px;
  border: 1px solid #d9dee7;
  border-radius: 5px;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 16 16' fill='none' stroke='%23939aa5' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  appearance: none;
  cursor: pointer;
  color: #2f3441;
  font-size: 12px;
  font-weight: 500;
}

.time-off-view-select:focus {
  outline: none;
  border-color: #0a4ef4;
  box-shadow: 0 0 0 0.15rem rgba(10, 78, 244, 0.12);
}

.search-box {
  display: flex;
  align-items: center;
  margin-top: 5px;
}
.search-box .wrap-input {
  height: 32px;
  border-radius: 5px;
  background: #FFFFFF;
  display: flex;
  position: relative;
  border: 1px solid #cbd5e1;
}
.search-box .wrap-input .btn-close {
  position: absolute;
  right: 5px;
  top: 9px;
}
.search-box .wrap-input i {
  color: #adadad;
  font-size: 12px;
  padding: 0 10px;
  line-height: 32px;
}
.search-box .wrap-input .form-control {
  background: none;
  border: none;
  line-height: 45px;
  padding: 0 22px 0 0;
  outline: none;
  box-shadow: none;
  width: 280px;
  color: #266DF0;
}
.search-box .cf {
  background: #FFFFFF;
  padding: 4px 2px;
  height: 32px;
  border-radius: 5px;
  margin: 0 0 0 5px;
  border: 1px solid #cbd5e1;
}
.search-box .cf svg {
  width: 28px;
}
.search-box .cf.btn-active {
  background: #266DF0;
}
.search-box .cf.btn-active svg path {
  fill: #FFFFFF;
}

app-events-my-registrations .search-box .cf {
  min-width: 34px;
  padding: 0 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

app-events-my-registrations .search-box .cf i {
  padding: 0;
  line-height: 1;
  font-size: 14px;
  color: #0d0d0d;
}

.opacity-50 {
  opacity: 0.5;
}

.btn.btn-edit-filter {
  width: 42px;
  height: 42px;
  background: #266df0;
  border-radius: 10px;
  border: none !important;
  margin: 5px 0;
}
.btn.btn-edit-filter:hover {
  background: rgba(38, 109, 240, 0.8);
}

.filter-box {
  border: 1px solid #dfdfdf !important;
  padding: 5px 10px;
  margin-top: 10px;
}
.filter-box .filter-item-wrap {
  background: #f8f8f8;
  min-height: 42px;
  display: inline-block;
  border-radius: 10px;
  margin: 5px 12px 5px 0;
  padding: 11px 15px;
  font-size: 15px;
}
.filter-box .filter-item-wrap .filter-label {
  color: #6f767e;
}
.filter-box .filter-item-wrap .filter-type {
  color: #1a1d1f;
}
.filter-box .filter-item-wrap .filter-value {
  color: #266DF0;
}
.filter-box .btn.btn-edit-filter {
  display: inline-block;
}

.cdk-overlay-pane .mat-datepicker-content {
  background: #fff;
  padding: 10px;
  box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px rgba(0, 0, 0, 0.1411764706), 0 1px 10px rgba(0, 0, 0, 0.1215686275);
}

.toast {
  top: 30px;
  right: 30px;
  position: fixed;
  z-index: 2;
}

.NgxEditor__Wrapper:not(.chat-composer-rich-wrapper) .NgxEditor {
  min-height: 150px;
}

.s-by-word ul {
  display: inline-block;
  margin: 12px 35px 0 0;
  padding: 0;
  list-style: none;
}
.s-by-word ul.list-text {
  margin-right: 25px;
}
.s-by-word ul li {
  display: inline-block;
}
.s-by-word ul li a {
  color: #696969;
  padding-right: 5px;
}
.s-by-word ul li a.active, .s-by-word ul li a:hover {
  color: #141516;
}

.mat-body,
.mat-body-2,
.mat-typography .mat-body,
.mat-typography .mat-body-2,
body.mat-typography,
.bottom-pagination .pagination .form-select,
.bottom-pagination .pagination .page-item a,
.bottom-pagination .pagination .page-item .page-link {
  font-size: 13px;
}

.home-box .light-grey-box {
  background: none !important;
  border-radius: 8px;
}
.home-box h3.card-title {
  font-weight: 500;
  font-size: 16px;
}
.home-box p {
  font-size: 12px;
  font-weight: 400;
}

.home-box .kanban-board {
  max-height: 250px;
  overflow: auto;
}

.setting-box {
  background: #f8f8f8;
  padding: 15px;
  border-radius: 10px;
  margin-bottom: 16px;
}
.setting-box:last-child {
  margin-bottom: 0;
}
.setting-box .setting-box-category {
  margin-bottom: 10px;
}
.setting-box .setting-box-category label {
  color: #1a1d1f;
  font-weight: 600;
  font-size: 18px;
  margin-bottom: 5px;
}
.setting-box .setting-box-category div {
  font-size: 12px;
  font-weight: 400;
  color: #575757;
  margin-bottom: 10px;
}
.setting-box .setting-box-subcategory .box-line-left label {
  color: #1a1d1f;
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 5px;
}
.setting-box .setting-box-subcategory .box-line-left div {
  font-size: 12px;
  font-weight: 400;
  color: #575757;
  margin-bottom: 10px;
}
.setting-box .setting-box-action .box-line-left label {
  color: #1a1d1f;
  font-weight: 400;
  font-size: 14px;
  margin-bottom: 3px;
}
.setting-box .setting-box-line {
  display: flex;
  align-items: start;
  justify-content: space-between;
}
.setting-box .wrap-box-subcategory {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ededed;
}
.setting-box .wrap-box-subcategory:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.warning-no-data {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 50px 0;
}
.warning-no-data img {
  width: auto;
  height: auto;
}
.warning-no-data .nd-text {
  color: #989fb0;
}

.ph-right .up-button {
  margin-top: 8px;
  margin-left: auto;
  display: table;
}
.ph-right .up-button button {
  display: inline-block;
  vertical-align: middle;
}
.ph-right .up-button button.btn-up {
  background: none;
  border: none;
  padding: 0;
  background: #141516;
  height: 32px;
  width: 32px;
  text-align: center;
  line-height: 32px;
  color: #FFFFFF;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.switch {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 24px;
}

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.slider:before {
  position: absolute;
  content: "";
  height: 20px;
  width: 20px;
  left: 2px;
  bottom: 2px;
  background-color: white;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

input:checked + .slider {
  background-color: #2196f3;
}

input:focus + .slider {
  box-shadow: 0 0 1px #2196f3;
}

input:checked + .slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}

.as-sidebar .sb-main {
  padding: 0;
  list-style: none;
}
.as-sidebar .sb-main li {
  padding: 0px;
}
.as-sidebar .sb-main > li .sb-sub {
  padding: 0;
  list-style: none;
}
.as-sidebar .sb-main > li .sb-sub > li {
  padding-left: 0px;
  border-bottom: 1px solid rgba(208, 215, 222, 0.478);
  position: relative;
}
.as-sidebar .sb-main > li .sb-sub > li.active .it-sub {
  width: 100%;
  color: #0942cf;
}
.as-sidebar .sb-main > li .sb-sub > li.active .it-sub svg rect {
  fill: none;
}
.as-sidebar .sb-main > li .sb-sub > li.active .it-sub svg path {
  stroke: #0942cf;
}
.as-sidebar .sb-main > li .sb-sub > li.active .it-sub a {
  color: #0942cf;
}
.as-sidebar .sb-main > li .sb-sub > li .sb-sub-sub {
  height: 0px;
  padding: 0;
  overflow: hidden;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.as-sidebar .sb-main > li .sb-sub > li.expanded .sb-sub-sub {
  height: auto;
  padding-top: 10px;
  padding-bottom: 10px;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.as-sidebar .sb-main > li .sb-sub > li.expanded .it-sub .mn-arrow svg {
  transform: rotate(0deg);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.as-sidebar .sb-main > li .sb-sub > li .it-sub {
  color: #141516;
  font-weight: 500;
  font-size: 16px;
  display: flex;
  align-items: center;
}
.as-sidebar .sb-main > li .sb-sub > li .it-sub > svg {
  margin-right: 5px;
}
.as-sidebar .sb-main > li .sb-sub > li .it-sub .mn-arrow svg {
  margin-right: 5px;
  transform: rotate(180deg);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.as-sidebar .sb-main > li .sb-sub > li ul {
  padding: 10px 0 0 0;
}
.as-sidebar .sb-main > li .sb-sub > li li {
  padding-left: 20px;
  list-style: none;
}
.as-sidebar .sb-main > li .sb-sub > li li a {
  font-size: 14px;
  font-weight: 400;
  color: #6f767e;
}
.as-sidebar .sb-main > li > span {
  color: #141516;
  font-size: 12px;
  font-weight: 600;
}
.as-sidebar .sb-main > li a {
  color: #141516;
  width: calc(100% - 8px);
}

.normal-placeholder::placeholder {
  text-transform: none !important;
}

.btn-action {
  font-size: 22px;
  border: none;
  background: none;
  padding-left: 8px;
  color: #383c40;
}

.wrap-main-title .page-title,
.wrap-main-title .btn-action {
  color: #346187;
  display: inline-block;
  vertical-align: baseline;
}
.wrap-main-title .btn-bookmark {
  padding-left: 6px;
  font-size: 20px;
}
.wrap-main-title .btn-list {
  color: #266DF0;
  font-size: 18px;
}
.wrap-main-title .btn-back-to-list {
  padding: 0 5px 0 10px;
  display: inline-block;
  vertical-align: top;
}
.wrap-main-title .page-title,
.wrap-main-title .rounded-pill {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 10px;
}
.wrap-main-title .page-title span,
.wrap-main-title .rounded-pill span {
  display: inline-block;
  vertical-align: middle;
}
.wrap-main-title .breadcrumb {
  font-size: 16px;
}
.wrap-main-title .breadcrumb .breadcrumb-item {
  color: var(--text);
  font-weight: 600;
}
.wrap-main-title .breadcrumb .breadcrumb-item.active {
  font-weight: 600;
  color: var(--text);
}
.wrap-main-title .breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  color: var(--t4);
  content: ">";
  font-size: 14px;
  line-height: inherit;
  font-weight: 600;
  margin-left: 2px;
  margin-right: 2px;
}

.btns-sales .wrap-btns {
  display: flex;
}
.btns-sales .wrap-btns .btn-item {
  border-radius: 4px;
  border: 1px solid #ecedee;
  min-width: 120px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 11px;
  margin-right: 30px;
}
.btns-sales .wrap-btns .btn-item:hover, .btns-sales .wrap-btns .btn-item.active {
  border-color: #266df0 !important;
  color: #266df0;
  background: none;
}
.btns-sales .wrap-btns .btn-item:hover svg path, .btns-sales .wrap-btns .btn-item.active svg path {
  stroke: #266df0;
}
.btns-sales .wrap-btns .btn-arrow {
  background: none !important;
  color: #adadad;
}

body .list-action {
  display: flex;
  gap: 4px;
  align-items: center;
}
body .list-action .btn-a {
  background: none !important;
}
body .list-action a,
body .list-action button {
  width: 32px;
  height: 32px;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--surface);
  cursor: pointer;
  color: var(--t2);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 80ms var(--ease);
  padding: 8px;
}
body .list-action a svg,
body .list-action button svg {
  width: 14px !important;
  height: 14px !important;
}
body .list-action a:hover,
body .list-action button:hover {
  background: var(--raised);
  color: var(--text);
  border-color: var(--border-strong);
}
body .list-action a:last-child,
body .list-action button:last-child {
  margin-right: 0;
}
body .list-action a.delete,
body .list-action button.delete {
  color: #F54949;
}
body .list-action a.delete:hover,
body .list-action button.delete:hover {
  background: var(--red-bg);
  color: var(--red);
  border-color: #fecaca;
}
body .list-action a.edit,
body .list-action button.edit {
  color: #141516;
}
body .list-action a i,
body .list-action button i {
  font-size: 12px;
  line-height: 19px;
}

.incoming-detail {
  font-size: 14px;
}
.incoming-detail .list-cap {
  font-size: 13px;
}
.incoming-detail .list-cap h4 {
  font-size: 13px;
  font-weight: bold;
  padding-right: 10px;
}
.incoming-detail .list-cap .dt-action {
  font-size: 13px;
  white-space: pre;
}
.incoming-detail .list-cap .cap-top {
  align-items: center;
  white-space: pre;
  flex-wrap: wrap;
  margin-bottom: 10px;
}
.incoming-detail .list-cap .cap-top a {
  text-decoration: underline;
  color: blue;
}
.incoming-detail .list-cap .cap-top a:hover {
  text-decoration: underline;
}
.incoming-detail .list-cap .cap-top * {
  flex: 1 1 auto;
}

.alert.alert-info-custom {
  background: #d7eeff;
  color: #1b79de;
  border-radius: 6px;
}
.alert.alert-warning-custom {
  background: #fff6d3;
  color: #b77b21;
  border-radius: 6px;
}

.alert-call-ringing {
  position: fixed;
  top: 120px;
  left: calc(50% + 132px);
  transform: translate(-50%, -50%);
  padding: 20px 30px;
  z-index: 99999;
  background: #cb4d44;
  color: #fff;
  border-radius: 5px;
}
.alert-call-ringing .wrap-ringing {
  display: flex;
  align-items: center;
  position: relative;
}
.alert-call-ringing .wrap-ringing .btn-close {
  position: absolute;
  top: -12px;
  right: -20px;
  cursor: pointer;
}
.alert-call-ringing .wrap-ringing .icon {
  padding-right: 15px;
}
.alert-call-ringing .wrap-ringing .text h2 {
  margin-bottom: 10px;
}
.alert-call-ringing .wrap-ringing .text h4 {
  margin-bottom: 0;
}

.Phone {
  animation: ringing 2s ease-in-out infinite;
}

#p1 {
  transform-origin: bottom right;
  animation: reveal 2s ease-in-out infinite backwards;
}

#p2 {
  transform-origin: bottom right;
  animation: reveal 2s ease-in-out 0.1s infinite backwards;
}

@keyframes reveal {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  20% {
    opacity: 0;
    transform: scale(1);
  }
  22% {
    opcaity: 1;
    transform: scale(1.05);
  }
  26% {
    opacity: 1;
    transform: scale(1);
  }
  40% {
    opacity: 0;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(1);
  }
}
@keyframes scaleup {
  20% {
    transform: scale(1);
  }
  30% {
    transform: scale(1.1);
  }
  40% {
    transform: scale(1);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes ringing {
  20% {
    transform: rotate(0deg);
  }
  21% {
    transform: rotate(10deg);
  }
  22% {
    transform: rotate(-10deg);
  }
  23% {
    transform: rotate(12deg);
  }
  24% {
    transform: rotate(-12deg);
  }
  25% {
    transform: rotate(12deg);
  }
  26% {
    transform: rotate(-12deg);
  }
  28% {
    transform: rotate(10deg);
  }
  30% {
    transform: rotate(-10deg);
  }
  32% {
    transform: rotate(5deg);
  }
  34% {
    transform: rotate(-5deg);
  }
  36% {
    transform: rotate(2deg);
  }
  38% {
    transform: rotate(0deg);
  }
}
.wrap-main-page {
  align-items: flex-start;
  flex-wrap: wrap;
}
.wrap-main-page .portal-main-content {
  width: 100%;
}
.wrap-main-page .col-sb-call {
  flex: 1 auto;
  position: sticky;
  top: 80px;
  height: calc(100vh - 80px);
  overflow-y: auto;
  z-index: 11;
  background: #fff;
}
.wrap-main-page.call-center-active {
  display: flex;
}
.wrap-main-page.call-center-active .call-visible {
  width: 72%;
}
.wrap-main-page.call-center-active .call-visible .mf-container {
  padding-left: 0;
}
.wrap-main-page .col-sb-chat {
  display: none;
}

.portal-home-page-shell {
  margin-top: 0.5rem;
  padding-bottom: 0.25rem;
}

@media (min-width: 1500px) {
  .wrap-main-page .portal-main-content {
    width: 100%;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .wrap-main-page .portal-main-content .bottom-pagination {
    padding-right: 0;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .wrap-main-page.chat-panel-active {
    display: flex;
    flex-wrap: nowrap;
  }
  .wrap-main-page.chat-panel-active .portal-main-content.chat-panel-visible {
    flex: 1 1 auto;
    width: calc(100% - 480px);
    overflow: visible;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .wrap-main-page.chat-panel-active .portal-main-content.chat-panel-visible .mf-container {
    padding-right: 0;
  }
  .wrap-main-page.chat-panel-active .portal-main-content.chat-panel-visible .bottom-pagination {
    padding-right: 485px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .wrap-main-page.chat-panel-active .col-sb-chat {
    display: block;
    flex: 0 0 480px;
    width: 480px;
    min-width: 480px;
    max-width: 480px;
    box-sizing: border-box;
    position: sticky;
    top: var(--hh);
    height: calc(100dvh - var(--hh));
    max-height: calc(100dvh - var(--hh));
    overflow: hidden;
    z-index: 5;
    background: #fff;
    border-left: 1px solid #eef0f2;
  }
  .wrap-main-page.chat-panel-active .col-sb-chat:has(.chat-image-viewer) {
    z-index: 8;
  }
  .wrap-main-page.chat-panel-active:has(.chat-search-panel-open) .portal-main-content.chat-panel-visible {
    width: calc(100% - 760px);
  }
  .wrap-main-page.chat-panel-active:has(.chat-search-panel-open) .portal-main-content.chat-panel-visible .bottom-pagination {
    padding-right: 765px;
  }
  .wrap-main-page.chat-panel-active:has(.chat-search-panel-open) .col-sb-chat {
    flex-basis: 760px;
    width: 760px;
    min-width: 760px;
    max-width: 760px;
  }
}
.main-container:has(app-accounts) .page-header .mf-container {
  padding-bottom: 0.2rem;
}
.main-container:has(app-accounts) .page-content {
  margin-top: 0.2rem;
}

@media (min-width: 1500px) {
  .main-container:has(app-accounts) .wrap-main-page.chat-panel-active .page-header .row {
    row-gap: 0.4rem;
  }
  .main-container:has(app-accounts) .wrap-main-page.chat-panel-active .page-content {
    margin-top: 0.2rem;
  }
}
.contact-left .socials {
  padding: 5px;
}
.contact-left .socials a {
  color: #0d0d0d;
  font-size: 22px;
  padding: 0 5px;
  vertical-align: bottom;
}
.contact-left .socials a.phone {
  font-size: 18px;
}

.disabledSelect {
  opacity: 0.7;
  cursor: not-allowed;
}

body .light-grey-box {
  border-radius: 5px;
  border: 1px solid #ecedee;
}
body .light-grey-box h5 {
  margin: 0;
  font-size: 18px;
}
body .light-grey-box h5 img {
  max-width: 25px;
  margin-right: 5px;
  padding-bottom: 5px;
}

.table tbody tr.disable {
  opacity: 0.6;
  cursor: not-allowed;
}
.table tbody tr.notAllow {
  pointer-events: none;
  opacity: 0.6;
}

.page-container .wrap-navs.active1 .form-select {
  padding-left: 10px;
  padding-right: 8px;
}

nav .page-link {
  padding-left: 10px;
  box-shadow: none;
  outline: none;
  border-color: #e0e0e0;
  border-radius: 3px;
  height: 37px;
}

.cdk-drop-list {
  border: none;
}
.cdk-drop-list .drag-item {
  margin-bottom: 10px;
}

.table-course-detail small {
  font-weight: normal;
}
.table-course-detail .ot-icon-button:hover {
  background: none;
}
.table-course-detail .ot-course-info-header-row {
  background: #fafafa;
  padding: 16px 10px 16px 10px;
  border-bottom: 1px solid #ecedee;
  border-radius: 10px 10px 0 0;
  font-size: 14px;
  font-weight: 600;
  color: #383c40;
  font-family: Jost, "Jost Fallback", sans-serif;
}
.table-course-detail .cdk-drop-list .ot-course-info-topic-row {
  border: none;
  padding: 0;
  align-items: center;
}
.table-course-detail .cdk-drop-list .ot-course-info-topic-row .cdk-drop-list .cdk-drag {
  border-bottom: 1px solid #ecedee;
  align-items: center;
  padding: 0 10px;
}
.table-course-detail .cdk-drop-list .ot-course-info-topic-row .cdk-drop-list .cdk-drag:hover {
  background: #f2f2f2;
}
.table-course-detail .cdk-drop-list .ot-course-info-topic-row .row-no-activities {
  border-bottom: 1px solid #ecedee;
  padding: 15px 0;
}
.table-course-detail .cdk-drop-list .ot-course-info-topic-row .topic-top-row {
  padding: 8px 10px;
  align-items: center;
  border-bottom: 1px solid #ecedee;
}
.table-course-detail .cdk-drop-list .ot-course-info-topic-row .topic-top-row .mdc-button__label {
  font-size: 14px;
  font-weight: 600;
  color: #383c40;
  font-family: Jost, "Jost Fallback", sans-serif;
}

body .NgxEditor__Wrapper {
  border: 1px dashed #ecedee;
}

.comment-line {
  margin-top: 15px;
  position: relative;
}
.comment-line .cml-bottom {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  justify-content: space-between;
  padding: 5px 15px;
  width: 100%;
}
.comment-line .cml-bottom .toggle-richtext {
  border: none;
  background: none;
  box-shadow: none;
  outline: none;
}
.comment-line .cml-bottom .toggle-richtext svg {
  fill: #2a3c42;
}
.comment-line .NgxEditor__Wrapper {
  border: 1px solid #dfdfdf;
  border-radius: 25px;
}
.comment-line .NgxEditor__Wrapper .NgxEditor__MenuBar {
  border-top-left-radius: 25px;
  border-top-right-radius: 25px;
  display: flex;
  padding: 6px 10px;
}
.comment-line .NgxEditor__Wrapper .NgxEditor {
  border-radius: 25px;
  min-height: 83px;
}
.comment-line .NgxEditor__Wrapper .NgxEditor .NgxEditor__Content {
  padding: 14px 14px 40px 14px;
}
.comment-line.not-show-rich-text .NgxEditor__Wrapper .NgxEditor__MenuBar {
  display: none;
}
.comment-line.not-show-comment .NgxEditor__Wrapper {
  border: 1px solid #dfdfdf;
}
.comment-line.not-show-comment .NgxEditor__Wrapper .NgxEditor {
  min-height: 46px;
}
.comment-line.not-show-comment .NgxEditor__Wrapper .NgxEditor .NgxEditor__Content {
  padding: 14px;
}
.comment-line.not-show-comment .NgxEditor__Wrapper p {
  margin-bottom: 0;
}
.comment-line.not-show-comment .NgxEditor__Wrapper .ngx-menu {
  display: none;
}

.add-item {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(44, 124, 217, 0.25);
  color: #266df0;
  line-height: 22px;
  text-align: center;
  font-size: 22px;
}

.bottom-pagination {
  padding: 10px 0;
  background: #FFFFFF;
  position: fixed;
  bottom: 0;
  width: 100%;
  left: 0;
  padding-left: 220px;
}

.bottom-pagination .total,
.bottom-pagination-inside .total,
.popup-container .total {
  font-weight: 500;
}
.bottom-pagination .label-space,
.bottom-pagination-inside .label-space,
.popup-container .label-space {
  padding: 10px 3px 0 3px;
  letter-spacing: 1px;
}
.bottom-pagination .pagination,
.bottom-pagination-inside .pagination,
.popup-container .pagination {
  margin-bottom: 0;
}
.bottom-pagination .pagination .page-item,
.bottom-pagination-inside .pagination .page-item,
.popup-container .pagination .page-item {
  border: none;
  margin: 0 5px;
}
.bottom-pagination .pagination .page-item:last-child,
.bottom-pagination-inside .pagination .page-item:last-child,
.popup-container .pagination .page-item:last-child {
  margin-right: 0;
}
.bottom-pagination .pagination .page-item a,
.bottom-pagination .pagination .page-item .page-link,
.bottom-pagination-inside .pagination .page-item a,
.bottom-pagination-inside .pagination .page-item .page-link,
.popup-container .pagination .page-item a,
.popup-container .pagination .page-item .page-link {
  color: #696969;
  font-size: 12px;
  font-weight: 300;
  height: 30px;
  line-height: 30px;
  padding: 0 8px;
  border: 1px solid #ECEDEE;
  border-radius: 4px;
  min-width: 30px;
  text-align: center;
  cursor: pointer;
}
.bottom-pagination .pagination .page-item a.active,
.bottom-pagination .pagination .page-item .page-link.active,
.bottom-pagination-inside .pagination .page-item a.active,
.bottom-pagination-inside .pagination .page-item .page-link.active,
.popup-container .pagination .page-item a.active,
.popup-container .pagination .page-item .page-link.active {
  background: #266df0;
  color: #FFFFFF;
  border: 1px solid #266df0;
}
.bottom-pagination .pagination .page-item.active a,
.bottom-pagination .pagination .page-item.active .page-link, .bottom-pagination .pagination .page-item:hover a,
.bottom-pagination .pagination .page-item:hover .page-link,
.bottom-pagination-inside .pagination .page-item.active a,
.bottom-pagination-inside .pagination .page-item.active .page-link,
.bottom-pagination-inside .pagination .page-item:hover a,
.bottom-pagination-inside .pagination .page-item:hover .page-link,
.popup-container .pagination .page-item.active a,
.popup-container .pagination .page-item.active .page-link,
.popup-container .pagination .page-item:hover a,
.popup-container .pagination .page-item:hover .page-link {
  background: #266df0;
  color: #FFFFFF;
  border: 1px solid #266df0;
}
.bottom-pagination .pagination .wrap-select,
.bottom-pagination-inside .pagination .wrap-select,
.popup-container .pagination .wrap-select {
  margin-right: 10px;
}
.bottom-pagination .pagination .total,
.bottom-pagination-inside .pagination .total,
.popup-container .pagination .total {
  color: #94a3b8;
  font-size: 12px;
  font-weight: 300;
  height: 30px;
  line-height: 30px;
  padding: 0 10px;
  border-radius: 5px;
  min-width: 30px;
  text-align: center;
  margin-right: 8px;
}
.bottom-pagination .pagination .form-select,
.bottom-pagination-inside .pagination .form-select,
.popup-container .pagination .form-select {
  font-size: 12px;
  font-weight: 300;
  height: 30px;
  margin-right: 10px;
  border: 1px solid #ECEDEE;
  border-radius: 4px;
  box-shadow: none;
}

.list-validate {
  list-style: none;
  padding: 0;
  margin: 20px 0 20px 10px;
}
.list-validate li {
  padding-bottom: 5px;
  display: flex;
}
.list-validate li span {
  width: 22px;
  font-size: 18px;
}

.request-detail .request-right .card {
  height: 100%;
}
.request-detail .request-right .card .box-title h4 span {
  color: #266DF0;
}

.avatar {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  overflow: hidden;
  flex: 0 0 auto;
}
.avatar.small-avatar {
  width: 26px;
  height: 26px;
}
.avatar.avatar-home {
  background: #acacac;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.avatar.avatar-home img {
  width: 23px;
  height: auto;
}
.avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.avatar img.u-img {
  border-radius: 50%;
}
.avatar.svg-avatar {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid #e2e8f0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: border-color 80ms;
}
.avatar.svg-avatar img {
  height: 15px;
  width: auto;
}
.avatar.svg-avatar svg {
  stroke: #0e7490;
}

.table-thumbnail {
  width: 100px;
  height: 55px;
  border-radius: 5px;
  overflow: hidden;
  flex: 0 0 auto;
}
.table-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.main-box .main-box-title {
  margin-bottom: 12px;
  font-size: 20px;
  font-weight: 500;
}

.box-header {
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.box-header .b-title {
  color: #141516;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 0;
}
.box-header .b-title span {
  color: #266df0;
}

.box-sub-header {
  margin-bottom: 12px;
  margin-top: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.contact-infomation .table-emails-phones {
  margin-top: 30px;
}
.contact-infomation .table-emails-phones tr td {
  border-color: var(--greyscale-black-30, #ecedee);
  padding-top: 15px;
  padding-bottom: 15px;
}
.contact-infomation .table-emails-phones tr td.label-col {
  padding-left: 0;
  font-size: 13px;
  color: #6f767e;
}
.contact-infomation .table-emails-phones tr td.value-col {
  padding-right: 0;
  text-align: right;
}
.contact-infomation .table-emails-phones tr td.value-col a {
  color: #141516;
  font-weight: 500;
}
.contact-infomation .table-emails-phones tr:last-child td {
  border: none;
}
.contact-infomation .box-note .note-content {
  border-radius: 14px 14px 0px 14px;
  background: #f8f8f8;
  color: #6f767e;
  font-size: 14px;
  font-weight: 500;
  padding: 15px;
}
.contact-infomation .box-note .date-time {
  font-size: 14px;
  color: #6f767e;
  font-weight: 400;
}

.contact-left h3.name {
  font-size: 18px;
}

.nav-tabs.nav button.nav-item:hover, .nav-tabs.nav button.nav-item.active {
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.nav-tabs.nav .nav-item {
  padding: 8px;
  border: none;
  color: #141516;
  font-size: 13px;
  font-weight: 400;
  margin-top: 5px;
  cursor: pointer;
}
.nav-tabs.nav .nav-item.active {
  font-weight: 600;
}
.nav-tabs.nav .nav-item.visited {
  color: #000;
}
.nav-tabs.nav .nav-item.disable-click {
  color: #6f767e;
  border-color: #cdcdcd;
}
.nav-tabs.nav.main-nav-tabs .nav-item {
  padding: 16px 20px;
  font-size: 16px;
}
.nav-tabs.nav li {
  flex: 1;
  min-width: 0;
  background-color: #f2f2f2;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  cursor: pointer;
  overflow: hidden;
  clip-path: polygon(0% 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 0% 100%, 20px 50%);
}
.nav-tabs.nav li::before {
  display: none !important;
}
.nav-tabs.nav li .step-number {
  display: none !important;
}
.nav-tabs.nav li .step-label {
  font-size: 14px;
  font-weight: 600;
  color: #333;
  margin-top: 0;
  padding-left: 0;
  transform: none;
  width: 100%;
  max-width: 100%;
  display: block;
  padding-top: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 25px;
  text-align: center;
}
.nav-tabs.nav li .step-label .step-percent {
  display: none;
}
.nav-tabs.nav li .step-label i {
  margin-left: 5px;
  color: #fff !important;
  background-color: #000 !important;
  border-radius: 50%;
  opacity: 1 !important;
}
.nav-tabs.nav li.visited, .nav-tabs.nav li.active {
  background-color: #266df0;
}
.nav-tabs.nav li.visited .step-label, .nav-tabs.nav li.active .step-label {
  color: #fff;
}
.nav-tabs.nav li.visited::before, .nav-tabs.nav li.active::before {
  display: none !important;
}
.nav-tabs.nav li.visited .step-number, .nav-tabs.nav li.active .step-number {
  display: none !important;
}
.nav-tabs.nav li:first-child {
  clip-path: polygon(0% 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 0% 100%);
}
.nav-tabs.nav li:first-child .step-label {
  padding-left: 0;
}
.nav-tabs.nav li:last-child {
  width: auto !important;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 20px 50%);
}

.page-header .nav-tabs.nav .nav-item:hover, .page-header .nav-tabs.nav .nav-item.active {
  color: #141516;
  border-color: #141516;
  background: transparent;
}

.nav-tabs-custom.nav {
  border: none;
}
.nav-tabs-custom.nav .nav-item {
  border: none;
  border-bottom: none !important;
}
.nav-tabs-custom.nav .nav-item:hover, .nav-tabs-custom.nav .nav-item.active {
  color: #141516;
  position: relative;
  border: none;
}
.nav-tabs-custom.nav .nav-item:hover::before, .nav-tabs-custom.nav .nav-item.active::before {
  position: absolute;
  width: 100%;
  height: 1px;
  left: 0;
  bottom: -1px;
  background: #141516;
  content: "";
}

.tab-content .tab-header {
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.tab-content .tab-header .search-box .wrap-input {
  background: none;
  border: 1px solid #ecedee;
}

.contact-header {
  margin-bottom: -20px;
}

.contact-avatar-wrap {
  align-items: center;
}

.detail-info .name {
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 5px;
}
.detail-info .wrap-tags ul {
  list-style: none;
  padding: 0;
  padding-top: 2px;
}
.detail-info .wrap-tags ul li {
  display: inline-block;
  padding: 5px 15px;
  margin: 5px;
  position: relative;
  background: #ecf1fe;
  border-radius: 20px;
  color: #266df0;
}
.detail-info .wrap-tags ul li:first-child {
  margin-left: 0;
}
.detail-info .wrap-tags ul li::after {
  position: absolute;
  width: 1px;
  height: 15px;
  right: 0;
  top: 2px;
  background: #141516;
}
.detail-info .wrap-tags ul li .last-child {
  border: none;
  margin: 0;
  padding: 0;
}
.detail-info .wrap-tags ul li .last-child::after {
  display: none;
}

.contact-top-row {
  border: 1px solid #dedede;
  border-radius: 10px;
}
.contact-top-row.one-row {
  overflow: hidden;
}
.contact-top-row.one-row .top-row-1 {
  border: none;
}
.contact-top-row.one-row .top-row-2 {
  display: none;
}
.contact-top-row .top-row-1 {
  background: #fafafa;
  border-bottom: 1px solid #dedede;
  border-radius: 10px 10px 0 0;
}
.contact-top-row .top-row-2 {
  padding: 10px 10px 5px 10px;
}

.contact-right .btn-custom-outline-secondary {
  background: #fff;
}

.detail-avatar {
  width: 50px;
  height: 50px;
  margin: 0 10px 0 auto;
  margin: 10px;
  border-radius: 50%;
}
.detail-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.contact-main-content {
  display: flex;
}
.contact-main-content.contact-2-columns .contact-column-1 {
  width: 70%;
}
.contact-main-content.contact-2-columns .contact-column-3 {
  width: 30%;
}
.contact-main-content .contact-column-1 {
  width: 25%;
  border: 1px solid #eee;
  border-radius: 6px;
  margin-right: 15px;
}
.contact-main-content .contact-column-1 .column-title {
  border-radius: 0;
  padding: 10px;
  margin: 0 -10px 10px;
}
.contact-main-content .contact-column-1 .column-title .fa-solid {
  font-size: 11px;
  color: #6f767e;
}
.contact-main-content .contact-column-2 {
  width: 50%;
  border: 1px solid #eee;
  border-radius: 6px;
  margin-right: 15px;
  padding: 10px;
}
.contact-main-content .contact-column-2.contact-column-2--max {
  width: 75%;
  margin-right: 0;
}
.contact-main-content .contact-column-3 {
  width: 25%;
}

.list-projects ul {
  margin: 0;
  padding: 0;
}
.list-projects ul li {
  padding-bottom: 5px;
  margin-bottom: 5px;
  border-bottom: 1px solid #eee;
  list-style: none;
}

.list-projects > ul > li:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.dropdown-show-all {
  font-weight: 600;
  display: flex;
  align-items: center;
  font-size: 18px;
  margin: 10px 0;
  cursor: pointer;
}
.dropdown-show-all span {
  margin-right: 5px;
}

.icon-primary svg path {
  fill: #14ae5c !important;
}

.icon-danger svg path {
  fill: #ec221f !important;
}

.user-info-container {
  width: 310px;
  border-radius: 10px;
  overflow: hidden;
  font-family: Jost, "Jost Fallback", sans-serif;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  background: white;
  position: relative;
}
.user-info-container .user-info-header {
  background-color: #1a73e8;
  color: white;
  text-align: left;
  padding: 35px 5px 5px 96px;
  position: relative;
}
.user-info-container .wrap-avatar {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  border: 1px solid white;
  object-fit: cover;
  position: absolute;
  left: 16px;
  bottom: -23px;
  background-color: white;
  line-height: 70px;
  font-size: 30px;
}
.user-info-container .user-name {
  font-weight: 500;
  font-size: 14px;
  text-transform: capitalize;
}
.user-info-container .user-email {
  font-size: 11px;
  color: #dcdcdc;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.user-info-container .close-btn {
  position: absolute;
  right: 10px;
  top: 5px;
  background: none;
  border: none;
  color: white;
  font-size: 20px;
  cursor: pointer;
}
.user-info-container .user-info-body {
  padding: 30px 0px 16px;
  position: relative;
}
.user-info-container .action-item {
  font-size: 13px;
  padding: 10px 16px;
  cursor: pointer;
}
.user-info-container .action-item:hover {
  background-color: #f4f4f4;
}
.user-info-container hr {
  margin: 6px 0;
  border: none;
  border-top: 1px solid #eee;
}
.user-info-container .remove {
  color: #202124;
  font-weight: 400;
}
.user-info-container .org-name {
  position: absolute;
  left: 93px;
  top: 3px;
  width: 207px;
  font-size: 12px;
  color: #172b4d;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.auto-link {
  word-break: break-all;
  overflow-wrap: anywhere;
  max-width: 100%;
}

.kanban-progress {
  margin-top: 15px;
}
.kanban-progress .board-level {
  overflow: auto;
  width: 100%;
}
.kanban-progress .level-item {
  border-bottom: 1px solid #f2f2f2;
  width: 100%;
  display: table;
  padding-bottom: 10px;
}
.kanban-progress .level-item:last-child {
  border: none;
  padding-bottom: 0;
}
.kanban-progress .kanban-item {
  border: 1px solid #ecedee;
  border-radius: 10px;
  padding: 10px;
  margin-bottom: 15px;
}
.kanban-progress .board-name {
  padding-bottom: 5px;
  font-size: 14px;
}
.kanban-progress .board-name a {
  font-weight: 600;
}
.kanban-progress .pdetail-add-kanban {
  padding: 15px 10px;
  border-radius: 10px;
  margin-bottom: 15px;
  position: relative;
}
.kanban-progress .pdetail-add-kanban:before {
  content: "";
  position: absolute;
  inset: 0;
  border: 4px dashed #dedede;
  border-radius: 10px;
  pointer-events: none;
  box-sizing: border-box;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.kanban-progress .pdetail-add-kanban::after {
  content: "";
  position: absolute;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  top: 1px;
  left: 1px;
  border-radius: 10px;
  pointer-events: none;
  box-sizing: border-box;
  background: #fff;
  z-index: 2;
}
.kanban-progress .pdetail-add-kanban:hover::before {
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  border-style: solid;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.kanban-progress .pdetail-add-kanban .pdetail-wrap {
  position: relative;
  cursor: pointer;
}
.kanban-progress .pdetail-add-kanban .pdetail-wrap .form-select {
  padding-left: 10px;
  box-shadow: none;
  outline: none;
  border-color: #e0e0e0;
  border-radius: 3px;
  height: 37px;
  cursor: pointer;
}
.kanban-progress .pdetail-add-kanban .board-name {
  font-weight: 600;
  color: #266df0;
}
.kanban-progress .level-name {
  vertical-align: top;
  padding: 15px 10px 5px 25px;
  font-weight: bold;
}

.header-step-bar ul {
  list-style: none;
  padding: 0 0 0 50px;
  margin: 0;
  display: flex;
}
.header-step-bar ul li {
  position: relative;
  flex: 0 0 auto;
}
.header-step-bar ul li:last-child {
  width: 100px !important;
}
.header-step-bar ul li::before {
  width: 100%;
  height: 3px;
  background: #f2f2f2;
  content: "";
  position: absolute;
  top: 18px;
  left: 0;
}
.header-step-bar ul li:last-child::before {
  display: none;
}
.header-step-bar ul li.active::before {
  background: #266df0;
}
.header-step-bar ul li.active .step-number {
  background: #266df0;
  color: #266df0;
  font-size: 0;
  position: relative;
}
.header-step-bar ul li.active .step-number::after {
  content: "";
  left: 14px;
  top: 6px;
  width: 9px;
  height: 18px;
  border: solid #fff;
  border-width: 0 1.5px 1.5px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  z-index: 2;
}
.header-step-bar ul li.last-column .step-number {
  background: #3AB174;
  color: #3AB174;
  color: #fff;
}
.header-step-bar ul li.current .step-number {
  background: #dc3545;
  color: #dc3545;
  color: #fff;
  cursor: not-allowed;
}
.header-step-bar ul li .step-number {
  position: relative;
  z-index: 1;
  width: 36px;
  height: 36px;
  line-height: 36px;
  text-align: center;
  color: #5f6c87;
  font-size: 15px;
  font-style: normal;
  font-weight: 600;
  background: #f2f2f2;
  border-radius: 50%;
  margin-left: -18px;
  cursor: pointer;
}
.header-step-bar ul li .step-label {
  padding-top: 5px;
  font-size: 13px;
  display: table;
  color: #000;
  transform: translate(-50%);
  position: relative;
  z-index: 2;
  width: 100px;
  text-align: center;
}

/* Kanban Board Styles */
/* Swing Button styles */
.swing-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: all 0.3s ease;
}

.swing-btn i {
  margin-right: 5px;
  transition: transform 0.3s ease;
}

.swing-btn:hover i {
  transform: rotate(180deg);
}

/* Vertical orientation styles */
/* Base transitions for all elements */
.kanban-board,
.levels-container,
.kanban-level,
.columns-container,
.vertical-columns-wrapper,
.kanban-column,
.cards-container,
.kanban-card {
  transition: all 0.4s ease;
}

.kanban-header {
  background: #f4f4f4;
  border-radius: 5px;
  padding: 3px 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.kanban-header .level-name {
  font-weight: 600;
}

.kanban-board {
  position: relative;
  font-size: 12px;
}
.kanban-board.vertical-orientation .cards-container.vertical-cards-container .cdk-drop-list-dragging {
  cursor: move;
}
.kanban-board.vertical-orientation .cards-container.vertical-cards-container .kanban-card.horizontal-card {
  flex: 0 0 auto;
  position: relative;
  cursor: move;
}
.kanban-board.vertical-orientation .cards-container.vertical-cards-container .kanban-card.horizontal-card.cdk-drag-placeholder {
  opacity: 0.5;
  background: #f0f0f0;
  border: 2px dashed #ccc;
}
.kanban-board.vertical-orientation .cards-container.vertical-cards-container .kanban-card.horizontal-card.cdk-drag-animating {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}
.kanban-board.vertical-orientation .cards-container.vertical-cards-container.cdk-drop-list-dragging .kanban-card:not(.cdk-drag-placeholder) {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}
.kanban-board.vertical-orientation .horizontal-card .card-actions {
  flex-direction: row;
  justify-content: flex-end;
}
.kanban-board.vertical-orientation .horizontal-card .card-name {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.kanban-board.vertical-orientation .horizontal-card .user-checklist {
  flex-direction: row;
  justify-content: space-between;
}
.kanban-board.vertical-orientation .kanban-column {
  flex: auto;
}
.kanban-board.vertical-orientation .wrap-cards {
  min-height: auto;
}
.kanban-board.vertical-orientation .levels-container.vertical-levels {
  display: flex;
  flex-direction: column;
}
.kanban-board.vertical-orientation .kanban-level.vertical-level {
  width: 100%;
}
.kanban-board.vertical-orientation .columns-container.vertical-columns {
  display: flex;
  flex-direction: column;
}
.kanban-board.vertical-orientation .vertical-columns-wrapper {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  overflow-x: auto;
}
.kanban-board.vertical-orientation .kanban-column.vertical-column {
  min-width: 280px;
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-right: 0 !important;
}
.kanban-board.vertical-orientation .cards-container.vertical-cards-container {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding-bottom: 10px;
}
.kanban-board.vertical-orientation .kanban-card.horizontal-card {
  min-width: 280px;
  margin-right: 10px;
}
.kanban-board.vertical-orientation .kanban-card.horizontal-card .card-actions {
  flex-direction: row;
  justify-content: flex-end;
}
.kanban-board.vertical-orientation .kanban-card.horizontal-card .card-name {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.kanban-board.vertical-orientation .kanban-card.horizontal-card .user-checklist {
  flex-direction: row;
  justify-content: space-between;
}
.kanban-board .loadding-screen {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: center;
}
.kanban-board .cdk-drag-preview {
  z-index: 1000;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3) !important;
  border-radius: 4px;
}
.kanban-board {
  /* For the vertical card list (default mode) */
}
.kanban-board .wrap-cards:not(.vertical-cards-container) {
  min-height: 60px;
  max-height: calc(100vh - 320px);
}
.kanban-board .wrap-cards:not(.vertical-cards-container) .kanban-card {
  margin-bottom: 10px;
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}
.kanban-board .wrap-cards:not(.vertical-cards-container) .kanban-card.cdk-drag-placeholder {
  opacity: 0.5;
  background: #f0f0f0;
  border: 2px dashed #ccc;
  min-height: 60px;
}
.kanban-board .wrap-cards:not(.vertical-cards-container).cdk-drop-list-dragging .kanban-card:not(.cdk-drag-placeholder) {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}
.kanban-board {
  /* Custom dragdrop animation styles for horizontal cards */
}
.kanban-board .cdk-drop-list-dragging .horizontal-card:not(.cdk-drag-placeholder) {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}
.kanban-board {
  /* Vertical column dragdrop handling */
}
.kanban-board .kanban-column.vertical-column .vertical-cards-container .horizontal-card {
  width: 240px;
  margin-right: 15px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.kanban-board .kanban-column.vertical-column .vertical-cards-container .horizontal-card:hover {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
.kanban-board {
  /* Animation for drag and drop placeholders in horizontal mode */
}
.kanban-board .kanban-card.cdk-drag-preview {
  z-index: 9999;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}
.kanban-board .kanban-card.cdk-drag-placeholder {
  opacity: 0.4;
  background-color: #f0f8ff;
  border: 2px dashed #4d94ff;
  box-shadow: none;
}
.kanban-board {
  /* Special animations for horizontal cards in vertical-oriented board */
}
.kanban-board .vertical-cards-container .kanban-card.cdk-drag-placeholder {
  opacity: 0.4;
  min-width: 200px;
  border: 2px dashed #4d94ff;
  background-color: #f0f8ff;
}
.kanban-board {
  /* Drag and Drop Preview Styles */
}
.kanban-board .cdk-drag-preview {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
  opacity: 0.9;
}
.kanban-board {
  /* Placeholder styles */
}
.kanban-board .cdk-drag-placeholder {
  opacity: 0.3;
}
.kanban-board {
  /* Drag animation styles */
}
.kanban-board .cdk-drag-animating {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}
.kanban-board {
  /* Horizontal card list specific styles */
}
.kanban-board .vertical-cards-container {
  min-height: 120px; /* Ensure there's space for dragging */
  position: relative;
}
.kanban-board {
  /* Ensure proper animation for both horizontal and vertical lists */
}
.kanban-board .vertical-cards-container.cdk-drop-list-dragging .kanban-card:not(.cdk-drag-placeholder) {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}
.kanban-board {
  /* Add styles for moving other items when dragging in horizontal list */
}
.kanban-board .vertical-cards-container.cdk-drop-list-dragging .horizontal-card:not(.cdk-drag-dragging):not(.cdk-drag-placeholder) {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}
.kanban-board {
  /* Standard vertical list */
}
.kanban-board .wrap-cards:not(.vertical-cards-container).cdk-drop-list-dragging .kanban-card:not(.cdk-drag-placeholder) {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}

.kanban-column {
  width: 280px;
  border: none;
  background: #f4f4f4;
  flex: 0 0 280px;
  padding-bottom: 10px;
}

.wrap-cards {
  padding: 10px 10px 0 10px;
  min-height: 100px;
  width: 100%;
  overflow: auto;
}

.no-cards {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
  border-radius: 5px;
  padding: 8px;
}

.kanban-card {
  background: #fff;
  margin-bottom: 10px;
  border-radius: 10px;
  padding: 8px;
  position: relative;
  cursor: pointer;
  box-shadow: var(--ds-shadow-raised, 0px 1px 1px rgba(9, 30, 66, 0.251), 0px 0px 1px rgba(9, 30, 66, 0.31));
}
.kanban-card .card-actions {
  display: none;
  position: absolute;
  top: 0px;
  right: 5px;
  align-items: center;
  background: #fff;
  padding: 0 0 5px 0;
}
.kanban-card .card-actions .btn {
  padding: 5px;
  margin-left: 1px;
  color: #141516;
}
.kanban-card .card-actions img {
  width: 14px;
}
.kanban-card .card-name {
  font-weight: 500;
}
.kanban-card .card-name a {
  color: #141516;
}
.kanban-card .card-object {
  padding-bottom: 5px;
}
.kanban-card .card-description {
  margin-bottom: 6px;
  color: #6f767e;
  overflow-x: auto;
}
.kanban-card .card-description p:last-child {
  margin-bottom: 0;
}
.kanban-card:hover .card-actions {
  display: flex;
}

.position-action {
  display: flex;
  position: relative;
  align-items: center;
  padding-top: 3px;
}

.kanban-header .column-name {
  font-weight: 600;
}
.kanban-header .btn-3-dots {
  cursor: pointer;
  padding: 5px;
  border-radius: 4px;
  color: #626f86;
}
.kanban-header .btn-3-dots:hover {
  background: rgba(9, 30, 66, 0.14);
}
.kanban-header .column-action-menu {
  position: absolute;
  background: #FFFFFF;
  top: 35px;
  right: 0;
  z-index: 2;
  padding: 10px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
}
.kanban-header .column-action-menu ul {
  margin: 0;
  padding: 0;
  width: 120px;
}
.kanban-header .column-action-menu ul li {
  list-style: none;
  display: table;
  width: 100%;
  border-bottom: 1px solid #ECEDEE;
  margin-bottom: 0;
}
.kanban-header .column-action-menu ul li::before {
  display: none;
}
.kanban-header .column-action-menu ul li:last-child {
  border: none;
}
.kanban-header .column-action-menu ul li a {
  color: #141516;
  display: table;
  width: 100%;
  padding: 8px 0;
}

.card-description img {
  max-width: 100%;
  height: auto;
}

.scroll-to-top {
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  position: sticky;
  bottom: 0px;
  right: 0;
  z-index: 100;
  display: inline-block;
  font-size: 18px;
  border-radius: 10px;
  background-color: #007bff;
  color: #fff;
  border: none;
  opacity: 0.9;
  padding: 2px 8px;
}

.mes-content {
  position: relative;
}
.mes-content .scroll-point {
  position: absolute;
  top: -60px;
  left: 0;
  width: 100%;
  height: 1px;
}

.modal-title input {
  font-size: 18px;
  font-weight: 600;
  line-height: 30px;
}

.cell-wide .data-wide {
  min-width: 300px;
}

.modal-content {
  position: relative;
}
.modal-content .close-absolute {
  top: 10px;
  right: 18px;
  position: absolute;
  z-index: 6;
}
.modal-content .sw-absolute {
  top: 9px;
  right: 40px;
  position: absolute;
  z-index: 6;
}
.modal-content .dropdown-more {
  top: 10px;
  right: 43px;
  position: absolute;
  z-index: 6;
}

.dropdown-more ul {
  background-color: #ffffff;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  min-width: 150px;
  overflow: hidden;
  border: none;
  padding: 0;
}
.dropdown-more ul li a {
  padding: 8px 16px;
  cursor: pointer;
  font-size: 14px;
  display: flex;
  align-items: center;
  color: #141516;
}
.dropdown-more ul li a:focus, .dropdown-more ul li a:active {
  background: #fff;
  color: #141516;
}
.dropdown-more .btn {
  padding: 0px 10px;
  border: none;
}
.dropdown-more .btn i {
  color: #7a7a7a;
  font-size: 15px;
}

.wrap-avatar {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  overflow: hidden;
  background: #a1e8fe;
  font-weight: 500;
  font-size: 11px;
  text-align: center;
  line-height: 24px;
  text-transform: uppercase;
  color: #333;
}
.wrap-avatar.l-avatar {
  width: 45px;
  height: 45px;
  font-size: 16px;
  line-height: 45px;
}
.wrap-avatar.m-avatar {
  width: 32px;
  height: 32px;
  font-size: 13px;
  line-height: 32px;
}
.wrap-avatar:hover {
  opacity: 0.8;
}
.wrap-avatar.more-users {
  background: none;
  color: #000;
  width: 20px;
  font-weight: normal;
  width: auto;
}
.wrap-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.wrap-avatar.ai-special-avatar {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 2px;
}
.wrap-avatar.ai-special-avatar img {
  object-fit: contain;
}

.user-info {
  line-height: normal;
  font-size: 12px;
}
.user-info .un {
  text-transform: capitalize;
}

.user-checklist {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.user-checklist .uc-checklist {
  display: flex;
}
.user-checklist ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.user-checklist ul li {
  list-style: none;
  display: inline-block;
  margin-right: 5px;
}
.user-checklist ul li:last-child {
  margin-right: 0;
}

.wrap-ai-sidebar {
  height: 100vh;
  overflow-y: auto;
  background: #f9f9f9;
}
.wrap-ai-sidebar .ai-header {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  padding: 14px 10px 14px 10px;
  text-align: right;
  z-index: 1;
  background: #f9f9f9;
}
.wrap-ai-sidebar .ai-header a {
  padding: 6px;
}
.wrap-ai-sidebar .ai-header a:hover {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 2px;
}
.wrap-ai-sidebar .ai-sidebar {
  padding: 0 10px;
}
.wrap-ai-sidebar .ai-sidebar .channel-collection {
  margin-bottom: 8px;
}
.wrap-ai-sidebar .ai-sidebar .channel-collection-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 10px;
  margin: 4px 0 6px;
  border-radius: 8px;
  color: #6c757d;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  background: rgba(0, 0, 0, 0.03);
}
.wrap-ai-sidebar .ai-sidebar .channel-collection-header:hover {
  background: rgba(0, 0, 0, 0.06);
}
.wrap-ai-sidebar .ai-sidebar .channel-collection-header.collection-unread {
  color: #0a4ef4;
  background: #eef5ff;
}
.wrap-ai-sidebar .ai-sidebar .collection-toggle-icon {
  display: inline-flex;
  width: 12px;
  justify-content: center;
  margin-right: 6px;
  color: inherit;
}
.wrap-ai-sidebar .ai-sidebar .collection-title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wrap-ai-sidebar .ai-sidebar .collection-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 18px;
  margin-left: 7px;
  padding: 0 6px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.08);
  color: inherit;
  font-size: 11px;
}
.wrap-ai-sidebar .ai-sidebar .collection-unread-dot {
  width: 8px;
  height: 8px;
  min-width: 8px;
  border-radius: 50%;
  background: #0a4ef4;
}
.wrap-ai-sidebar .ai-sidebar .c-item {
  padding: 7px 10px;
  border-radius: 8px;
  margin-bottom: 5px;
}
.wrap-ai-sidebar .ai-sidebar .c-item .wrap-post-info {
  display: none;
}
.wrap-ai-sidebar .ai-sidebar .c-item.item-active {
  background: #e3e3e3;
}
.wrap-ai-sidebar .ai-sidebar .c-item.item-unread {
  background: #eef5ff;
  box-shadow: inset 0 0 0 1px rgba(10, 78, 244, 0.12);
}
.wrap-ai-sidebar .ai-sidebar .c-item:hover {
  background: #e3e3e3;
}
.wrap-ai-sidebar .ai-sidebar .c-item:hover .wrap-post-info {
  display: block;
}
.wrap-ai-sidebar .ai-sidebar .c-item {
  display: flex;
  align-items: center;
  gap: 12px;
}
.wrap-ai-sidebar .ai-sidebar .channel-group-avatar {
  width: 45px;
  height: 45px;
  min-width: 45px;
  border-radius: 50%;
  overflow: hidden;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  background: #e9ecef;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06);
}
.wrap-ai-sidebar .ai-sidebar .channel-group-avatar.tile-count-1 {
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
}
.wrap-ai-sidebar .ai-sidebar .channel-group-avatar.tile-count-2 {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: 1fr;
}
.wrap-ai-sidebar .ai-sidebar .channel-group-avatar.tile-count-3 .avatar-tile:first-child {
  grid-row: span 2;
}
.wrap-ai-sidebar .ai-sidebar .avatar-tile {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 0.5px solid rgba(255, 255, 255, 0.9);
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  width: calc(100% + 1px);
  height: calc(100% + 1px);
}
.wrap-ai-sidebar .ai-sidebar .avatar-tile.ai-special-avatar {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 2px;
  border-radius: 50%;
}
.wrap-ai-sidebar .ai-sidebar .avatar-tile.one-user {
  border-radius: 50%;
}
.wrap-ai-sidebar .ai-sidebar .avatar-tile-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.avatar-tile.ai-special-avatar .wrap-ai-sidebar .ai-sidebar .avatar-tile-img {
  object-fit: contain;
}
.wrap-ai-sidebar .ai-sidebar .avatar-tile-text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.wrap-ai-sidebar .ai-sidebar .channel-content {
  flex: 1;
  min-width: 0;
}

.wrap-ai-content {
  height: 100vh;
  overflow-y: auto;
}
.wrap-ai-content .ai-header {
  padding: 10px 20px 10px 20px;
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
  z-index: 1;
}
.wrap-ai-content .ai-header::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #f9f9f9;
}
.wrap-ai-content .answer-box {
  position: sticky;
  width: 100%;
  bottom: 0;
  left: 0;
  background: #fff;
  z-index: 1;
  padding: 10px 20px;
}
.wrap-ai-content .answer-box div.wrap-ab {
  position: relative;
}
.wrap-ai-content .answer-box div.wrap-ab .wrap-textarea-auto-height {
  padding: 15px 43px 15px 5px;
}
.wrap-ai-content .answer-box div.wrap-ab textarea {
  display: block;
  min-height: 25px !important;
  padding-left: 9px !important;
}
.wrap-ai-content .answer-box div.wrap-ab .w-buttons {
  position: absolute;
  bottom: 12px;
  right: 10px;
}
.wrap-ai-content .answer-box div.wrap-ab .w-buttons .answer-button {
  background: #000;
  border-radius: 50%;
  padding: 0;
}
.wrap-ai-content .answer-box div.wrap-ab .w-buttons .answer-button.loading {
  padding: 3.5px;
}
.wrap-ai-content .ai-content {
  padding: 20px;
}
.wrap-ai-content .ai-content .mes-question {
  display: flex;
  justify-content: end;
  margin-bottom: 15px;
}
.wrap-ai-content .ai-content .mes-question .q-content {
  max-width: 80%;
  background: rgba(233, 233, 233, 0.5);
  padding: 6px 16px;
  border-radius: 20px;
}
.wrap-ai-content .ai-content .mes-answer .a-content {
  max-width: 85%;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
#loading-icon {
  animation: spin 2s linear infinite;
}

.card-checklist-count {
  color: #44546f;
}
.card-checklist-count.is-done {
  padding: 0 7px;
  line-height: 25px;
  background: #1f845a;
  color: #fff;
  border-radius: 3px;
  display: table;
}
.card-checklist-count.is-done svg path {
  fill: #fff;
}

/**
* End Ai
*/
.details-action {
  padding-right: 10px;
}

.column-title {
  font-size: 1.075rem;
  font-weight: 500;
  border-radius: 4px;
  padding: 0.5rem 1rem;
  margin: 0.5rem 0;
}
.column-title i {
  font-size: 12px;
}

.group-by {
  display: flex;
  align-items: center;
  padding: 10px 0 2px 0;
}
.group-by .grb-title {
  font-weight: normal;
  font-size: 13px;
}
.group-by .grb-opt .radio {
  font-size: 12px;
  padding-left: 12px;
  margin: 0;
}
.group-by .grb-opt .radio .radio-label {
  font-weight: normal;
}
.group-by .grb-opt .radio .radio-label::before {
  width: 16px;
  height: 16px;
  margin-right: 5px;
}

.no-arrow {
  width: 17px;
}

.wrap-unit-type {
  margin-bottom: 15px;
}
.wrap-unit-type .fw-bold {
  font-weight: 500 !important;
}

.fw-500 {
  font-weight: 500 !important;
}

.fw-400 {
  font-weight: 400 !important;
}

.column-content-box {
  font-weight: 500;
  padding-top: 10px;
  position: relative;
  font-size: 14px;
}
.column-content-box .alert-info {
  font-size: 13px;
}
.column-content-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 1rem;
  width: calc(100% - 2rem);
  height: 1px;
  background: #ececec;
}
.column-content-box .text-black,
.column-content-box .wrap-phone-email {
  color: #141516;
  font-size: 12px;
}
.column-content-box .text-black a,
.column-content-box .wrap-phone-email a {
  color: #141516;
}

.contact-hinfo.not-edit .rs {
  border-bottom: 1px solid #eee;
  min-height: 30px;
  padding: 5px 0;
  max-width: 100%;
  overflow: hidden;
  font-weight: 500;
}
.contact-hinfo.not-edit .rs .line {
  padding-bottom: 8px;
}
.contact-hinfo.not-edit .rs .btn-copy {
  font-size: 17px;
  color: #141516;
}
.contact-hinfo .note-item {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #eee;
}
.contact-hinfo .note-item:last-child {
  border: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.contact-hinfo .note-item .note-content {
  padding-top: 5px;
}
.contact-hinfo .note-content,
.contact-hinfo .line-1 {
  color: #000;
  font-size: 12px;
}
.contact-hinfo .date-time {
  color: #7b7b7b;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
}
.contact-hinfo .log-line .line-23 {
  color: #7b7b7b;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
}
.contact-hinfo .form-group {
  margin-bottom: 15px;
}
.contact-hinfo .form-group .form-label {
  color: #7b7b7b;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  margin-bottom: 2px;
}
.contact-hinfo .form-group .form-label .is-multi .ico-dropdown svg {
  transform: rotate(0);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.contact-hinfo .form-group .form-label .is-multi.open .ico-dropdown svg {
  transform: rotate(180deg);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.contact-hinfo .form-group .input-group .btn {
  font-size: 14px;
}
.contact-hinfo .form-group .form-control {
  padding: 0.5rem 0.75rem;
  font-size: 12px;
}
.contact-hinfo .form-group .mdc-text-field--outlined .mdc-text-field__input {
  font-size: 12px;
}
.contact-hinfo .form-group .mdc-text-field--outlined .mdc-text-field__input.mat-mdc-form-field-input-control {
  height: 100%;
}
.contact-hinfo .form-group .mdc-text-field--outlined.mat-mdc-text-field-wrapper .mat-mdc-form-field-infix {
  padding: 4px 0;
}
.contact-hinfo .form-group .mat-mdc-icon-button .mat-mdc-button-touch-target {
  width: 32px;
  height: 32px;
}
.contact-hinfo .form-group .mat-mdc-icon-button svg {
  fill: #7b7b7b;
}
.contact-hinfo .form-group .form-select {
  font-size: 12px;
  padding: 0.5rem 22px 0.5rem 8px;
  background-position: right 2px center;
}
.contact-hinfo .form-group .more-result .line {
  margin-top: 4px;
}
.contact-hinfo .form-group .form-result {
  display: flex;
  justify-content: space-between;
}
.contact-hinfo .btn.btn-custom-small {
  font-size: 12px !important;
}

.note-content {
  font-weight: 400;
}

.act-list i {
  font-size: 15px;
}

.f-edit-icon {
  margin-left: -15px;
  padding: 5px 0;
}

.padding-space {
  padding-left: 30px;
}

.contact-column .column-content-box::before {
  left: 0;
  width: 100%;
}

.contact-column .related-object,
.detail-column .related-object {
  padding: 10px;
  border: 1px solid #eee;
  border-radius: 6px;
  margin-bottom: 15px;
}
.contact-column .related-object .column-title,
.detail-column .related-object .column-title {
  margin: 0;
  padding: 0;
}
.contact-column .related-object .column-title .fa-plus,
.detail-column .related-object .column-title .fa-plus {
  font-size: 14px;
}
.contact-column .related-object .column-content,
.detail-column .related-object .column-content {
  padding-top: 10px;
}
.contact-column .column-title,
.detail-column .column-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}
.contact-column .box-column,
.contact-column .form-information,
.detail-column .box-column,
.detail-column .form-information {
  padding: 0 10px 10px 10px;
}

.related-item {
  margin-bottom: 15px;
}
.related-item .r-name {
  display: flex;
  justify-content: space-between;
  align-items: start;
}
.related-item .r-name .action-column {
  display: flex;
}
.related-item .r-name .wrap-avatar {
  margin-right: 8px;
}
.related-item .r-description {
  color: #7b7b7b;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
}

.h-scroll {
  overflow-y: auto;
}

.red-cross-wrapper {
  width: 38px;
  height: 38px;
  border: 2px solid red;
  border-radius: 50%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: white;
}
.red-cross-wrapper.small-icon {
  width: 18px;
  height: 18px;
  border-width: 1px;
}
.red-cross-wrapper.tiny-icon {
  width: 18px;
  height: 18px;
  border-width: 1px;
}
.red-cross-wrapper .cross {
  position: relative;
  width: 62%;
  height: 62%;
}
.red-cross-wrapper .cross::before, .red-cross-wrapper .cross::after {
  content: "";
  position: absolute;
  background-color: red;
}
.red-cross-wrapper .cross::before {
  width: 100%;
  height: 32%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.red-cross-wrapper .cross::after {
  width: 32%;
  height: 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.ot-create-issue {
  position: fixed;
  bottom: 45px;
  right: 15px;
  z-index: 6;
}
.ot-create-issue svg {
  width: 40px;
  height: 40px;
  cursor: pointer;
  border-radius: 50%;
  transition: box-shadow 0.3s ease;
  background: #fff;
}

.er-create-issue-hover {
  position: fixed;
  bottom: 44px;
  right: 13px;
}

.er-create-issue-hover-button {
  background-color: transparent;
  width: 40px;
  height: 40px;
  z-index: 10;
}

.er-create-issue-hover-menu {
  background-color: #f8faff;
  width: 240px;
  height: 160px;
  z-index: 5;
  padding: 10px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
}

.er-create-issue-hover-menu button {
  width: 100%;
}

.comments-box {
  margin-bottom: 15px;
}
.comments-box .r-name {
  display: flex;
  justify-content: space-between;
  align-items: start;
}
.comments-box .r-name .action-column {
  display: flex;
}
.comments-box .r-description {
  color: #7b7b7b;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
}

.detail-column {
  background: #fafafa;
  padding: 12px;
}
.detail-column .form-information,
.detail-column .box-column {
  background: #fff;
  border-radius: 10px;
  padding: 0 15px 0 15px;
  border: 1px solid #ecedee;
  margin-bottom: 15px;
}
.detail-column .form-information .column-title,
.detail-column .box-column .column-title {
  background: none;
  padding: 15px 0;
  margin: 0;
}
.detail-column .form-information .column-title i,
.detail-column .box-column .column-title i {
  font-size: 12px;
}
.detail-column .form-information:last-child,
.detail-column .box-column:last-child {
  margin-bottom: 0;
}
.detail-column .action-container {
  padding: 0 10px 20px 10px;
}
.detail-column.border-corner {
  border-radius: 10px;
}

.box-column a {
  color: #266df0;
}

.wrap-sw-opt {
  border: 1px solid #ecedee;
  border-radius: 10px;
  display: table;
  overflow: hidden;
}
.wrap-sw-opt .list-tabs {
  list-style: none;
  margin: 0;
  padding: 0;
  padding: 5px;
  background: #fafafa;
  display: flex;
}
.wrap-sw-opt .list-tabs li {
  padding-left: initial;
  margin-bottom: auto;
}
.wrap-sw-opt .list-tabs li::before {
  content: "";
}
.wrap-sw-opt .list-tabs li a {
  display: table;
  min-width: 80px;
  line-height: 35px;
  padding: 0 20px;
  text-align: center;
  color: #141516;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  border-radius: 8px;
}
.wrap-sw-opt .list-tabs li a.active {
  background: #266df0;
  color: #fff;
}

.booking-schedules .page-calendar {
  width: 100%;
}

.page-calendar {
  position: fixed;
  top: 66px;
}
.page-calendar .calendar_default_event_bar {
  background: none;
}
.page-calendar .calendar_default_event_bar .calendar_default_event_bar_inner {
  top: 0 !important;
  height: 100% !important;
}
.page-calendar .month_default_event_inner,
.page-calendar .calendar_default_event_inner {
  border-radius: 4px;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  background: none;
  color: #141516;
  border-color: #141516;
}
.page-calendar .month_default_event_continueleft .month_default_event_inner {
  border-radius: 4px;
}
.page-calendar .navigator_default_title,
.page-calendar .navigator_default_titleleft,
.page-calendar .navigator_default_titleright,
.page-calendar .navigator_default_main {
  border: none;
  background: none;
}
.page-calendar .navigator_default_weekend {
  background: none;
}
.page-calendar .navigator_default_select .navigator_default_cell_box {
  background: #ceecf9;
  opacity: 1;
}
.page-calendar .navigator_default_today .navigator_default_cell_box.navigator_default_todaybox {
  border: none;
  background: #357dbd;
}
.page-calendar .navigator_default_today .navigator_default_cell_text {
  color: #fff;
}
.page-calendar .navigator_default_today {
  color: #fff;
}
.page-calendar .navigator_default_title {
  color: #333333;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}
.page-calendar .navigator_default_busy {
  border: none;
}
.page-calendar .month_default_header_inner,
.page-calendar .calendar_default_colheader_inner,
.page-calendar .calendar_default_colheader_inner {
  color: #141516;
  font-size: 12px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  background: none;
  border-top: 1px solid rgb(192, 192, 192);
}
.page-calendar .calendar_default_rowheader_inner {
  color: #141516;
  font-size: 10px;
  font-style: normal;
  font-weight: 500;
  line-height: 5px; /* 50% */
}
.page-calendar .calendar_default_rowheader_minutes {
  vertical-align: baseline;
}
.page-calendar .calendar_default_rowheader_inner {
  border-bottom: none;
  background: none;
}
.page-calendar .calendar_default_corner_inner {
  border-bottom: none;
  background: none;
}
.page-calendar .navigator_default_month .navigator_default_cell_text {
  font-size: 10px;
  font-weight: normal;
}
.page-calendar .calendar_default_main {
  border: none;
  background: none;
}
.page-calendar .month_default_main {
  border-top: none;
}
.page-calendar .calendar-wrap {
  flex-wrap: nowrap;
  display: flex;
  justify-content: space-between;
}
.page-calendar .calendar-column {
  max-height: calc(100vh - 66px);
  overflow-y: auto;
}
.page-calendar .left-calendar {
  width: 220px;
}
.page-calendar .right-calendar {
  width: calc(100% - 230px);
}
.page-calendar .sw-dwm-date {
  display: flex;
  justify-content: space-between;
  padding: 6px 0;
}
.page-calendar .sw-dwm-date .vs-date {
  color: #141516;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
}
.page-calendar .sw-dwm-date .sw-dwm {
  display: flex;
  align-items: center;
}
.page-calendar .sw-dwm-date .sw-dwm .navigator_default_titleleft::before {
  top: 8px;
}
.page-calendar .sw-dwm-date .sw-dwm .navigator_default_titleleft::after {
  bottom: 6px;
}
.page-calendar .sw-dwm-date .sw-dwm .navigator_default_titleright::before {
  bottom: 6px;
}
.page-calendar .sw-dwm-date .sw-dwm .navigator_default_titleright::after {
  top: 8px;
}
.page-calendar .sw-dwm-date .sw-dwm .today-date {
  border: 1px solid #266df0;
  color: #266df0;
  background: none;
  height: 21px;
  line-height: 19px;
  font-size: 12px;
  border-radius: 10px;
  padding: 0 14px;
  margin-left: 10px;
}
.page-calendar .list-legend {
  padding: 0;
  margin: 0;
  list-style: none;
}
.page-calendar .list-legend li {
  display: flex;
  padding: 5px 0;
  align-items: center;
  font-size: 12px;
}
.page-calendar .list-legend li .square {
  width: 16px;
  height: 16px;
  border-radius: 2px;
  margin-right: 5px;
}
.page-calendar .navigator_default_line {
  border: none;
}
.page-calendar .navigator_default_titleleft {
  font-size: 0px;
  position: relative;
  width: 20px !important;
  height: 20px !important;
}
.page-calendar .navigator_default_titleleft::before {
  position: absolute;
  content: "";
  left: 0;
  top: 64%;
  height: 1px;
  width: 40%;
  background: rgb(0, 0, 0);
  transform: rotate(321deg);
}
.page-calendar .navigator_default_titleleft::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: 8%;
  height: 1px;
  width: 40%;
  background: rgb(0, 0, 0);
  transform: rotate(38deg);
}
.page-calendar .navigator_default_titleright {
  font-size: 0px;
  position: relative;
  width: 20px !important;
  height: 20px !important;
}
.page-calendar .navigator_default_titleright::before {
  position: absolute;
  content: "";
  right: 0;
  bottom: 8%;
  height: 1px;
  width: 40%;
  background: rgb(0, 0, 0);
  transform: rotate(321deg);
}
.page-calendar .navigator_default_titleright::after {
  position: absolute;
  content: "";
  right: 0;
  top: 64%;
  height: 1px;
  width: 40%;
  background: rgb(0, 0, 0);
  transform: rotate(38deg);
}

.note-column input {
  border: none;
  background: none !important;
  padding: 0.25rem 0;
}
.note-column span {
  padding: 0.25rem 0;
}

td .wrap-textarea-auto-height.is-checklist:not(.focused),
td .wrap-textarea-auto-height textarea {
  background: none !important;
}
td .wrap-textarea-auto-height {
  background: none !important;
}

.left-calendar .l-title {
  font-size: 15px !important;
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  display: table;
  width: 100%;
  cursor: pointer;
  position: relative;
}
.left-calendar .l-title::before {
  position: absolute;
  width: calc(100% + 20px);
  left: -10px;
  height: 100%;
  background: rgb(189, 193, 198);
  display: none;
}
.left-calendar .l-title.active::before {
  display: block;
}
.left-calendar .l-title.active i {
  transform: rotate(180deg);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.left-calendar .l-title i {
  transform: rotate(0);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  font-size: 13px;
  margin-right: 20px;
}

.customer-icons .et-heart {
  display: flex;
  justify-content: center;
}
.customer-icons .act-heart i {
  font-size: 16px;
  display: block;
  color: #adadad;
}
.customer-icons .act-heart svg {
  color: #cbd5e1;
}
.customer-icons .act-heart:hover svg {
  color: #d97706;
  background: var(--hover);
}

body .btn-close {
  outline: none;
  box-shadow: none;
  border: none;
}
body .btn-close:active, body .btn-close:focus {
  outline: none;
  box-shadow: none;
  border: none;
}

.user-row {
  display: flex;
}
.user-row .user-detail .comment-box {
  background: #f8f8f8;
  border-radius: 0 20px 20px 20px;
  padding: 20px;
}
.user-row .user-detail .comment-box .username {
  font-size: 16px;
  font-weight: 500;
}
.user-row .user-detail .comment-box .comment {
  font-size: 12px;
  font-weight: 500;
}
.user-row .user-detail .date-time-box {
  text-align: right;
  font-size: 12px;
  color: #383c40;
  margin-top: 5px;
}
.user-row .avatar {
  margin-right: 15px;
}
.user-row.user-row-reply {
  justify-content: flex-end;
  margin-left: auto;
  margin-right: 0;
}
.user-row.user-row-reply .user-detail .comment-box {
  background: #266DF0;
  border-radius: 20px 0 20px 20px;
  color: #FFFFFF;
}
.user-row.user-row-reply .user-detail .date-time-box .check {
  color: #3AB174;
  padding-left: 5px;
  font-size: 15px;
}
.user-row.user-row-reply .avatar {
  margin: 0 0 0 15px;
}

.stars i {
  margin-right: 3px;
  color: #FFB320;
  font-size: 14px;
}
.stars i:last-child {
  margin-right: 0;
}

.box-analytics {
  border: 1px solid #ebebeb;
  border-radius: 10px;
  padding: 16px;
}
.box-analytics .txt-label {
  font-weight: 500;
  font-size: 16px;
  color: #000000;
  padding-bottom: 5px;
}
.box-analytics .txt-number {
  font-weight: 600;
  font-size: 29px;
  color: #141516;
}

.f-icons {
  position: relative;
}

.qr-popup {
  position: absolute;
  z-index: 1000;
  background: #fff;
  border: 1px solid #f1f1f1;
  padding: 10px;
  right: -11px;
  top: 30px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.form-group.date-field .input-group .form-control {
  padding-right: 30px;
}
.form-group.date-field .input-group .btn-custom-outline-secondary {
  position: absolute;
  width: 100%;
  background: none;
  border: none;
  height: 43px;
  text-align: right;
  z-index: 1;
}
.form-group.date-field .input-group .btn {
  background: none;
  border: none;
}

.form-container #group-controls-2 .col-lg-5 > .row {
  position: sticky;
  top: 65px;
}

.modal-form #group-controls-2 .col-lg-5 > .row {
  position: sticky;
  top: 0;
}

.box-user {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 0;
}
.box-user .box-left {
  display: flex;
}
.box-user .box-left .us-name {
  color: #141516;
}
.box-user .box-left .us-position {
  color: #3AB174;
}
.box-user .box-right .count {
  font-size: 12px;
  color: #333333;
}
.box-user .avatar {
  margin-right: 15px;
}

.list-group .row-title {
  color: #4d4f52;
  font-family: Jost, "Jost Fallback", sans-serif;
}
.list-group .row-result {
  color: #141516;
  font-weight: 500;
  font-family: Jost, "Jost Fallback", sans-serif;
}

.select-box.disabled {
  opacity: 0.8;
  cursor: not-allowed;
}

.box-bottom .wrap-s {
  padding: 4px 4px 4px 16px;
  justify-content: space-between;
  align-items: center;
  border-radius: 8px;
  border: 1px solid #ECEDEE;
}
.box-bottom .wrap-s input.form-control {
  border: none;
  outline: none;
  box-shadow: none;
}
.box-bottom .wrap-s .input-group-prepend {
  padding-right: 5px;
  line-height: 40px;
  font-size: 20px;
  color: #adadad;
}
.box-bottom .wrap-s .btn {
  border-radius: 0 6px 6px 0;
}

.contact-status {
  border-radius: 8px;
  display: table;
  align-items: center;
  justify-content: center;
}
.contact-status .dot-circle {
  height: 8px;
  width: 8px;
  border-radius: 50%;
  display: inline-block;
  margin-right: 6px;
}
.contact-status.status-1 {
  color: rgb(203, 77, 68);
}
.contact-status.status-1 .dot-circle {
  background: rgb(203, 77, 68);
}
.contact-status.status-1.have-org {
  color: #4db6ac;
}
.contact-status.status-1.have-org .dot-circle {
  background: #4db6ac;
}
.contact-status.status-2 {
  color: rgb(52, 151, 70);
}
.contact-status.status-2 .dot-circle {
  background: rgb(52, 151, 70);
}
.contact-status.status-3 {
  color: rgb(255, 179, 32);
}
.contact-status.status-3 .dot-circle {
  background: rgb(255, 179, 32);
}
.contact-status.status-4 {
  color: rgb(211, 89, 89);
}
.contact-status.status-4 .dot-circle {
  background: rgb(211, 89, 89);
}
.contact-status.status-5 {
  color: rgb(10, 78, 244);
}
.contact-status.status-5 .dot-circle {
  background: rgb(10, 78, 244);
}

.contact-total {
  font-size: 14px;
  font-weight: 500;
  color: #383c40;
}
.contact-total .dot-circle {
  height: 14px;
  width: 14px;
  border-radius: 50%;
  display: inline-block;
  vertical-align: middle;
  margin-right: 8px;
}
.contact-total.total-normal .dot-circle {
  background: rgb(77, 182, 172);
}
.contact-total.total-warning .dot-circle {
  background: rgb(255, 168, 0);
}
.contact-total.total-critical .dot-circle {
  background: rgb(203, 77, 68);
}

.item-description {
  font-size: 12px;
  color: #383c40;
}

.total-label {
  color: #383c40;
}

.total-value {
  font-weight: 500;
}

.btn-toggle {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 1px solid #ECEDEE;
  position: relative;
}
.btn-toggle::before {
  position: absolute;
  width: 16px;
  height: 2px;
  background: #141516;
  content: "";
  top: 50%;
  border-radius: 10px;
  left: 12px;
}
.btn-toggle::after {
  position: absolute;
  height: 16px;
  width: 2px;
  background: #141516;
  content: "";
  top: 12px;
  border-radius: 10px;
  left: 50%;
}
.btn-toggle.toggle-open {
  border-color: #266DF0;
}
.btn-toggle.toggle-open::before {
  background: #266DF0;
}
.btn-toggle.toggle-open::after {
  display: none;
}

.list-attachments {
  list-style: none;
  margin: 0;
  padding: 0;
}
.list-attachments li {
  display: inline-block;
  position: relative;
  margin-right: 15px;
  border: 1px solid #ECEDEE;
  border-radius: 8px;
  padding: 16px 38px 16px 16px;
  margin-bottom: 15px;
}
.list-attachments li .remove-icon {
  position: absolute;
  right: 16px;
  top: 50%;
  margin-top: -10px;
}
.list-attachments li .file-info {
  display: flex;
}
.list-attachments li .file-info .file-icon {
  margin-right: 10px;
}
.list-attachments li .file-info .file-name .size {
  font-size: 10px;
  color: #383c40;
}
.list-attachments li:last-child {
  margin-right: 0;
}

.wrap-upload-file {
  cursor: pointer;
}

.wrap-attachments .list-attachments {
  margin-right: 15px;
  display: inline-block;
  vertical-align: top;
}
.wrap-attachments .wrap-upload-file {
  display: inline-block;
  width: 200px;
  padding: 10px 20px;
}

.wrap-title {
  display: flex;
  margin-bottom: 10px;
}
.wrap-title .page-title {
  margin-right: 15px;
  margin-bottom: 10px;
}
.wrap-title .list-action {
  display: flex;
  align-items: center;
}
.wrap-title .list-action .list {
  margin-right: 10px;
}
.wrap-title .list-action .list i {
  color: #266DF0;
  font-size: 18px;
}
.wrap-title .list-action .bookmark i {
  font-size: 18px;
}

.wrap-tags {
  display: flex;
  align-items: center;
}
.wrap-tags ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.wrap-tags ul li {
  display: inline-block;
  padding-right: 10px;
  vertical-align: middle;
}
.wrap-tags ul li a {
  margin: 0;
  padding: 0 15px;
  line-height: 28px;
  height: 28px;
  border-radius: 100px;
  display: table;
  background: rgba(38, 109, 240, 0.15);
}
.wrap-tags .btn-tag {
  padding: 0 20px;
  height: 34px;
  line-height: 34px;
  color: #3AB174;
  border: 1px dashed #3AB174;
  border-radius: 100px;
  background: #FFFFFF;
  font-size: 20px;
}

.break-wrap {
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.no-wrap {
  white-space: nowrap;
}

.text-blue {
  color: #266df0;
}

.page-tab-title {
  margin-bottom: 25px;
  margin-top: 10px;
}
.page-tab-title ul {
  margin: 0;
  padding: 0;
  display: flex;
}
.page-tab-title ul li {
  list-style: none;
  position: relative;
}
.page-tab-title ul li::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 20px;
  background: #6f767e;
}
.page-tab-title ul li:last-child::after {
  display: none;
}
.page-tab-title ul li a {
  padding: 0px 10px;
  line-height: 20px;
  font-size: 14px;
  font-weight: 500;
  color: #383c40;
  display: table;
  margin-bottom: -1px;
}
.page-tab-title ul li a.active {
  color: #266DF0;
  font-weight: 600;
}

.contact-action .light-grey-box h5 i {
  margin-right: 5px;
}

.sticky-column .sectionFormGroupSelected,
.sticky-column .fieldFormGroupSelected {
  position: sticky;
  top: 0;
}

.page-content .sticky-column .sectionFormGroupSelected,
.page-content .sticky-column .fieldFormGroupSelected {
  position: sticky;
  top: 220px;
}
.page-content .ng-select.ng-select-opened .ng-select-container,
.page-content .ng-dropdown-panel {
  z-index: 5;
}
.page-content .page-header {
  position: relative;
  top: 0;
  z-index: inherit;
}
.page-content .page-content {
  padding-left: 0;
  padding-right: 0;
}
.page-content .page-content .mf-container {
  padding-left: 0;
  padding-right: 0;
}

.position-close-btns {
  display: flex;
  align-items: center;
  position: absolute;
  z-index: 11;
  right: 14px;
  top: 15px;
}

.kanban-detail-act-dialog {
  padding: 0 !important;
}

.ot-sub-header {
  position: sticky;
  top: 100px;
  background: #fff;
  z-index: 4;
}

.page-sub-header {
  position: sticky;
  top: 168px;
  background: #fff;
  z-index: 4;
}
.page-sub-header.not-tag-detail {
  top: 119px;
}
.page-sub-header.entry-sub-header {
  top: 156px;
}
.page-sub-header.sub-header-dialog {
  top: 54px;
}
.page-sub-header.page-sub-header--address-breadcrumb {
  top: 139px;
}
.page-sub-header.page-sub-header--none-fix {
  position: relative;
  top: 0;
}

.ngb-dp-header ngb-datepicker-navigation-select > .form-select {
  padding: 0 6px;
  margin: 0 2px;
}

.dropdown-menu.show {
  min-width: 215px;
}

.action-container {
  padding: 0 15px;
}

.row-time {
  padding-top: 20px;
  padding-bottom: 20px;
}
.row-time .time {
  width: 100%;
  border-radius: 10px;
  border: 1px solid #ecedee;
  background: #fafafa;
  height: 70px;
  color: #1a1d1f;
  font-size: 32px;
  font-weight: 600;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
}
.row-time .text {
  color: #333;
  text-align: center;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
}

body .box-title h4 {
  font-size: 18px;
  font-weight: 500;
}
body .box-title img {
  margin-right: 5px;
}

.text-dark {
  color: #333;
}
.text-dark a {
  color: #333;
}

.form-form-edit .text-grey {
  font-style: italic;
}

.fnumber-sqft {
  padding-right: 10px;
  display: flex;
  justify-content: space-between;
  align-items: start;
}
.fnumber-sqft.sqft-table {
  justify-content: start;
}
.fnumber-sqft > span .idot {
  display: inline-block;
  position: relative;
  width: 10px;
  height: 12px;
}
.fnumber-sqft > span .idot::before {
  position: absolute;
  top: 6px;
  left: 3px;
  content: "";
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #000;
}

.custom-select-search {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.s-tz-field {
  width: 100%;
  border: none;
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 1;
}
.s-tz-field .mat-mdc-form-field-focus-overlay {
  display: none;
}
.s-tz-field .mat-mdc-form-field-flex {
  height: auto;
}
.s-tz-field .mdc-text-field--filled:not(.mdc-text-field--disabled) {
  background: none;
}
.s-tz-field .mat-mdc-form-field-infix {
  padding: 12px 0 !important;
  min-height: auto;
}
.s-tz-field .mdc-line-ripple::before {
  border-color: #eaecf2;
}

.btn-open-tzlist {
  font-size: inherit;
  padding: 3px;
  margin-left: -5px;
  margin-right: 5px;
}

.gantt-table-body .gantt-table-item:nth-child(2n) {
  background: #fff;
}

.wrap-phone-email img,
.wrap-phone-email a {
  vertical-align: middle;
}

.wrap-unit-type .text-nowrap {
  vertical-align: middle;
}
.wrap-unit-type .text-nowrap .edit,
.wrap-unit-type .text-nowrap .delete {
  display: inline-block;
}
.wrap-unit-type .text-nowrap .edit img,
.wrap-unit-type .text-nowrap .delete img {
  vertical-align: top;
}

body .modal.custom-book-appointment-modal .modal-dialog .modal-content {
  padding-bottom: 0;
}
body .modal {
  width: auto;
}
@media (min-width: 992px) {
  body .modal .modal-kanbanLevelColumnCard {
    height: calc(100vh - 180px);
  }
}
@media (min-width: 992px) {
  body .modal .modal-kanbanLevelColumnCard .kanban-card-column {
    height: 100%;
    overflow-y: auto;
  }
}
body .modal .modal-dialog {
  position: fixed;
  margin: auto;
  height: 100%;
  transform: none !important;
  transition: none;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
body .modal .modal-dialog .modal-content {
  height: 100%;
  position: unset;
  overflow-y: auto;
}
body .modal .modal-dialog .modal-content .page-header {
  top: 0;
}
body .modal .modal-dialog .modal-content .ot-header {
  padding-right: 56px;
}
body .modal .modal-dialog .modal-content .s-by-word ul {
  margin: 5px 0;
}
body .modal .modal-dialog .modal-content h4 {
  font-size: 22px;
  font-weight: 600;
  line-height: normal;
}
body .modal .modal-dialog .modal-content h5 {
  font-size: 16px;
  margin-bottom: 8px;
  margin-top: 8px;
}
body .modal .modal-dialog .modal-content h5 i {
  margin-right: 5px;
}
body .modal.right {
  --bs-modal-width: 550px;
}
body .modal.right.fade .modal-dialog {
  transform: none !important;
  right: -550px;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  width: 100%;
}
body .modal.right.fade.show .modal-dialog {
  right: 0 !important;
}
body .modal.small-window {
  --bs-modal-width: 380px;
  --mo-modal-width: 380px;
}
body .modal.small-window.right.fade .modal-dialog {
  right: -380px;
}
body .modal.medium-window {
  --bs-modal-width: 600px;
  --mo-modal-width: 600px;
}
body .modal.medium-window.right.fade .modal-dialog {
  right: -600px;
}
body .modal.large-window {
  --bs-modal-width: 1100px;
  --mo-modal-width: 1000px;
}
body .modal.large-window.right.fade .modal-dialog {
  right: -1100px;
}
body .modal.x-large-window {
  --bs-modal-width: 1440px;
  --mo-modal-width: 1200px;
}
body .modal.x-large-window .ot-content {
  max-width: 1200px;
  width: 100%;
}
body .modal.x-large-window.right.fade .modal-dialog {
  right: -1440px;
}
body .modal.no-padding-bottom .modal-content {
  padding-bottom: 0 !important;
}

.modal-body.with-fixed-button {
  padding-bottom: 80px !important;
}

.dropdown-more-financials.dropdown-more {
  position: relative !important;
  top: 0;
  right: -3px;
}

.duration-text {
  color: #266df0;
}

.contact-action .light-grey-box,
.entry-action .light-grey-box,
.org-action .light-grey-box,
.page-action .light-grey-box {
  position: relative;
}
.contact-action .light-grey-box .gc,
.entry-action .light-grey-box .gc,
.org-action .light-grey-box .gc,
.page-action .light-grey-box .gc {
  position: absolute;
  width: 100%;
  top: -190px;
  left: 0;
}

.relative-ps {
  position: relative;
}
.relative-ps .submission-item {
  position: absolute;
  width: 100%;
  top: -165px;
  left: 0;
}

.label-status {
  background: #ecf1fe;
  color: #266df0;
  line-height: 25px;
  border-radius: 10px;
  display: table;
  width: 125px;
  text-align: center;
  padding: 0 30px;
  margin: 0 auto;
  font-size: 11px;
}
.label-status.label-draft {
  background: #fdd9e2;
  color: #e91e63;
}
.label-status.label-new {
  background: #ecf1fe;
}
.label-status.label-proposal {
  background: #e5f5db;
  color: #37a603;
}
.label-status.label-accepted {
  background: #dbf7ca;
}
.label-status.label-estimatewithdrawn {
  background: #d35959;
  color: #ffe2e2;
  width: 130px;
}
.label-status.label-estimatereceived {
  color: #349746;
  background: #d9f2de;
  width: 130px;
}
.label-status.label-estimateprovided {
  background: #349746;
  color: #d9f2de;
  width: 130px;
}
.label-status.label-estimatesent {
  background: #d9f2de;
  color: #349746;
  width: 130px;
}
.label-status.label-submitted {
  background: #fff5e1;
  color: #ffb320;
}
.label-status.label-resubmitted {
  background: #fff5e1;
  color: #ffb320;
}
.label-status.label-completed {
  background: #dbf7ca;
  color: #37a603;
}
.label-status.label-jobrequestcancelled {
  background: red;
  color: white;
}
.label-status.label-jobrequestcompleted {
  background: green;
  color: white;
}

#ot-call-center-agent-panel {
  background: #202125;
  min-height: 350px;
  margin-top: -23px;
}

.ac-row {
  flex-wrap: wrap;
  align-items: flex-start;
}
.ac-row .as-sidebar {
  flex: 1 auto;
  position: sticky;
  top: 129px;
  overflow-y: auto;
}

.ac-box,
.main-box,
.box-header {
  position: relative;
}
.ac-box .ac,
.main-box .ac,
.box-header .ac {
  position: absolute;
  width: 100%;
  top: -150px;
  left: 0;
}

.form-action .group-controls {
  position: relative;
}
.form-action .group-controls .gc {
  position: absolute;
  width: 100%;
  top: -230px;
  left: 0;
}

.entry-content .entry-box {
  position: relative;
}
.entry-content .entry-box .gc {
  position: absolute;
  width: 100%;
  top: -230px;
  left: 0;
}

.fixheader {
  position: sticky;
  top: 0;
  background: #fff;
  padding: 0 21px 10px 21px;
  z-index: 1;
}

.confirm-btns {
  margin-top: 20px;
}
.confirm-btns .btn {
  min-width: 150px;
  margin-right: 10px;
}

.blue-text {
  color: #266df0;
}

.nb-thumb {
  height: 250px;
  text-align: center;
}
.nb-thumb img {
  width: auto;
  height: 100%;
  object-fit: cover;
}

.nearby-business-map-view {
  display: flex;
  gap: 12px;
  min-height: 420px;
}

.nearby-business-map-list {
  width: 33%;
  flex: 0 0 33%;
  min-width: 260px;
  height: 420px;
  border: 1px solid #ecedee;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.nearby-business-map-list-head {
  padding: 12px 14px;
  border-bottom: 1px solid #ecedee;
  background: #fafafa;
}

.nearby-business-map-list-body {
  flex: 1 1 auto;
  overflow-y: auto;
  min-height: 0;
}

.nearby-business-map-item {
  display: flex;
  padding: 10px 12px;
  border-bottom: 1px solid #f1f2f3;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.nearby-business-map-item:hover, .nearby-business-map-item:focus {
  background: #f8f9fa;
  outline: none;
}
.nearby-business-map-item.is-active {
  background: #eef5ff;
  box-shadow: inset 3px 0 0 #1e88e5;
}
.nearby-business-map-item:last-child {
  border-bottom: 0;
}

.nearby-business-map-info {
  min-width: 0;
  flex: 1 1 auto;
}

.nearby-business-map-metrics {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 4px;
  white-space: nowrap;
}

.nearby-business-map-empty {
  padding: 16px 14px;
}

.nearby-business-map-loading {
  padding: 12px 14px;
  border-bottom: 1px solid #f1f2f3;
}

.nearby-business-map-canvas-wrap {
  flex: 1 1 auto;
  min-width: 0;
}

.nearby-business-map-layers {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  padding: 8px 10px;
  margin-bottom: 8px;
  border: 1px solid #ecedee;
  border-radius: 8px;
  background: #fafafa;
}

.nearby-business-map-layer {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 12px;
  color: #383c40;
  white-space: nowrap;
  cursor: pointer;
}
.nearby-business-map-layer input {
  margin: 0;
}

.nearby-business-map-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  flex: 0 0 9px;
  display: inline-block;
}

.nearby-business-map-canvas {
  width: 100%;
  height: 373px;
  border-radius: 8px;
  border: 1px solid #ecedee;
  overflow: hidden;
}

.nearby-business-custom-marker {
  --nearby-business-marker-color: #1e88e5;
  position: relative;
  width: 36px;
  height: 44px;
  display: flex;
  justify-content: center;
  cursor: pointer;
  filter: drop-shadow(0 3px 5px rgba(0, 0, 0, 0.24));
}

.nearby-business-custom-marker-pin {
  width: 34px;
  height: 34px;
  border: 3px solid var(--nearby-business-marker-color);
  border-radius: 50%;
  background: #fff;
  color: var(--nearby-business-marker-color);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  font-size: 15px;
  line-height: 1;
}

.nearby-business-custom-marker-avatar {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.nearby-business-custom-marker-pointer {
  position: absolute;
  left: 50%;
  bottom: 3px;
  width: 12px;
  height: 12px;
  background: var(--nearby-business-marker-color);
  border: 2px solid #fff;
  transform: translateX(-50%) rotate(45deg);
  border-radius: 0 0 3px 0;
}

.nearby-business-map-popup {
  display: flex;
  gap: 10px;
  min-width: 220px;
  max-width: 300px;
  padding: 2px;
}

.nearby-business-map-popup-avatar,
.nearby-business-map-popup-icon {
  width: 42px;
  height: 42px;
  border-radius: 8px;
  flex: 0 0 42px;
}

.nearby-business-map-popup-avatar {
  object-fit: cover;
}

.nearby-business-map-popup-icon {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.nearby-business-map-popup-body {
  min-width: 0;
}

.nearby-business-map-popup-type {
  font-size: 11px;
  line-height: 1.2;
  color: #6c757d;
  text-transform: uppercase;
  letter-spacing: 0;
  margin-bottom: 2px;
}

.nearby-business-map-popup-name {
  font-size: 13px;
  line-height: 1.25;
  font-weight: 600;
  color: #212529;
}

.nearby-business-map-popup-address,
.nearby-business-map-popup-meta {
  font-size: 12px;
  line-height: 1.35;
  color: #6c757d;
  margin-top: 4px;
}

@media (max-width: 991.98px) {
  .nearby-business-map-view {
    flex-direction: column;
  }
  .nearby-business-map-list {
    width: 100%;
    flex-basis: auto;
    min-width: 0;
  }
  .nearby-business-map-list-body {
    max-height: 260px;
  }
}
.form-select.td-select {
  width: 135px;
  height: auto;
  border: 1px solid #ccc;
  border-radius: 4px;
  outline: none;
  background-size: 16px;
  background-repeat: no-repeat;
  background-position: right center;
}
.form-select.td-select:hover, .form-select.td-select:active, .form-select.td-select:focus {
  outline: none;
  box-shadow: none;
}
.form-select.td-select.inprogress {
  border-color: #ffb320;
  color: #ffb320;
  background-image: url("../images/icons/ctrl-down-progress.svg");
  background-color: #fff5e1;
}
.form-select.td-select.done {
  border-color: #3ab174;
  color: #3ab174;
  background-image: url("../images/icons/ctrl-down-done.svg");
  background-color: #d9f2de;
}
.form-select.td-select.new {
  border-color: #266df0;
  color: #266df0;
  background-color: #ecf1fe;
  background-image: url("../images/icons/ctrl-down-new.svg");
}
.form-select.td-select.disabled {
  opacity: 0.7;
  cursor: not-allowed;
  pointer-events: none;
  background-image: none;
  text-align: center;
  padding: 0 10px;
}

.ngb-toasts .toast-body {
  padding: 10px;
  font-size: 14px;
}
.ngb-toasts .toast-header {
  font-size: 16px;
}

.mat-datepicker-actions .mat-mdc-button-base + .mat-mdc-button-base {
  background-color: #0d6efd;
}

.mat-mdc-outlined-button:not(:disabled) {
  color: #0d6efd;
}

body .mat-mdc-form-field-bottom-align::before {
  height: auto;
  display: block;
}

.list-questions {
  position: relative;
}
.list-questions .sb-question {
  position: absolute;
  right: 0;
  top: -68px;
}
.list-questions.form-answer .question-box .value-grades {
  padding: 5px 12px;
  border-radius: 30px;
  border: 1px dashed #22ba4d;
  display: table;
  color: #3ab174;
  font-weight: 500;
}
.list-questions.form-answer .question-box .value-grades input {
  border: none;
  width: 40px;
  color: #3ab174;
}
.list-questions.form-answer .question-box .value-grades.invalid {
  border-color: red;
}
.list-questions.form-answer .question-box .value-grades.invalid input {
  color: red;
}

.question-box {
  position: relative;
}
.question-box .box-title {
  margin-bottom: 5px;
}
.question-box .box-title h3 {
  color: #266df0;
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 0;
}
.question-box .box-content {
  display: table;
  width: 100%;
}
.question-box .box-content .q-text {
  color: #141516;
  font-size: 14px;
}
.question-box .box-content .q-text p {
  color: #141516;
  font-size: 14px;
}
.question-box .list-multi-choice .a-item {
  background: #edf1f8;
  border-radius: 8px;
  padding: 8px 12px;
  color: #141516;
}
.question-box .list-multi-choice .a-item .a-num {
  text-transform: uppercase;
  margin-right: 10px;
  width: 20px;
  height: 20px;
  line-height: 20px;
  border-radius: 50%;
  text-align: center;
  font-weight: 500;
  background: #fff;
}
.question-box .list-multi-choice .a-item.active {
  background: #22ba4d;
  color: #ffffff;
}
.question-box .list-multi-choice .a-item.active .a-num {
  color: #22ba4d;
}

table tr.current-user-active td {
  background: #d6ebd6;
}
table tr.collapsed tr {
  display: none;
}

.wrap-project-title {
  position: relative;
  padding-left: 30px;
  min-height: 35px;
  display: flex;
  align-items: center;
}
.wrap-project-title .click-title {
  position: absolute;
  top: 0;
  left: 25px;
  width: calc(100% - 25px);
  height: 100%;
  z-index: 1;
}
.wrap-project-title label a {
  color: #333 !important;
}
.wrap-project-title .custom-checkbox {
  position: static;
  padding-left: 28px;
}
.wrap-project-title .custom-checkbox .checkmark {
  top: 7px;
  left: 30px;
}
.wrap-project-title .ex-button {
  position: absolute;
  left: 0;
  border: 1px solid #ecedee;
  border-radius: 4px;
  width: 24px;
  height: 24px;
  top: 5px;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.wrap-project-title .ex-button span {
  position: relative;
  width: 100%;
  height: 100%;
  display: table;
}
.wrap-project-title .ex-button span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 6.5px;
  width: 10px;
  height: 1px;
  background: #000;
}
.wrap-project-title .ex-button span::after {
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  content: "";
  position: absolute;
  top: 6.5px;
  left: 50%;
  width: 1px;
  height: 10px;
  background: #000;
}
.wrap-project-title .ex-button.minus {
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.wrap-project-title .ex-button.minus span::after {
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  display: none;
}
.wrap-project-title .ex-button:hover, .wrap-project-title .ex-button.active {
  border-color: #266df0;
}
.wrap-project-title .ex-button:hover span::before, .wrap-project-title .ex-button:hover span::after, .wrap-project-title .ex-button.active span::before, .wrap-project-title .ex-button.active span::after {
  background-color: #266df0;
}

.buttons-tab-title {
  border-radius: 10px;
  border: 1px solid #ecedee;
  background: #fafafa;
  padding: 4px;
}
.buttons-tab-title .nav-item {
  border-radius: 8px;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
}
.buttons-tab-title .nav-item:hover, .buttons-tab-title .nav-item.active {
  background: #266df0;
  border-color: #266df0;
  color: #ffffff;
}

body h3.course-title {
  font-size: 24px;
  font-weight: 700;
  color: #212529;
}

.sb-sidebar {
  max-width: 330px !important;
}

.row.row--small-padding {
  margin-right: -5px;
  margin-left: -5px;
}
.row.row--small-padding > [class*=col-] {
  padding-right: 5px;
  padding-left: 5px;
}
.row.row--medium-padding {
  margin-right: -8px;
  margin-left: -8px;
}
.row.row--medium-padding > [class*=col-] {
  padding-right: 8px;
  padding-left: 8px;
}
.row.row--large-padding {
  margin-right: -15px;
  margin-left: -15px;
}
.row.row--large-padding > [class*=col-] {
  padding-right: 15px;
  padding-left: 15px;
}

.popup-photos.modal.show .modal-dialog {
  width: 100%;
  max-width: 100%;
  padding: 10px;
}
.popup-photos.modal.show .modal-dialog img {
  max-width: 800px;
}
.popup-photos.modal.show .modal-dialog .photo-item {
  display: table;
  margin: 0 auto;
}

.wrap-event-public {
  position: relative;
  align-items: flex-start;
}
.wrap-event-public .left-column,
.wrap-event-public .right-column {
  position: sticky;
  top: 0;
}
.wrap-event-public .left-column .by-container,
.wrap-event-public .right-column .by-container {
  padding: 0;
}

.wrap-article-public {
  position: relative;
  align-items: flex-start;
}
.wrap-article-public .left-column,
.wrap-article-public .right-column {
  position: sticky;
  top: 0;
}
.wrap-article-public .left-column .by-container,
.wrap-article-public .right-column .by-container {
  padding: 0;
}

.list-categories {
  position: relative;
  justify-content: center;
}
.list-categories .category-item .category-info {
  border: none;
  padding-top: 10px;
}
.list-categories .category-item .category-thumbnail {
  width: 150px;
  height: 150px;
  display: table;
  margin: 0 auto;
  border-radius: 50%;
  overflow: hidden;
  background: #ccc;
}
.list-categories .category-item .category-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.list-categories .category-item .category-thumbnail:hover img {
  transform: scale(1.2, 1.2);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.list-categories .owl-theme .owl-nav {
  width: 100%;
  margin-top: 0 !important;
  position: absolute;
  top: 50px;
}
.list-categories .owl-theme .owl-nav [class*=owl-] {
  position: absolute;
  height: 40px;
  line-height: 38px;
  padding: 0 8px;
  text-align: center;
  font-size: 30px;
}
.list-categories .owl-theme .owl-nav [class*=owl-].owl-next {
  right: -10px;
}
.list-categories .owl-theme .owl-nav [class*=owl-].owl-prev {
  left: -10px;
}

.public-section-title {
  padding-top: 30px;
  display: flex;
  justify-content: space-between;
  padding-bottom: 10px;
  border-bottom: 1px solid #c4c4c4;
  align-items: flex-end;
}
.public-section-title .see-full-items {
  color: #1d1d1d;
}

.gg-images {
  --gg-square-gap: 10px;
  position: relative;
}
.gg-images .show-all {
  position: absolute;
  right: 15px;
  bottom: 15px;
  width: auto;
  padding: 8px 20px;
  border: 1px solid #141516;
  color: #141516;
  background: #ffffff;
  border-radius: 10px;
  cursor: pointer;
}
.gg-images .show-all:hover {
  background: #ececec;
}
.gg-images .top-img {
  margin-bottom: 10px;
}
.gg-images .gg-image-wrap {
  border-radius: 5px;
  overflow: hidden;
}
.gg-images .gg-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gg-images .gg-image-wrap.large-img {
  height: 420px;
}
.gg-images .gg-image-wrap.small-img {
  height: 205px;
}
.gg-images.gg-images-square .gg-images-square-grid {
  display: grid;
  gap: var(--gg-square-gap);
  grid-template-columns: calc((100% - var(--gg-square-gap) * 2) / 3 * 2 + var(--gg-square-gap)) calc((100% - var(--gg-square-gap) * 2) / 3);
}
.gg-images.gg-images-square .gg-images-square-side {
  display: grid;
  gap: var(--gg-square-gap);
  grid-template-rows: repeat(2, 1fr);
}
.gg-images.gg-images-square .square-main-img,
.gg-images.gg-images-square .square-side-img {
  aspect-ratio: 1/1;
  height: auto;
}

.row-rental-info {
  font-weight: 500;
}
.row-rental-info .text-muted {
  color: #6f767e;
  font-weight: 400;
}

.wrap-p-item {
  border: 1px solid #ecedee;
  padding: 20px;
  height: 100%;
}
.wrap-p-item .wrap-p-img {
  border: 1px solid #ecedee;
  padding: 12px;
  background: #f7f7f7;
  display: table;
  border-radius: 5px;
  margin-bottom: 10px;
}
.wrap-p-item h4 {
  font-size: 16px;
  font-weight: 600;
}

.wrap-small-thumbnail {
  max-width: 100%;
  width: 150px;
  height: 70px;
}
.wrap-small-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.public-page .by-container {
  background: none;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0 20px;
}

.wrap-contact-col-1 {
  border: 1px solid #eee;
  border-radius: 5px;
  padding: 10px 0;
}

.comment-entry-item {
  padding: 5px 10px;
  margin-bottom: 10px;
  border: 1px solid #ecedee;
  border-radius: 10px;
}
.comment-entry-item .wrap-uinfo span {
  font-weight: 600;
  padding-bottom: 2px;
  display: table;
}

/**
* Events
*/
.by-container {
  background: #f7f7f7;
}

.wrap-public-form {
  background: #fff;
  padding: 20px;
  border-radius: 5px;
}
.wrap-public-form .by-container {
  background: none;
  padding: 0 !important;
}

.pb-ev-header,
.pb-ev-body {
  background: #f7f7f7;
}
.pb-ev-header .list-group-item,
.pb-ev-body .list-group-item {
  background: none;
}

.price-wrap {
  color: #266df0;
  font-size: 20px;
  font-weight: bold;
}

.pb-ev-body {
  padding-top: 25px;
  padding-bottom: 35px;
  width: 100%;
}
.pb-ev-body .pb-ev-details h4 {
  font-size: 20px;
  font-weight: bold;
  color: #1d1d1d;
  margin-bottom: 10px;
}

.all-photos .photo-item {
  display: inline-block;
  margin-bottom: 20px;
}

.options-view {
  text-align: right;
  display: inline-block;
  vertical-align: text-bottom;
}
.options-view ul {
  margin: 0;
  padding: 0;
}
.options-view ul li {
  list-style: none;
  display: inline-block;
}
.options-view ul li a.active svg rect.str-color,
.options-view ul li a.active svg path.str-color {
  stroke: #266df0;
}
.options-view ul li a.active svg rect.fill-color,
.options-view ul li a.active svg path.fill-color {
  fill: #266df0;
}

.footer-menu li {
  position: relative;
}
.footer-menu li::before {
  content: "";
  position: absolute;
  right: 0;
  top: 10px;
  height: 16px;
  width: 1px;
  background: #212529;
}
.footer-menu li:last-child::before {
  display: none;
}

.events .event {
  margin-bottom: 20px;
  margin-top: 0;
}
.events .event .wrap-event {
  border: 1px solid #dfdfdf;
  border-radius: 10px;
  height: 100%;
}
.events .event .wrap-event .event-thumbnail {
  cursor: pointer;
  height: 150px;
  width: 100%;
  overflow: hidden;
  border-radius: 10px 10px 0 0;
  position: relative;
}
.events .event .wrap-event .event-thumbnail .event-social {
  position: absolute;
  top: 10px;
  right: 10px;
}
.events .event .wrap-event .event-thumbnail .event-social ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
.events .event .wrap-event .event-thumbnail .event-social ul li {
  display: inline-block;
  padding: 0 3px;
}
.events .event .wrap-event .event-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  padding: 0;
  border: none;
}
.events .event .wrap-event .event-info {
  padding: 20px 10px;
}
.events .event .wrap-event .event-info .event-title {
  font-weight: 500;
  font-size: 18px;
  color: #141516;
  text-align: left;
  display: table;
  width: 100%;
  margin-bottom: 15px;
}
.events .event .wrap-event .event-info .info-line {
  display: flex;
  padding-bottom: 5px;
}
.events .event .wrap-event .event-info .info-line.event-location .icon {
  padding-top: 4px;
}
.events .event .wrap-event .event-info .info-line .icon {
  padding-right: 5px;
  width: 22px;
}
.events .event .wrap-event .event-info .info-line .icon img {
  vertical-align: baseline;
}
.events .event .wrap-event .event-info .info-line .icon img.ico-tag {
  vertical-align: middle;
}
.events .event .wrap-event .event-info .info-line .text {
  color: #141516;
  overflow: hidden;
  font-size: 12px;
}
.events .event .wrap-event .event-info .info-line.event-price {
  margin-top: 8px;
}
.events .event .wrap-event .event-info .info-line.event-price .text {
  color: #266df0;
  font-size: 16px;
  font-weight: 600;
}
.events .event .wrap-event .event-info .event-tags ul {
  list-style: none;
  padding: 0;
}
.events .event .wrap-event .event-info .event-tags ul li {
  display: inline-block;
  margin-right: 5px;
  margin-top: 5px;
}
.events .event .wrap-event .event-info .event-tags ul li a {
  color: #266df0;
  background: #ecf1fe;
  border-radius: 30px;
  display: table;
  padding: 5px 20px;
}

.articles .article {
  margin-bottom: 20px;
  margin-top: 0;
}
.articles .article .wrap-article {
  border: 1px solid #dfdfdf;
  border-radius: 10px;
  height: 100%;
}
.articles .article .wrap-article .article-thumbnail {
  cursor: pointer;
  height: 150px;
  width: 100%;
  overflow: hidden;
  border-radius: 10px 10px 0 0;
  position: relative;
}
.articles .article .wrap-article .article-thumbnail .article-social {
  position: absolute;
  top: 10px;
  right: 10px;
}
.articles .article .wrap-article .article-thumbnail .article-social ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
.articles .article .wrap-article .article-thumbnail .article-social ul li {
  display: inline-block;
  padding: 0 3px;
}
.articles .article .wrap-article .article-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  padding: 0;
  border: none;
}
.articles .article .wrap-article .article-info {
  padding: 20px 10px;
}
.articles .article .wrap-article .article-info .article-title {
  font-weight: 500;
  font-size: 18px;
  color: #141516;
  text-align: left;
  display: table;
  width: 100%;
  margin-bottom: 15px;
}
.articles .article .wrap-article .article-info .info-line {
  display: flex;
  padding-bottom: 5px;
}
.articles .article .wrap-article .article-info .info-line.article-location .icon {
  padding-top: 4px;
}
.articles .article .wrap-article .article-info .info-line .icon {
  padding-right: 5px;
  width: 22px;
}
.articles .article .wrap-article .article-info .info-line .icon img {
  vertical-align: baseline;
}
.articles .article .wrap-article .article-info .info-line .icon img.ico-tag {
  vertical-align: middle;
}
.articles .article .wrap-article .article-info .info-line .text {
  color: #141516;
  overflow: hidden;
  font-size: 12px;
}
.articles .article .wrap-article .article-info .info-line.article-price {
  margin-top: 8px;
}
.articles .article .wrap-article .article-info .info-line.article-price .text {
  color: #266df0;
  font-size: 16px;
  font-weight: 600;
}
.articles .article .wrap-article .article-info .article-tags ul {
  list-style: none;
  padding: 0;
}
.articles .article .wrap-article .article-info .article-tags ul li {
  display: inline-block;
  margin-right: 5px;
  margin-top: 5px;
}
.articles .article .wrap-article .article-info .article-tags ul li a {
  color: #266df0;
  background: #ecf1fe;
  border-radius: 30px;
  display: table;
  padding: 5px 20px;
}

.event-container {
  background: #f7f7f7;
  min-height: 100vh;
}

.article-container {
  background: #f7f7f7;
  min-height: 100vh;
}

.filter-sidebar .filter-header {
  font-size: 22px;
  font-weight: 500;
  border-bottom: 1px solid #e8e8e8;
  padding-bottom: 15px;
}
.filter-sidebar .filter-section {
  padding-bottom: 20px;
}
.filter-sidebar .filter-section .h4 {
  font-size: 18px;
  padding-bottom: 15px;
}

.filter-result .item-result {
  padding: 5px;
  margin-bottom: 40px;
  border: 1px solid #f7f7f7;
  border-radius: 22px;
}
.filter-result .item-result:hover {
  border-color: #e8e8e8;
}
.filter-result .item-result .event-thumbnail {
  height: 220px;
  border-radius: 20px;
  overflow: hidden;
}
.filter-result .item-result .event-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.filter-result .item-result .event-title {
  font-size: 20px;
  color: #141516;
  font-weight: 500;
}
.filter-result .item-result .event-price {
  font-size: 18px;
  color: #1d1d1d;
  background: #fff;
  border-radius: 10px;
  display: table;
  padding: 8px 20px;
}
.filter-result .item-result .article-thumbnail {
  height: 220px;
  border-radius: 20px;
  overflow: hidden;
}
.filter-result .item-result .article-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.filter-result .item-result .article-title {
  font-size: 20px;
  color: #141516;
  font-weight: 500;
}
.filter-result .item-result .article-price {
  font-size: 18px;
  color: #1d1d1d;
  background: #fff;
  border-radius: 10px;
  display: table;
  padding: 8px 20px;
}

.border-corner {
  border: 1px solid #eee;
  border-radius: 8px;
}
.border-corner .table.table-rounded {
  border-radius: 8px;
}

.modal-dialog .table.table-rounded {
  border-radius: 8px;
}

.user-preference-item {
  font-size: 12px;
  font-weight: normal;
  color: #00ba34;
  background-color: #d1e7dd;
  border-radius: 4px;
  background: rgba(0, 186, 52, 0.1);
  padding: 3px 4px;
  width: fit-content;
}

.table-preferences {
  width: 100%;
  overflow: auto;
  height: 700px; /* Set the desired height for the scrollable area */
}
.table-preferences table {
  width: 100%;
  border-collapse: collapse;
}
.table-preferences th {
  color: #141516;
}
.table-preferences th,
.table-preferences td:first-child {
  position: -webkit-sticky; /* for Safari */
  position: sticky;
  z-index: 1;
}
.table-preferences th {
  top: 0;
  z-index: 2; /* ensure the sticky header cell is above other cells */
}
.table-preferences td:first-child {
  left: 0;
  z-index: 1; /* ensure the sticky column is above other cells */
}
.table-preferences th:first-child {
  left: 0;
  z-index: 3; /* ensure the sticky header cell in the first column is above other cells */
}

.bkp-header {
  padding: 20px 0 10px 0;
}
.bkp-header h1 {
  font-size: 32px;
  font-weight: 600;
}
.bkp-header.bkp-header-personal {
  margin-top: 20px;
  padding: 24px;
  background: #f7f9fc;
  border: 1px solid #e4eaf2;
  border-radius: 12px;
}

.booking-host-profile {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  text-align: left;
}
.booking-host-profile .booking-host-profile-content {
  min-width: 0;
}
.booking-host-profile .booking-host-profile-label,
.booking-host-profile .booking-host-profile-organization {
  margin: 0;
  color: #6c7480;
}
.booking-host-profile .booking-host-profile-label {
  margin-bottom: 3px;
  font-size: 15px;
}
.booking-host-profile .booking-host-profile-organization {
  margin-top: 3px;
  font-size: 16px;
}
.booking-host-profile h1 {
  margin: 0;
  color: #141516;
}

.booking-team-member-avatar {
  overflow: hidden;
  flex: 0 0 auto;
  border-radius: 50%;
  font-weight: 600;
  text-align: center;
  text-transform: uppercase;
}
.booking-team-member-avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.booking-team-member-avatar.booking-team-member-avatar--host {
  width: 88px;
  height: 88px;
  font-size: 28px;
  line-height: 88px;
}
.booking-team-member-avatar.booking-team-member-avatar--list {
  width: 48px;
  height: 48px;
  margin-right: 12px;
  font-size: 16px;
  line-height: 48px;
}

.bkp-footer {
  padding: 0 0 20px 0;
}
.bkp-footer .powered-by {
  display: flex;
  align-items: end;
  justify-content: center;
}
.bkp-footer .powered-by span {
  margin-right: 10px;
  font-size: 10px;
  font-weight: 500;
}

.bkp-content {
  padding: 20px 0;
}
.bkp-content .card-header-tabs {
  align-items: center;
  justify-content: center;
}
.bkp-content .card-header-tabs .nav-item {
  font-size: 16px;
}
.bkp-content .step-container .step-name {
  display: flex;
  align-items: center;
  margin: 20px 0;
}
.bkp-content .step-container .step-name .step-num {
  width: 30px;
  height: 30px;
  line-height: 30px;
  font-size: 22px;
  font-weight: 500;
  color: #fff;
  background: #266df0;
  border-radius: 50%;
  text-align: center;
  margin-right: 10px;
}
.bkp-content .step-container .step-name .step-text {
  font-size: 22px;
  font-weight: 500;
  color: #266df0;
}
.bkp-content .step-container .step-section-title {
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 20px;
}
.bkp-content .step-container .list-service {
  margin: 0 0 25px 0;
  padding: 0;
  list-style: none;
}
.bkp-content .step-container .list-service.list-org-users {
  flex-wrap: wrap;
  justify-content: space-between;
  display: flex;
}
.bkp-content .step-container .list-service.list-org-users .s-box {
  width: 49%;
  align-items: start;
}
.bkp-content .step-container .list-service.list-org-users .s-box .btn-radio {
  width: 20px;
  height: 20px;
  padding: 0;
  border-radius: 50%;
  background: none;
  border: 4px solid #ecedee;
}
.bkp-content .step-container .list-service.list-org-users .s-box .btn-radio:hover {
  border-color: #266df0;
}
.bkp-content .step-container .list-service.list-org-users .s-box .btn-radio.btn-primary {
  border: none;
}
.bkp-content .step-container .list-service.list-org-users .s-box:hover .btn-radio {
  border: 4px solid #266df0;
  background: none;
}
.bkp-content .step-container .list-service.list-org-users .s-box:hover .btn-radio.btn-primary {
  border: none;
  background: #266df0;
}
.bkp-content .step-container .list-service .s-box {
  border: 1px solid #ecedee;
  border-radius: 8px;
  margin-bottom: 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px;
}
.bkp-content .step-container .list-service .s-box.s-selected, .bkp-content .step-container .list-service .s-box:hover {
  border-color: #266df0;
}
.bkp-content .step-container .list-service .s-box.s-selected .s-left .s-name, .bkp-content .step-container .list-service .s-box:hover .s-left .s-name {
  color: #141516;
}
.bkp-content .step-container .list-service .s-box.s-selected .btn, .bkp-content .step-container .list-service .s-box:hover .btn {
  background: #266df0;
  color: #fff;
}
.bkp-content .step-container .list-service .s-box .date-time {
  color: #828282;
  font-size: 16px;
}
.bkp-content .step-container .list-service .s-box .s-left {
  font-size: 16px;
  font-weight: 500;
  width: 100%;
}
.bkp-content .step-container .list-service .s-box .s-left .wrap-avatar {
  width: 55px;
  height: 55px;
  border-radius: 10px;
  margin-right: 10px;
}
.bkp-content .step-container .list-service .s-box .s-left .s-left-line {
  display: flex;
}
.bkp-content .step-container .list-service .s-box .s-left .s-name {
  color: #585858;
  margin-right: 15px;
}
.bkp-content .step-container .list-service .s-box .s-left .duration {
  font-size: 14px;
  color: #585858;
}
.bkp-content .step-container .list-service .s-box .s-left .duration i {
  margin-right: 5px;
}
.bkp-content .step-container .list-service .s-box .s-left .s-price {
  color: #585858;
  padding: 3px 15px;
  background: #ececec;
  font-size: 14px;
  border-radius: 3px;
}
.bkp-content .step-container .list-service .s-box .s-left .s-price.free-service {
  color: green;
  padding: 3px 20px;
  background: #e7f7e8;
}
.bkp-content .step-container .list-service .s-box .s-left .avatar {
  margin-right: 15px;
}
.bkp-content .step-container .list-service .s-box .s-desc {
  font-size: 14px;
  color: #585858;
  font-weight: normal;
  padding: 5px 0;
}
.bkp-content .step-container .select-time {
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  height: 100%;
  width: 230px;
  max-height: 320px;
}
.bkp-content .step-container .select-time .time-scroll {
  height: 100%;
  overflow: auto;
}
.bkp-content .step-container .by-container {
  background: none;
}
.bkp-content .step-container h1 {
  text-align: left !important;
  font-size: 25px;
}
.bkp-content .step-container h2 {
  font-size: 20px;
}
.bkp-content .step-container h3 {
  font-size: 18px;
}
.bkp-content .step-container .wrap-result {
  border: 1px solid #ecedee;
  border-radius: 8px;
  padding: 10px;
  margin-bottom: 20px;
}
.bkp-content .step-container .wrap-result table {
  border: none;
  margin-bottom: 0;
}
.bkp-content .step-container .wrap-result table th {
  width: 190px;
}
.bkp-content .btn-bottom {
  text-align: right;
}
.bkp-content .btn-bottom.tw {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.bkp-content .booking-successful {
  margin-top: 30px;
  text-align: center;
  color: #40b36a;
  min-height: calc(100vh - 240px);
}
.bkp-content .booking-successful h1 {
  font-size: 25px;
}
.bkp-content .booking-successful h2 {
  font-size: 20px;
}
.bkp-content .mat-mdc-radio-button .mdc-radio {
  padding: 10px 3px 10px 10px;
}

.ot-reservation-page .booking-successful {
  margin-top: 30px;
  text-align: center;
  color: #40b36a;
  min-height: calc(100vh - 240px);
}
.ot-reservation-page .booking-successful h1 {
  font-size: 25px;
}
.ot-reservation-page .booking-successful h2 {
  font-size: 20px;
}

body .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked + .mdc-radio__background .mdc-radio__outer-circle,
body .mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled:checked + .mdc-radio__background .mdc-radio__outer-circle,
body .mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled + .mdc-radio__background .mdc-radio__inner-circle {
  border-color: #266df0;
}
body .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled + .mdc-radio__background .mdc-radio__inner-circle {
  border-color: #266df0;
}
body .mat-mdc-radio-button.mat-mdc-radio-checked .mat-ripple-element {
  background-color: #266df0;
}
body .mat-mdc-radio-button.mat-mdc-radio-checked .mdc-radio__background::before {
  background-color: #266df0;
}

.month_default_event .month_default_event_inner,
.calendar_default_event .calendar_default_event_inner,
.calendar_default_event .calendar_default_event_inner {
  overflow: auto;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.custom-month-view .public-booking-navigator-available .navigator_default_cell_box {
  background: #edf8ef;
}
.custom-month-view .public-booking-navigator-unavailable {
  color: #9299a3;
  cursor: pointer;
  opacity: 0.55;
}
.custom-month-view .public-booking-navigator-unavailable .navigator_default_cell_box {
  background: #eceff2;
  color: #9299a3;
}
.custom-month-view .public-booking-navigator-count {
  color: #198754;
  font-size: 10px;
  font-weight: 600;
}
.custom-month-view .navigator_default_month {
  border: 1px solid #e8e8e8;
  border-radius: 8px;
}
.custom-month-view .navigator_default_line {
  border: none;
}
.custom-month-view .navigator_default_titleleft {
  font-size: 0px;
  position: relative;
}
.custom-month-view .navigator_default_titleleft::before {
  position: absolute;
  content: "";
  left: 8px;
  top: 41%;
  height: 1px;
  width: 30%;
  background: #000;
  transform: rotate(321deg);
}
.custom-month-view .navigator_default_titleleft::after {
  position: absolute;
  content: "";
  left: 8px;
  bottom: 39%;
  height: 1px;
  width: 30%;
  background: #000;
  transform: rotate(38deg);
}
.custom-month-view .navigator_default_titleright {
  font-size: 0px;
  position: relative;
}
.custom-month-view .navigator_default_titleright::before {
  position: absolute;
  content: "";
  right: 8px;
  bottom: 39%;
  height: 1px;
  width: 30%;
  background: rgb(0, 0, 0);
  transform: rotate(321deg);
}
.custom-month-view .navigator_default_titleright::after {
  position: absolute;
  content: "";
  right: 8px;
  top: 41%;
  height: 1px;
  width: 30%;
  background: rgb(0, 0, 0);
  transform: rotate(38deg);
}
.custom-month-view .navigator_default_title,
.custom-month-view .navigator_default_titleleft,
.custom-month-view .navigator_default_titleright,
.custom-month-view .navigator_default_main {
  border: none;
  background: none;
}
.custom-month-view .navigator_default_title {
  font-size: 16px;
  font-weight: 600;
}
.custom-month-view .navigator_default_dayother,
.custom-month-view .navigator_default_weekend {
  background: none;
}
.custom-month-view .navigator_default_cell_text {
  font-size: 14px;
  font-weight: 500;
}
.custom-month-view .navigator_default_cell_box {
  background: none;
  border-radius: 50%;
}
.custom-month-view .navigator_default_cell_box.navigator_default_todaybox {
  border-color: red;
}
.custom-month-view .navigator_default_select .navigator_default_cell_box {
  background: #266df0;
  opacity: 1;
}
.custom-month-view .navigator_default_select .navigator_default_cell_text {
  color: #fff;
}
.custom-month-view .navigator_default_busy {
  border: none;
  color: black !important;
}
.custom-month-view .navigator_default_dayheader {
  font-size: 14px;
  font-weight: 500;
  border-bottom: 1px solid #dfdfdf;
}

.custom-month-view.public-booking-calendar .public-booking-navigator-available {
  color: #111;
  opacity: 1;
}
.custom-month-view.public-booking-calendar .public-booking-navigator-available .navigator_default_cell_text {
  color: #111;
}
.custom-month-view.public-booking-calendar .public-booking-navigator-unavailable {
  color: #a1a1aa;
  cursor: default;
  opacity: 1;
  pointer-events: none;
}
.custom-month-view.public-booking-calendar .public-booking-navigator-unavailable .navigator_default_cell_text,
.custom-month-view.public-booking-calendar .public-booking-navigator-unavailable .public-booking-navigator-count {
  color: #a1a1aa;
  cursor: default;
}
.custom-month-view.public-booking-calendar .public-booking-navigator-outside-month {
  pointer-events: none;
}
.custom-month-view.public-booking-calendar .public-booking-navigator-outside-month .navigator_default_cell_text {
  cursor: default;
  visibility: hidden;
}
.custom-month-view.public-booking-calendar .public-booking-navigator-day,
.custom-month-view.public-booking-calendar .public-booking-navigator-count {
  display: block;
}
.custom-month-view.public-booking-calendar .public-booking-navigator-day {
  line-height: 16px;
}
.custom-month-view.public-booking-calendar .public-booking-navigator-count {
  color: #6b7280;
  font-size: 8px;
  font-weight: 500;
  line-height: 10px;
  white-space: nowrap;
}
.custom-month-view.public-booking-calendar .public-booking-navigator-available .navigator_default_cell_box,
.custom-month-view.public-booking-calendar .public-booking-navigator-unavailable .navigator_default_cell_box,
.custom-month-view.public-booking-calendar .navigator_default_cell_box.navigator_default_todaybox,
.custom-month-view.public-booking-calendar .navigator_default_select .navigator_default_cell_box {
  background: none;
  border: none;
  border-radius: 0;
  opacity: 1;
}
.custom-month-view.public-booking-calendar .navigator_default_select .navigator_default_cell_text {
  color: #111;
}
.custom-month-view.public-booking-calendar .navigator_default_select .public-booking-navigator-day {
  color: #266df0;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: #266df0;
  text-decoration-thickness: 2px;
  text-underline-offset: 2px;
}
.custom-month-view.public-booking-calendar .navigator_default_select .public-booking-navigator-count {
  color: #266df0;
  font-weight: 600;
}

.booking-container .ph-left .wrap-main-title {
  display: none;
}
.booking-container .page-header .align-items-end {
  align-items: flex-start !important;
}

.mat-datepicker-toggle {
  pointer-events: auto;
  color: var(--mat-datepicker-toggle-icon-color);
}

.mat-datepicker-toggle-active {
  color: var(--mat-datepicker-toggle-active-state-icon-color);
}

.cdk-high-contrast-active .mat-datepicker-toggle-default-icon {
  color: canvastext;
}

.mat-datepicker-content {
  box-shadow: rgba(0, 0, 0, 0.2) 0 2px 4px -1px, rgba(0, 0, 0, 0.14) 0 4px 5px 0, rgba(0, 0, 0, 0.12) 0 1px 10px 0;
  display: block;
  border-radius: 4px;
  background-color: var(--mat-datepicker-calendar-container-background-color);
  color: var(--mat-datepicker-calendar-container-text-color);
}
.mat-datepicker-content .mat-calendar {
  width: 296px;
  height: 354px;
}
.mat-datepicker-content .mat-datepicker-content-container-with-custom-header .mat-calendar {
  height: auto;
}
.mat-datepicker-content .mat-datepicker-close-button {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 8px;
}

.ng-animating .mat-datepicker-content .mat-datepicker-close-button {
  display: none;
}

.mat-datepicker-content-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.mat-datepicker-content-touch {
  box-shadow: rgba(0, 0, 0, 0.2) 0 11px 15px -7px, rgba(0, 0, 0, 0.14) 0 24px 38px 3px, rgba(0, 0, 0, 0.12) 0 9px 46px 8px;
  display: block;
  max-height: 80vh;
  position: relative;
  overflow: visible;
}
.mat-datepicker-content-touch .mat-datepicker-content-container {
  min-height: 312px;
  max-height: 788px;
  min-width: 250px;
  max-width: 750px;
}
.mat-datepicker-content-touch .mat-calendar {
  width: 100%;
  height: auto;
}

@media (orientation: landscape) {
  .mat-datepicker-content-touch .mat-datepicker-content-container {
    width: 64vh;
    height: 80vh;
  }
}
@media (orientation: portrait) {
  .mat-datepicker-content-touch .mat-datepicker-content-container {
    width: 80vw;
    height: 100vw;
  }
  .mat-datepicker-content-touch .mat-datepicker-content-container-with-actions {
    height: 115vw;
  }
}
.mat-calendar {
  display: block;
  font-family: var(--mat-datepicker-calendar-text-font);
  font-size: var(--mat-datepicker-calendar-text-size);
}

.mat-calendar-header {
  padding: 8px 8px 0;
}

.mat-calendar-content {
  padding: 0 8px 8px;
  outline: none;
}

.mat-calendar-controls {
  display: flex;
  align-items: center;
  margin: 5% calc(4.71429% - 16px);
}

.mat-calendar-spacer {
  flex: 1 1 auto;
}

.mat-calendar-period-button {
  min-width: 0;
  margin: 0 8px;
  font-size: var(--mat-datepicker-calendar-period-button-text-size);
  font-weight: var(--mat-datepicker-calendar-period-button-text-weight);
}

.mat-calendar-arrow {
  display: inline-block;
  width: 10px;
  height: 5px;
  margin: 0 0 0 5px;
  vertical-align: middle;
  fill: var(--mat-datepicker-calendar-period-button-icon-color);
}

.mat-calendar-arrow.mat-calendar-invert {
  transform: rotate(180deg);
}

[dir=rtl] .mat-calendar-arrow {
  margin: 0 5px 0 0;
}

.cdk-high-contrast-active .mat-calendar-arrow {
  fill: canvastext;
}

.mat-calendar-previous-button,
.mat-calendar-next-button {
  position: relative;
}

.mat-datepicker-content .mat-calendar-previous-button,
.mat-datepicker-content .mat-calendar-next-button {
  color: var(--mat-datepicker-calendar-navigation-button-icon-color);
}

.mat-calendar-previous-button::after,
.mat-calendar-next-button::after {
  inset: 0;
  position: absolute;
  content: "";
  margin: 15.5px;
  border-width: 2px 0 0;
  border-style: solid;
  border-color: currentColor;
  border-image: initial;
}

[dir=rtl] .mat-calendar-previous-button,
[dir=rtl] .mat-calendar-next-button {
  transform: rotate(180deg);
}

.mat-calendar-previous-button::after {
  border-left-width: 2px;
  transform: translateX(2px) rotate(-45deg);
}

.mat-calendar-next-button::after {
  border-right-width: 2px;
  transform: translateX(-2px) rotate(45deg);
}

.mat-calendar-table {
  border-spacing: 0;
  border-collapse: collapse;
  width: 100%;
}

.mat-calendar-table-header th {
  text-align: center;
  padding: 0 0 8px;
  color: var(--mat-datepicker-calendar-header-text-color);
  font-size: var(--mat-datepicker-calendar-header-text-size);
  font-weight: var(--mat-datepicker-calendar-header-text-weight);
}

.mat-calendar-table-header-divider {
  position: relative;
  height: 1px;
}

.mat-calendar-table-header-divider::after {
  content: "";
  position: absolute;
  top: 0;
  left: -8px;
  right: -8px;
  height: 1px;
  background: var(--mat-datepicker-calendar-header-divider-color);
}

.mat-calendar-body-cell-content::before {
  margin: calc((var(--mat-focus-indicator-border-width, 3px) + 3px) * -1);
}

.mat-calendar-body-cell:focus .mat-focus-indicator::before {
  content: "";
}

.mat-calendar-hidden-label {
  display: none;
}

.mat-calendar-body {
  min-width: 224px;
}

.mat-calendar-body-today:not(.mat-calendar-body-selected, .mat-calendar-body-comparison-identical) {
  border-color: var(--mat-datepicker-calendar-date-today-outline-color);
}

.mat-calendar-body-label {
  height: 0;
  line-height: 0;
  text-align: left;
  padding-left: 4.71429%;
  padding-right: 4.71429%;
  font-size: var(--mat-datepicker-calendar-body-label-text-size);
  font-weight: var(--mat-datepicker-calendar-body-label-text-weight);
  color: var(--mat-datepicker-calendar-body-label-text-color);
}

.mat-calendar-body-hidden-label {
  display: none;
}

.mat-calendar-body-cell-container {
  position: relative;
  height: 0;
  line-height: 0;
}

.mat-calendar-body-cell {
  user-select: none;
  cursor: pointer;
  border: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: none;
  text-align: center;
  outline: none;
  font-family: inherit;
  margin: 0;
}

.mat-calendar-body-cell::before,
.mat-calendar-body-cell::after,
.mat-calendar-body-cell-preview {
  content: "";
  position: absolute;
  top: 5%;
  left: 0;
  z-index: 0;
  box-sizing: border-box;
  display: block;
  height: 90%;
  width: 100%;
}

.mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range)::before,
.mat-calendar-body-range-start::after,
.mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start)::before,
.mat-calendar-body-comparison-start::after,
.mat-calendar-body-preview-start .mat-calendar-body-cell-preview {
  left: 5%;
  width: 95%;
  border-top-left-radius: 999px;
  border-bottom-left-radius: 999px;
}

[dir=rtl] .mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range)::before,
[dir=rtl] .mat-calendar-body-range-start::after,
[dir=rtl] .mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start)::before,
[dir=rtl] .mat-calendar-body-comparison-start::after,
[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview {
  left: 0;
  border-radius: 0 999px 999px 0;
}

.mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range)::before,
.mat-calendar-body-range-end::after,
.mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end)::before,
.mat-calendar-body-comparison-end::after,
.mat-calendar-body-preview-end .mat-calendar-body-cell-preview {
  width: 95%;
  border-top-right-radius: 999px;
  border-bottom-right-radius: 999px;
}

[dir=rtl] .mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range)::before,
[dir=rtl] .mat-calendar-body-range-end::after,
[dir=rtl] .mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end)::before,
[dir=rtl] .mat-calendar-body-comparison-end::after,
[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview {
  left: 5%;
  border-radius: 999px 0 0 999px;
}

[dir=rtl] .mat-calendar-body-comparison-bridge-start.mat-calendar-body-range-end::after,
[dir=rtl] .mat-calendar-body-comparison-bridge-end.mat-calendar-body-range-start::after {
  width: 95%;
  border-top-right-radius: 999px;
  border-bottom-right-radius: 999px;
}

.mat-calendar-body-comparison-start.mat-calendar-body-range-end::after,
[dir=rtl] .mat-calendar-body-comparison-start.mat-calendar-body-range-end::after,
.mat-calendar-body-comparison-end.mat-calendar-body-range-start::after,
[dir=rtl] .mat-calendar-body-comparison-end.mat-calendar-body-range-start::after {
  width: 90%;
}

.mat-calendar-body-in-preview {
  color: var(--mat-datepicker-calendar-date-preview-state-outline-color);
}

.mat-calendar-body-in-preview .mat-calendar-body-cell-preview {
  border-top: 1px dashed;
  border-bottom: 1px dashed;
}

.mat-calendar-body-preview-start .mat-calendar-body-cell-preview {
  border-left: 1px dashed;
}

[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview {
  border-left: 0;
  border-right: 1px dashed;
}

.mat-calendar-body-preview-end .mat-calendar-body-cell-preview {
  border-right: 1px dashed;
}

[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview {
  border-right: 0;
  border-left: 1px dashed;
}

.mat-calendar-body-disabled {
  cursor: default;
}

.mat-calendar-body-disabled > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected, .mat-calendar-body-comparison-identical) {
  color: var(--mat-datepicker-calendar-date-disabled-state-text-color);
}

.mat-calendar-body-disabled > .mat-calendar-body-today:not(.mat-calendar-body-selected, .mat-calendar-body-comparison-identical) {
  border-color: var(--mat-datepicker-calendar-date-today-disabled-state-outline-color);
}

.cdk-high-contrast-active .mat-calendar-body-disabled {
  opacity: 0.5;
}

.mat-calendar-body-cell-content {
  top: 5%;
  left: 5%;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 90%;
  height: 90%;
  line-height: 1;
  border-width: 1px;
  border-style: solid;
  border-radius: 999px;
  color: var(--mat-datepicker-calendar-date-text-color);
  border-color: var(--mat-datepicker-calendar-date-outline-color);
}

.mat-calendar-body-cell-content.mat-focus-indicator {
  position: absolute;
}

.cdk-high-contrast-active .mat-calendar-body-cell-content {
  border: none;
}

.cdk-keyboard-focused .mat-calendar-body-active > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected, .mat-calendar-body-comparison-identical),
.cdk-program-focused .mat-calendar-body-active > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected, .mat-calendar-body-comparison-identical) {
  background-color: var(--mat-datepicker-calendar-date-focus-state-background-color);
}

@media (hover: hover) {
  .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected, .mat-calendar-body-comparison-identical) {
    background-color: var(--mat-datepicker-calendar-date-hover-state-background-color);
  }
}
.mat-calendar-body-selected {
  background-color: var(--mat-datepicker-calendar-date-selected-state-background-color);
  color: var(--mat-datepicker-calendar-date-selected-state-text-color);
}

.mat-calendar-body-disabled > .mat-calendar-body-selected {
  background-color: var(--mat-datepicker-calendar-date-selected-disabled-state-background-color);
}

.mat-calendar-body-selected.mat-calendar-body-today {
  box-shadow: inset 0 0 0 1px var(--mat-datepicker-calendar-date-today-selected-state-outline-color);
}

.mat-calendar-body-in-range::before {
  background: var(--mat-datepicker-calendar-date-in-range-state-background-color);
}

.mat-calendar-body-comparison-identical,
.mat-calendar-body-in-comparison-range::before {
  background: var(--mat-datepicker-calendar-date-in-comparison-range-state-background-color);
}

.mat-calendar-body-comparison-identical,
.mat-calendar-body-in-comparison-range::before {
  background: var(--mat-datepicker-calendar-date-in-comparison-range-state-background-color);
}

.mat-calendar-body-comparison-bridge-start::before,
[dir=rtl] .mat-calendar-body-comparison-bridge-end::before {
  background: linear-gradient(to right, var(--mat-datepicker-calendar-date-in-range-state-background-color) 50%, var(--mat-datepicker-calendar-date-in-comparison-range-state-background-color) 50%);
}

.mat-calendar-body-comparison-bridge-end::before,
[dir=rtl] .mat-calendar-body-comparison-bridge-start::before {
  background: linear-gradient(to left, var(--mat-datepicker-calendar-date-in-range-state-background-color) 50%, var(--mat-datepicker-calendar-date-in-comparison-range-state-background-color) 50%);
}

.mat-calendar-body-in-range > .mat-calendar-body-comparison-identical,
.mat-calendar-body-in-comparison-range.mat-calendar-body-in-range::after {
  background: var(--mat-datepicker-calendar-date-in-overlap-range-state-background-color);
}

.mat-calendar-body-comparison-identical.mat-calendar-body-selected,
.mat-calendar-body-in-comparison-range > .mat-calendar-body-selected {
  background: var(--mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color);
}

.cdk-high-contrast-active .mat-datepicker-popup:not(:empty),
.cdk-high-contrast-active .mat-calendar-body-cell:not(.mat-calendar-body-in-range) .mat-calendar-body-selected {
  outline: solid 1px;
}

.cdk-high-contrast-active .mat-calendar-body-today {
  outline: dotted 1px;
}

.cdk-high-contrast-active .mat-calendar-body-cell::before,
.cdk-high-contrast-active .mat-calendar-body-cell::after,
.cdk-high-contrast-active .mat-calendar-body-selected {
  background: none;
}

.cdk-high-contrast-active .mat-calendar-body-in-range::before,
.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-start::before,
.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-end::before {
  border-top: 1px solid;
  border-bottom: 1px solid;
}

.cdk-high-contrast-active .mat-calendar-body-range-start::before {
  border-left: 1px solid;
}

[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-start::before {
  border-left: 0;
  border-right: 1px solid;
}

.cdk-high-contrast-active .mat-calendar-body-range-end::before {
  border-right: 1px solid;
}

[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-end::before {
  border-right: 0;
  border-left: 1px solid;
}

.cdk-high-contrast-active .mat-calendar-body-in-comparison-range::before {
  border-top: 1px dashed;
  border-bottom: 1px dashed;
}

.cdk-high-contrast-active .mat-calendar-body-comparison-start::before {
  border-left: 1px dashed;
}

[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-start::before {
  border-left: 0;
  border-right: 1px dashed;
}

.cdk-high-contrast-active .mat-calendar-body-comparison-end::before {
  border-right: 1px dashed;
}

[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-end::before {
  border-right: 0;
  border-left: 1px dashed;
}

[dir=rtl] .mat-calendar-body-label {
  text-align: right;
}

.wrap-gantt {
  height: calc(100vh - 330px);
  bottom: 36px;
}
.wrap-gantt .gantt-example-component .gantt-side,
.wrap-gantt .gantt-example-component .gantt-container {
  font-size: 12px;
}
.wrap-gantt .gantt-calendar-header .primary-text,
.wrap-gantt .gantt-bar .gantt-bar-content {
  font-size: 12px;
}

.contact-top-row .contact-right .btn-edit i {
  display: none;
}

.gantt-chart .tooltip {
  z-index: 9999999;
  text-align: left;
  width: 320px !important;
  background: #000;
  position: fixed !important;
}
.gantt-chart .tooltip .custom-tooltip {
  text-align: left;
  color: #fff;
}
.gantt-chart .tooltip .custom-tooltip p {
  color: #fff;
}
.gantt-chart .tooltip .title-left {
  white-space: nowrap;
  padding-right: 5px;
  font-weight: 500;
}
.gantt-chart .gantt-bar .gantt-bar-layer {
  width: calc(100% + 28px);
}
.gantt-chart .gantt-bar .gantt-bar-layer .drag-handles .handle:first-child {
  left: 4px;
}
.gantt-chart .gantt-table-body .gantt-table-item .gantt-table-column {
  padding: 0 5px;
}
.gantt-chart .gantt-table-header .gantt-table-column {
  align-items: center;
  justify-content: center;
  padding: 0;
  font-weight: 600;
}
.gantt-chart .gantt-calendar-header .secondary-text {
  font-weight: 600;
}
.gantt-chart .gantt-bar .gantt-bar-content {
  border-radius: 1px !important;
  position: relative;
  overflow: unset;
  background-color: none !important;
}
.gantt-chart .gantt-bar .gantt-bar-content .bar-title {
  position: absolute;
  left: 100%;
  top: -2px;
  margin-left: 12px;
  line-height: normal;
  white-space: nowrap;
}
.gantt-chart .gantt-bar .gantt-bar-content .bar-item {
  height: 100%;
  width: 100%;
  background: #6698ff;
}
.gantt-chart .gantt-bar .gantt-bar-content .bar-item.bar-inprogress {
  background-color: #ffb320;
}
.gantt-chart .gantt-bar .gantt-bar-content .bar-item.bar-done {
  background-color: #3ab174;
}
.gantt-chart .gantt-bar .gantt-bar-content .bar-item.bar-new {
  background-color: #266df0;
}
.gantt-chart .gantt-bar .gantt-bar-content .bar-item.bar-parent {
  background: #003863;
}
.gantt-chart .gantt-bar .gantt-bar-content .bar-item.bar-parent .shaddow-wrap {
  width: 100%;
  height: 20px;
}
.gantt-chart .gantt-bar .gantt-bar-content .bar-item.bar-parent .shaddow-wrap::before {
  content: "";
  width: 0;
  height: 0;
  border-top: 0px solid rgba(0, 0, 0, 0);
  border-bottom: 8px solid rgba(0, 0, 0, 0);
  border-left: 12px solid #003863;
  position: absolute;
  bottom: -8px;
  z-index: 999999;
  left: 0;
}
.gantt-chart .gantt-bar .gantt-bar-content .bar-item.bar-parent .shaddow-wrap::after {
  content: "";
  width: 0;
  height: 0;
  border-top: 0px solid rgba(0, 0, 0, 0);
  border-bottom: 8px solid rgba(0, 0, 0, 0);
  border-right: 12px solid #003863;
  position: absolute;
  bottom: -8px;
  z-index: 999999;
  right: 0;
}

.list-of-forums {
  list-style: none;
  padding: 0;
  display: flex;
  align-items: start;
  flex-wrap: wrap;
}
.list-of-forums li {
  width: 25%;
  flex: 0 0 auto;
  margin-bottom: 15px;
}
.list-of-forums li .wrap-forum {
  border: 1px solid #ecedee;
  border-radius: 20px;
}
.list-of-forums li .thumnail {
  height: 150px;
  overflow: hidden;
  border-radius: 20px 20px 0 0;
}
.list-of-forums li .thumnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.list-of-forums li .wrap-title {
  display: flex;
  align-items: end;
  padding: 0 10px;
}
.list-of-forums li .wrap-title .title {
  color: #141516;
  font-size: 16px;
  font-weight: 500;
  display: flex;
  align-items: center;
  margin-top: 5px;
}
.list-of-forums li .wrap-title .title a {
  color: #141516;
}
.list-of-forums li .wrap-title .small-thumbnail {
  border: 1px solid #fff;
  border-radius: 50%;
  overflow: hidden;
  width: 80px;
  height: 80px;
}
.list-of-forums li .wrap-title .small-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.list-of-forums li .f-content {
  padding: 0 10px 20px 10px;
}
.list-of-forums li .f-content .line {
  font-size: 12px;
}
.list-of-forums li .f-content .line .s-line {
  color: #6f767e;
  width: 48px;
  display: inline-block;
}
.list-of-forums li .f-content .line .e-line {
  display: inline-block;
}

.wrap-forum-sidebar {
  height: 100%;
}
.wrap-forum-sidebar .forum-info {
  padding: 15px 10px 15px 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #dfdfdf;
}
.wrap-forum-sidebar .forum-info .info-top {
  display: flex;
  align-items: center;
}
.wrap-forum-sidebar .forum-info .forum-thumbnail {
  border-radius: 5px;
  overflow: hidden;
  max-width: 100px;
  margin: 0 10px 0 0;
}
.wrap-forum-sidebar .forum-info .forum-thumbnail img {
  width: 100%;
  height: auto;
}
.wrap-forum-sidebar .forum-info .forum-title {
  font-size: 16px;
  text-align: left;
}
.wrap-forum-sidebar .forum-info .forum-title .h3 {
  font-size: 16px;
  margin-bottom: 0;
  font-weight: 600;
}
.wrap-forum-sidebar .forum-info .forum-title .btn-back-to-list {
  font-size: 12px;
  text-decoration: underline;
}
.wrap-forum-sidebar ul {
  padding: 0 10px 0px 10px;
  margin: 0;
  list-style: none;
}
.wrap-forum-sidebar ul li {
  padding-bottom: 3px;
}
.wrap-forum-sidebar ul li a {
  color: #141516;
  font-size: 12px;
  padding: 8px 10px;
}
.wrap-forum-sidebar ul li a.active, .wrap-forum-sidebar ul li a:hover {
  color: #266df0 !important;
  border-radius: 5px;
}
.wrap-forum-sidebar ul.main-list > li {
  border-bottom: 1px solid #e6e6e6;
  padding: 10px 0;
}
.wrap-forum-sidebar ul.main-list > li:last-child {
  border: none;
}
.wrap-forum-sidebar ul.main-list > li > a,
.wrap-forum-sidebar ul.main-list > li > span {
  color: #000;
  font-size: 14px;
  font-weight: 600;
  display: table;
  width: 100%;
  padding: 0;
}
.wrap-forum-sidebar ul .has-children .text {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0px;
}
.wrap-forum-sidebar ul .has-children > ul {
  background: #f8f8f8;
  border-radius: 8px;
  margin: 5px 0px 8px 0px;
  padding: 5px 0;
}
.wrap-forum-sidebar ul .has-children > ul li .depth {
  position: relative;
}
.wrap-forum-sidebar ul .has-children > ul li .depth::before {
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  border-bottom: 2px solid #dddee0;
  border-left: 2px solid #dddee0;
  display: block;
  height: 6px;
  left: 5px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
  z-index: 1;
}
.wrap-forum-sidebar ul .has-children > ul li .depth a {
  padding-left: 11px;
}
.wrap-forum-sidebar ul .has-children > ul li a {
  display: table;
  width: 100%;
  padding: 6px 10px;
}
.wrap-forum-sidebar ul .has-children > ul ul {
  padding-left: 0;
  padding-right: 0;
}
.wrap-forum-sidebar ul .has-children .fa-chevron-down {
  font-weight: 600;
  font-size: 12px;
}

.forum-content {
  height: 100%;
  padding: 10px;
}

.menu-setting {
  cursor: pointer;
  position: relative;
}
.menu-setting .menu-dropdown {
  position: absolute;
  background: #FFFFFF;
  top: 25px;
  right: 0;
  z-index: 2;
  padding: 10px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
}
.menu-setting .menu-dropdown ul {
  margin: 0;
  padding: 0;
  width: 140px;
}
.menu-setting .menu-dropdown ul li {
  list-style: none;
  display: table;
  width: 100%;
  border-bottom: 1px solid #ECEDEE;
}
.menu-setting .menu-dropdown ul li:last-child {
  border: none;
}
.menu-setting .menu-dropdown ul li a {
  color: #141516;
  display: table;
  width: 100%;
  padding: 8px 0;
}

.post-detail-page .forum-attachments {
  margin: 18px 0;
}
.post-detail-page .forum-attachments__header {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 9px;
  color: #343a40;
  font-size: 13px;
  font-weight: 600;
}
.post-detail-page .forum-attachments__count {
  min-width: 20px;
  padding: 1px 6px;
  border-radius: 10px;
  background: #eef2f7;
  color: #667085;
  font-size: 11px;
  text-align: center;
}
.post-detail-page .forum-attachments__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 360px));
  gap: 8px;
}
.post-detail-page .forum-attachment {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 30px;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 9px;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  background: #fff;
  color: #24292f;
  text-align: left;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}
.post-detail-page .forum-attachment:hover, .post-detail-page .forum-attachment:focus-visible {
  border-color: #9eb5ea;
  background: #f7f9ff;
}
.post-detail-page .forum-attachment__type {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  overflow: hidden;
  border-radius: 7px;
  background: #edf2ff;
  color: #3867d6;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}
.post-detail-page .forum-attachment__meta {
  display: flex;
  min-width: 0;
  flex-direction: column;
}
.post-detail-page .forum-attachment__name {
  overflow: hidden;
  font-size: 13px;
  font-weight: 500;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.post-detail-page .forum-attachment__size {
  margin-top: 2px;
  color: #7b8491;
  font-size: 11px;
}
.post-detail-page .forum-attachment__download {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: #68727e;
}
.post-detail-page .forum-attachment:hover .forum-attachment__download,
.post-detail-page .forum-attachment:focus-visible .forum-attachment__download {
  background: #e6edff;
  color: #2458d3;
}
.post-detail-page .post-title {
  display: flex;
  align-items: center;
}
.post-detail-page .post-title h1,
.post-detail-page .post-title .btn-back-to-list {
  margin-bottom: 8px;
}
.post-detail-page .post-title .btn-back-to-list {
  padding-left: 8px;
}

.category-info {
  border-bottom: 1px solid #dfdfdf;
  margin-left: -10px;
  margin-top: -10px;
  width: calc(100% + 20px);
  max-width: calc(100% + 20px);
}
.category-info .category-title {
  background: #e4e4e4;
  color: #141516;
  padding: 10px;
  font-size: 16px;
  font-weight: 500;
}
.category-info .category-content {
  color: #141516;
  padding: 10px;
  font-size: 12px;
}

.post-info .p-title {
  font-weight: 600;
}

.category-name {
  margin-top: 5px;
}
.category-name a {
  background: #f1f1f1;
  border-radius: 10px;
  padding: 3px 15px;
  display: inline-block;
  color: #141516 !important;
}
.category-name a:hover {
  background: #c2ceec;
}

.post-detail-page .post-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.post-detail-page .post-header .post-top {
  flex: 1;
  min-width: 0;
}
.post-detail-page .post-header .btn-back-to-list {
  flex-shrink: 0;
  margin: 0;
  padding: 0;
}
.post-detail-page .post-title {
  display: block;
  margin-bottom: 16px;
}
.post-detail-page .post-title .h3 {
  font-size: 22px;
}
.post-detail-page .post-title-actions {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}
.post-detail-page .post-title-actions .btn-dv {
  margin: 0;
}
.post-detail-page .post-main-content .post-detail {
  padding-left: 0;
}
.post-detail-page .post-content .post-user {
  display: flex;
  align-items: center;
}
.post-detail-page .post-content .post-user .avatar {
  margin-right: 10px;
  height: 32px;
  width: 32px;
}
.post-detail-page .post-content .post-user .user-name .us {
  display: inline-block;
  font-size: 16px;
  font-weight: 500;
  margin-right: 10px;
}
.post-detail-page .post-content .post-user .user-name .time {
  display: inline-block;
  font-size: 10px;
  color: #808080;
}
.post-detail-page .post-content .post-detail {
  font-size: 14px;
  color: #141516;
  line-height: 20px;
  padding: 0px 0 0 45px;
}
.post-detail-page .post-content .post-detail p {
  font-size: 14px;
}
.post-detail-page .post-bar {
  border-top: 1px solid #ecedee;
  border-bottom: 1px solid #ecedee;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 0;
  margin-top: 20px;
}
.post-detail-page .post-bar.post-bar-first.have-comment {
  padding-bottom: 0;
  border-bottom: none;
}
.post-detail-page .post-bar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.post-detail-page .post-bar ul li {
  display: inline-block;
  color: #606060;
  vertical-align: middle;
}
.post-detail-page .post-bar ul li a {
  color: #606060;
}
.post-detail-page .post-bar .bar-left ul li {
  margin-right: 15px;
}
.post-detail-page .post-bar .bar-left ul li:last-child {
  margin-right: 0;
}
.post-detail-page .post-bar .bar-right ul li {
  margin-left: 15px;
}
.post-detail-page .post-bar .bar-right ul li:first-child {
  margin-left: 0;
}
.post-detail-page .post-bar .bar-right ul li a {
  display: flex;
  align-items: center;
}
.post-detail-page .post-bar .bar-right ul li a svg {
  padding-right: 5px;
}
.post-detail-page .post-bar .bar-right ul li a:hover {
  color: #000;
}
.post-detail-page .post-bar .bar-right ul li a:hover svg {
  fill: #000 !important;
}
.post-detail-page .post-bar .bar-right ul li a:hover svg path {
  fill: #000 !important;
}
.post-detail-page .wrap-comment .comment-item .comment-item::before {
  content: "";
  position: absolute;
  left: -29px;
  top: -8px;
  width: 27px;
  height: 35px;
  border-bottom: 1px solid #dfdfdf;
  border-left: 1px solid #dfdfdf;
  border-radius: 0 0 0 20px;
}
.post-detail-page .wrap-comment .post-content {
  padding-top: 10px;
  margin-top: 10px;
}
.post-detail-page .wrap-comment .post-bar {
  border: none;
  margin-top: 0px;
  padding: 10px 0;
  position: relative;
}
.post-detail-page .post-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.post-detail-page .comment-item {
  position: relative;
  min-width: 200px;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.post-detail-page .comment-item .toggle-item {
  position: absolute;
  top: 75px;
  left: 8px;
  width: 17px;
  height: 17px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #141516;
  border-radius: 50%;
  margin-right: 5px;
  z-index: 2;
  background: #fff;
}
.post-detail-page .comment-item .toggle-item i {
  font-size: 10px;
  color: #141516;
}
.post-detail-page .comment-item .post-bar {
  padding-left: 45px;
}
.post-detail-page .comment-item .comment-line-wrap {
  padding-left: 45px;
}
.post-detail-page .comment-item.first-level::after {
  display: none;
}
.post-detail-page .comment-item:last-child::after {
  height: calc(100% - 11px);
  width: 5px;
  background: #ffffff;
  content: "";
  position: absolute;
  left: -32px;
  bottom: 0;
  border-radius: 0 9px 0 0;
  z-index: 2;
}
.post-detail-page .comment-item.first-level > .post-content {
  border-top: 1px solid #ecedee;
}
.post-detail-page .comment-item.first-level:first-child > .post-content {
  border-top: none;
}
.post-detail-page .comment-item .line-wrap {
  width: 30px;
  height: calc(100% - 55px);
  border-left: 1px solid #dfdfdf;
  position: absolute;
  bottom: 0;
  left: 16px;
  z-index: 1;
  cursor: pointer;
}
.post-detail-page .comment-item .line-wrap.isClose {
  height: 40px;
  top: 50px;
}
.post-detail-page .comment-item .line-wrap:hover {
  border-color: #464345;
}
.post-detail-page .comment-item .line-wrap:hover ~ .comment-item::before {
  border-color: #464345;
}

.images-wrap .owl-carousel.owl-drag .owl-item .slide {
  aspect-ratio: 1/1;
  width: 100%;
}
.images-wrap .owl-carousel.owl-drag .owl-item .slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.images-wrap .single-image {
  aspect-ratio: 1/1;
  width: 100%;
}
.images-wrap .single-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.forum-file-picker {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px dashed #b7c0cc;
  border-radius: 8px;
  background: #fafbfc;
  color: #303846;
  cursor: pointer;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}
.forum-file-picker:hover, .forum-file-picker:focus-within {
  border-color: #7293e6;
  background: #f5f7ff;
}
.forum-file-picker small {
  display: block;
  margin-top: 2px;
  color: #7b8491;
  font-size: 11px;
}

body .custom-modal.forum-post-modal-fullscreen {
  width: 100vw;
  max-width: none;
  --bs-modal-width: 100vw;
}
body .custom-modal.forum-post-modal-fullscreen .modal-dialog {
  width: 100vw;
  max-width: none;
  height: 100dvh;
  margin: 0;
}
body .custom-modal.forum-post-modal-fullscreen .modal-content {
  min-height: 100dvh;
}

.forum-file-picker__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #e8eeff;
  color: #3564d4;
}

.forum-pending-files {
  display: grid;
  gap: 6px;
  margin-top: 8px;
}

.forum-pending-file {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 28px;
  align-items: center;
  gap: 8px;
  padding: 7px 8px;
  border: 1px solid #e2e5e9;
  border-radius: 7px;
  background: #fff;
}

.forum-pending-file__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 6px;
  background: #f0f3f7;
  color: #647084;
}

.forum-pending-file__name {
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.forum-pending-file__remove {
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #8a94a3;
}
.forum-pending-file__remove:hover, .forum-pending-file__remove:focus-visible {
  background: #fff0f0;
  color: #dc3545;
}

app-forum-info-category-post-detail .images-wrap .single-image {
  aspect-ratio: auto;
  display: flex;
  justify-content: center;
}
app-forum-info-category-post-detail .images-wrap .single-image img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: min(600px, 60dvh);
  object-fit: contain;
}

.wrap-unit-options {
  position: relative;
}
.wrap-unit-options .unit-dropdown {
  position: absolute;
  background: #fff;
  top: 22px;
  right: 0;
  z-index: 2;
  padding: 10px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
  max-height: calc(100vh - 135px);
  overflow-y: auto;
  min-width: 165px;
  max-width: 100%;
}
.wrap-unit-options .unit-dropdown .btn-close {
  position: absolute;
  right: 10px;
  top: 10px;
  font-size: 9px;
}
.wrap-unit-options .unit-dropdown ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.wrap-unit-options .unit-dropdown ul li {
  color: #141516;
  display: table;
  width: 100%;
  border-bottom: 1px solid #ecedee;
  padding: 8px 0;
  font-size: 14px;
  cursor: pointer;
}
.wrap-unit-options .unit-dropdown ul li:last-child {
  border: 0;
}

.unit-type-name {
  font-weight: 500;
}

.box-list-contact a {
  font-size: 12px;
}

.lists-of-values .table thead tr th {
  border-color: #ecedee;
}
.lists-of-values .cdk-drag td {
  border-color: #ecedee;
}

.more-replies {
  padding: 18px 0 5px 0;
  color: #141516;
  display: flex;
}
.more-replies span {
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #141516;
  border-radius: 50%;
  margin-right: 5px;
}
.more-replies span i {
  font-size: 11px;
}

.forum-detail {
  border: 1px solid #e4e4e4;
  border-radius: 15px;
  position: relative;
}
.forum-detail:has(app-forum-info-category-post-detail) {
  --forum-page-offset: 225px;
  --forum-sidebar-top: calc(var(--hh, 50px) + 45px);
}
.forum-detail::before {
  content: "";
  position: absolute;
  width: 1px;
  height: 100%;
  background: #e4e4e4;
  top: 0;
  left: calc(25% - 3px);
}
@media (min-width: 994px) {
  .forum-detail:has(app-forum-info-category-post-detail) .sticky-column .wrap-forum-sidebar {
    position: fixed;
    z-index: 2;
    top: var(--forum-sidebar-top, var(--hh, 50px));
    left: calc(var(--forum-page-offset) + 16px);
    width: calc((100vw - var(--forum-page-offset) - 20px) / 4 - 5px);
    max-height: calc(100dvh - var(--forum-sidebar-top, var(--hh, 50px)));
    overflow-y: auto;
  }
}

.main-container.openedMenu .forum-detail:has(app-forum-info-category-post-detail) {
  --forum-page-offset: var(--sb);
}

.forum-notify {
  padding: 0 10px 5px 10px;
}

.waiting-approve-notify {
  color: #fc9006;
  font-size: 12px;
}

.row-comment:hover .row-actions {
  display: block;
}

.row-actions {
  padding: 5px 0;
}
.row-actions span {
  padding-right: 5px;
  margin-right: 5px;
  position: relative;
  cursor: pointer;
}
.row-actions span::after {
  content: "";
  position: absolute;
  right: 0;
  top: 2px;
  width: 1px;
  height: 12px;
  background: #ddd;
}
.row-actions span:last-child {
  margin: 0;
  padding: 0;
}
.row-actions span:last-child::after {
  display: none;
}
.row-actions span.approve {
  color: #006505;
}
.row-actions span.ban {
  color: #a00;
}
.row-actions span.delete {
  color: #a00;
}

.mat-mdc-select-value-text,
.mdc-list-item__primary-text {
  font-size: 14px !important;
}

.property-collapsed {
  font-size: 17px;
  color: #adadad;
}

/* Multi-step form styles */
.form-step-layout {
  display: flex;
  align-items: flex-start;
}

/* Step progress indicator at the top */
.step-progress-container {
  margin: 30px 0;
  width: 100%;
}

.step-progress-bar {
  display: flex;
  list-style-type: none;
  padding: 0;
  margin: 0;
  width: 100%;
  position: relative;
}

.step-progress-bar:before {
  content: "";
  position: absolute;
  top: 16px;
  left: 0;
  height: 2px;
  width: 100%;
  background-color: #e0e0e0;
  z-index: 1;
}

.step-progress-bar li {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  z-index: 2;
}

.step-progress-bar li .step-number {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: #fff;
  border: 2px solid #e0e0e0;
  color: #8c8c8c;
  font-weight: 500;
  margin-bottom: 6px;
}

.step-progress-bar li .step-title {
  font-size: 12px;
  color: #8c8c8c;
  text-align: center;
}

/* Active step */
.step-progress-bar li.active .step-number {
  border-color: #1976d2;
  color: #1976d2;
}

.step-progress-bar li.active .step-title {
  color: #1976d2;
  font-weight: 600;
}

/* Completed step */
.step-progress-bar li.completed .step-number {
  background-color: #1976d2;
  border-color: #1976d2;
  color: #fff;
}

/* Sidebar styles */
.step-sidebar {
  width: 240px;
  padding-right: 15px;
  position: sticky;
  top: 1rem;
}

.property-collapsed {
  cursor: pointer;
}

.step-list {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.step-list li {
  padding: 12px 15px;
  border-radius: 4px;
  margin-bottom: 8px;
  cursor: pointer;
  display: flex;
  align-items: center;
  transition: all 0.2s;
  border-left: 3px solid transparent;
}
.step-list li .step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #e0e0e0;
  color: #6c6c6c;
  margin-right: 8px;
  font-size: 14px;
}
.step-list li .step-name {
  flex: 1;
}
.step-list li .step-status {
  color: #4caf50;
  font-size: 14px;
}
.step-list li.active {
  background-color: #e3f2fd;
  border-left-color: #1976d2;
}
.step-list li.active .step-number {
  background-color: #1976d2;
  color: #fff;
}
.step-list li.completed .step-number {
  background-color: #4caf50;
  color: #fff;
}
.step-list li.disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Form content area */
.step-content {
  flex: 1;
  padding: 0 15px;
  border-left: 1px solid #e0e0e0;
}

/* Button styles */
.btn-bottom {
  padding-top: 20px;
}

/* Article styles */
.container-article {
  margin: 0 auto;
  max-width: 1146px;
  width: 95%;
}

.navbar > .container-article {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}

.mf-container .container-article {
  width: 100%;
  max-width: 100%;
}

/* Responsive styles */
@media (max-width: 768px) {
  .form-step-layout {
    flex-direction: column;
  }
  .step-sidebar {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #e0e0e0;
    margin-bottom: 20px;
    padding-bottom: 15px;
  }
  .step-progress-bar li .step-title {
    display: none;
  }
}
/* Styles for the ellipsis menu */
.article-header .navbar-nav .nav-item {
  line-height: 30px;
}
.article-header .navbar-nav .nav-item a {
  font-size: 13px;
}

.ellipsis-toggle {
  cursor: pointer;
  padding: 0.5rem 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  font-weight: bold;
  font-size: 1.2rem;
  color: #333;
}

.ellipsis-toggle:hover {
  color: #0d6efd;
  background-color: rgba(13, 110, 253, 0.04);
}

.ellipsis-toggle i {
  font-size: 1.6rem;
  transition: transform 0.3s ease;
}
.ellipsis-toggle i.btn-close {
  font-size: 1.2rem;
}

.rotate-180 {
  transform: rotate(180deg);
}

.submenu-container {
  position: sticky;
  left: 0;
  top: 60px;
  width: 100%;
  background-color: white;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
  z-index: 1000;
  padding: 1.5rem 2rem;
  margin-top: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  transition: all 0.01s ease;
  animation: fadeInDown 0.3s ease;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.submenu-item {
  padding: 0.75rem 1.25rem;
  margin: 0.35rem 0.5rem;
  text-decoration: none;
  color: #212529;
  border-radius: 4px;
  transition: all 0.2s ease;
  display: inline-block;
  min-width: 120px;
  text-align: center;
}
.submenu-item:hover {
  background-color: #f0f4ff;
  color: #0d6efd;
  transform: translateY(-2px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.submenu-item.active {
  color: #0d6efd;
  font-weight: 500;
  background-color: #f0f4ff;
}

.input-no-style {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100%;
}

.phone-view {
  display: none;
}

.pc-view {
  display: block;
}

.ot-custom-address-field .mat-mdc-form-field-type-mat-input.mat-form-field-appearance-fill {
  padding: 0;
}
.ot-custom-address-field .mat-mdc-form-field-type-mat-input.mat-form-field-appearance-fill .mat-mdc-text-field-wrapper.mdc-text-field {
  background: none !important;
  padding: 0 10px;
}
.ot-custom-address-field .mat-mdc-form-field-type-mat-input.mat-form-field-appearance-fill .mat-mdc-text-field-wrapper.mdc-text-field .mat-mdc-form-field-flex .mat-mdc-form-field-infix {
  min-height: 34px;
  padding: 5px 0;
}
.ot-custom-address-field .mat-mdc-form-field-type-mat-input.mat-form-field-appearance-fill .mat-mdc-text-field-wrapper.mdc-text-field .mat-mdc-form-field-flex .mat-mdc-form-field-infix input {
  font-size: 1rem;
}
.ot-custom-address-field .mat-mdc-form-field-type-mat-input.mat-form-field-appearance-fill .mat-mdc-text-field-wrapper .mdc-line-ripple::before {
  border: none;
}

@media (max-width: 768px) {
  .phone-view {
    display: block;
  }
  .pc-view {
    display: none;
  }
}
.ot-kanban-progress {
  overflow: auto;
  width: 100%;
}
.ot-kanban-progress .no-ot-kanban {
  margin: 0;
}

.page-content-appointment {
  padding: 0;
}

.ot-content {
  border-top: 1px solid #ecedee;
  position: fixed;
  top: 115px;
}
.ot-content.ot-content-appointment {
  top: 274px;
  padding: 0;
}
.ot-content.ot-content-appointment .wrap-ot-content {
  padding: 0 15px;
}
.ot-content.ot-content-appointment .wrap-ot-content .ot-content-left,
.ot-content.ot-content-appointment .wrap-ot-content .ot-content-right {
  height: calc(100vh - 274px);
}
.ot-content.ot-content-appointment-personal {
  top: 228px;
  padding: 0;
}
.ot-content.ot-content-appointment-personal .wrap-ot-content {
  padding: 0 15px;
}
.ot-content.ot-content-appointment-personal .wrap-ot-content .ot-content-left,
.ot-content.ot-content-appointment-personal .wrap-ot-content .ot-content-right {
  height: calc(100vh - 228px);
}
.ot-content.has-sub-header {
  top: 162px;
}
.ot-content.ot-content-two-nav {
  top: 162px;
  border: none;
}
.ot-content.ot-content-two-nav .wrap-content-board {
  padding-top: 15px;
  height: calc(100vh - 148px - 15px);
  overflow-y: auto;
}
.ot-content.ot-content-two-nav .ot-content-left,
.ot-content.ot-content-two-nav .ot-content-right,
.ot-content.ot-content-two-nav .ai-chat-box-col .wrap-ai-content {
  height: calc(100vh - 165px);
}
.ot-content.dl-page {
  position: relative;
  top: 0;
  width: calc(100% - 12px) !important;
}
.ot-content.dl-page .wrap-content-board {
  height: auto;
}
.ot-content.dl-page .ot-content-left,
.ot-content.dl-page .ot-content-right {
  height: auto;
}
.ot-content .detail-column {
  background: none;
  border: none;
  padding: 0;
}
.ot-content .detail-column .form-information,
.ot-content .detail-column .box-column {
  margin-bottom: 0;
}
.ot-content .ot-content-left {
  border-right: 1px solid #ecedee;
  border-bottom: 1px solid #ecedee;
  height: calc(100vh - 120px);
  overflow: auto;
  padding: 0 !important;
  scroll-behavior: smooth;
}
.ot-content .ot-content-left .detail-column {
  border: none;
  border-radius: 0;
}
.ot-content .ot-content-left .detail-column .form-information,
.ot-content .ot-content-left .detail-column .box-column {
  border-radius: 0;
  border: none;
  border-bottom: 1px solid #ecedee;
}
.ot-content .ot-content-right {
  border-left: 1px solid #ecedee;
  border-bottom: 1px solid #ecedee;
  padding: 0 !important;
  height: calc(100vh - 120px);
  overflow: auto;
  scroll-behavior: smooth;
}
.ot-content .ot-content-right .box-column {
  border-radius: 0;
  border: none;
  border-bottom: 1px solid #ecedee;
}
.ot-content .ot-content-right .column-title {
  padding: 15px;
  margin: 0;
}
.ot-content .ot-content-right .ot-kanban-progress {
  border-bottom: 1px solid #ecedee;
}

.wrap-ot-content {
  position: relative;
}
.wrap-ot-content .ot-content-left-hide {
  width: 0px;
  opacity: 0;
  margin-left: -1px;
}
.wrap-ot-content .ot-content-left,
.wrap-ot-content .ot-content-right {
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  position: relative;
  z-index: 2;
  background: #FFFFFF;
}
.wrap-ot-content.has-toggle-icon .ct-right-title {
  padding-left: 40px;
}
.wrap-ot-content .toggle-left-side {
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  position: absolute;
  top: 20px;
  left: 63px;
  text-align: right;
  z-index: 2;
  font-size: 16px;
  cursor: pointer;
}
.wrap-ot-content .toggle-left-side.left-close {
  left: 0;
  width: 64px;
}
.wrap-ot-content .toggle-left-side i.fa-bars {
  padding-right: 5px;
}

.ot-section-menu {
  width: 100%;
  border-bottom: 1px solid #ecedee;
  z-index: 1000;
  position: sticky;
  top: 0;
  background-color: white;
  transition: all 0.01s ease;
}
.ot-section-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ot-section-menu ul li {
  display: inline-block;
  vertical-align: bottom;
}
.ot-section-menu ul li:first-child a {
  padding-left: 15px;
}
.ot-section-menu ul li:last-child a {
  padding-right: 15px;
}
.ot-section-menu ul li a {
  padding: 10px 7.5px;
  display: table;
  color: #6f767e;
  font-weight: 400;
  font-size: 14px;
}
.ot-section-menu ul li.active a, .ot-section-menu ul li:hover a {
  color: #141516;
}
.ot-section-menu ul li.active, .ot-section-menu ul li:hover {
  position: relative;
}
.ot-section-menu ul li.active::before, .ot-section-menu ul li:hover::before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #141516;
  transition: all 0.01s ease;
}
.ot-section-menu ul li.active a {
  transition: all 0.01s ease;
}

.loom-video-wrap {
  position: relative;
  padding-bottom: 60.8% !important; /* 16:9 Aspect Ratio */
  height: 0;
}
.loom-video-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.kanban-detail-act-dialog {
  min-height: 100vh;
}
.kanban-detail-act-dialog .ot-content {
  top: 54px;
}
.kanban-detail-act-dialog .ot-content .ot-content-left,
.kanban-detail-act-dialog .ot-content .ot-content-right {
  height: calc(100vh - 56px);
}
.kanban-detail-act-dialog .ot-content.ot-content-two-nav {
  top: 99px;
}
.kanban-detail-act-dialog .ot-content.ot-content-two-nav .ot-content-left,
.kanban-detail-act-dialog .ot-content.ot-content-two-nav .ot-content-right {
  height: calc(100vh - 101px);
}

/**
* AI
*/
.ai-container {
  width: 100%;
  overflow: hidden;
}
.ai-container.chat-dialog-container.channel-only-chat-pane {
  height: 100%;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: #fff;
}
.ai-container.chat-dialog-container.channel-only-chat-pane > .row {
  display: flex;
  flex-wrap: nowrap;
  height: 100%;
  min-height: 0;
}
.ai-container.chat-dialog-container.channel-only-chat-pane .chat-only-ai-box-right {
  height: 100%;
}
.ai-container.chat-dialog-container.channel-only-chat-pane .wrap-ai-content {
  height: 100%;
  background: #fff;
  display: flex;
  flex-direction: column;
}
.ai-container.chat-dialog-container.channel-only-chat-pane .wrap-ai-content .ai-content {
  flex: 1 1 auto;
  padding-top: 10px;
}
.ai-container.chat-dialog-container.channel-only-chat-pane .wrap-ai-content .mes-item {
  padding-left: 22px;
}
.ai-container.chat-dialog-container.channel-only-chat-pane .answer-box {
  margin-top: auto;
  padding: 10px 14px 14px;
}
.ai-container.chat-dialog-container.standalone-chat-page {
  height: 100%;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: #fff;
}
.ai-container.chat-dialog-container.standalone-chat-page > .row {
  height: 100%;
}
.ai-container.chat-dialog-container.standalone-chat-page .ai-box-left,
.ai-container.chat-dialog-container.standalone-chat-page .ai-box-right {
  height: 100%;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-sidebar,
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content {
  height: 100%;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-sidebar {
  background: #fff;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content {
  background: #fff;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-header,
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .answer-box {
  flex: 0 0 auto;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-content {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-rich-wrapper {
  width: 100%;
  box-sizing: border-box;
}
.ai-container.chat-dialog-container.standalone-chat-page.chat-search-panel-open > .row {
  flex-wrap: nowrap;
  min-width: 0;
}
.ai-container.chat-dialog-container.standalone-chat-page.chat-search-panel-open .ai-box-left {
  flex: 0 0 25%;
  max-width: 25%;
}
.ai-container.chat-dialog-container.standalone-chat-page.chat-search-panel-open .ai-box-right {
  flex: 1 1 auto;
  max-width: none;
  min-width: 0;
}
.ai-container.chat-dialog-container.standalone-chat-page.chat-search-panel-open .ai-box-search {
  flex: 0 0 320px;
  max-width: 320px;
}
.ai-container.chat-dialog-container.embedded-chat-panel {
  height: 100%;
  overflow: hidden;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: #fff;
}
.ai-container.chat-dialog-container.embedded-chat-panel > .row {
  height: 100%;
  min-height: 0;
  overflow: hidden;
}
.ai-container.chat-dialog-container.embedded-chat-panel .ai-box-left,
.ai-container.chat-dialog-container.embedded-chat-panel .ai-box-right {
  flex: 0 0 100%;
  max-width: 100%;
  height: 100%;
  min-height: 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel .wrap-ai-sidebar,
.ai-container.chat-dialog-container.embedded-chat-panel .wrap-ai-content {
  height: 100%;
  min-height: 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel .wrap-ai-sidebar {
  background: #fff;
  border-right: none;
}
.ai-container.chat-dialog-container.embedded-chat-panel .wrap-ai-content {
  background: #fff;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}
.ai-container.chat-dialog-container.embedded-chat-panel .wrap-ai-content .ai-header,
.ai-container.chat-dialog-container.embedded-chat-panel .wrap-ai-content .answer-box {
  flex: 0 0 auto;
}
.ai-container.chat-dialog-container.embedded-chat-panel .wrap-ai-content .ai-header {
  position: sticky;
  top: 0;
  z-index: 24;
  background: #fff;
}
.ai-container.chat-dialog-container.embedded-chat-panel .wrap-ai-content .ai-content {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-panel-back-btn {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border: none;
  background: none;
  color: #4c5258;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
  padding: 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-panel-back-btn svg {
  width: 22px;
  height: 22px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-panel-sidebar-toggle-btn {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border: none;
  background: none;
  color: #4c5258;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
  padding: 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-panel-sidebar-toggle-btn svg {
  width: 22px;
  height: 22px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-header-icon-btn {
  width: 32px;
  height: 32px;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: #4c5258;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-header-icon-btn:hover {
  background: rgba(13, 110, 253, 0.1);
  color: #0d6efd;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-header-icon-btn-menu {
  border: 1px solid #e2e8f0;
  background: #fff;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-mode-select {
  width: min(150px, 100%);
  min-width: 0;
  height: 34px;
  border: 1px solid #dfe6ef;
  border-radius: 9px;
  background: #f8fafc;
  color: #273449;
  padding: 0 25px 0 9px;
  font-size: 13px;
  font-weight: 700;
  line-height: 32px;
  outline: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-mode-select:focus {
  border-color: #75a8f7;
  box-shadow: 0 0 0 3px rgba(20, 110, 245, 0.12);
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-link-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-header-link-btn {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border: 0 !important;
  border-radius: 10px;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  text-decoration: none;
  box-shadow: none !important;
  transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-link-btn img,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-header-link-btn img {
  width: 17px;
  height: 17px;
  display: block;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-link-btn:hover,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-header-link-btn:hover {
  background: #f0f4f9;
  transform: translateY(-1px);
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-link-btn:focus-visible,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-header-link-btn:focus-visible {
  outline: 3px solid rgba(20, 110, 245, 0.2);
  outline-offset: 1px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-header-icon-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-panel-sidebar-toggle-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-new-btn {
  appearance: none;
  border: 0 !important;
  box-shadow: none !important;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box {
  padding-left: 10px;
  padding-right: 10px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .chat-composer-actions {
  min-height: 48px;
  gap: 3px;
  padding: 4px;
  overflow: hidden;
  display: grid;
  grid-template-columns: 34px 34px minmax(0, 1fr) 1px 34px;
  align-items: center;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .chat-composer-actions:not(:has(.chat-composer-agent-options)) {
  grid-template-columns: 34px 34px minmax(0, 1fr) 34px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .chat-composer-character-count:not(.chat-composer-character-count-warning) {
  display: none;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .chat-composer-character-count-warning {
  display: none;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .chat-composer-action-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .chat-composer-send-btn {
  width: 34px;
  height: 34px;
  min-width: 34px;
  flex: 0 0 34px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .chat-composer-action-btn-image {
  display: none;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .wrap-input-question .chat-composer-agent-options {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 3px;
  width: 100%;
  flex: 1 1 auto;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .wrap-input-question .chat-agent-model-picker {
  width: min(118px, 100%);
  flex: 1 1 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .wrap-input-question .chat-agent-model-toggle {
  min-height: 34px;
  height: 34px;
  padding: 0 20px 0 7px;
  border-radius: 9px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .wrap-input-question .chat-agent-model-toggle-name {
  font-size: 10px;
  text-align: left;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .wrap-input-question .chat-agent-composer-control-group {
  min-width: 0;
  flex: 1 1 auto;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .wrap-input-question .chat-agent-composer-control-group:last-child {
  flex: 0 0 64px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .wrap-input-question .chat-agent-composer-label {
  display: none;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .wrap-input-question .chat-agent-composer-select {
  width: 100%;
  max-width: none;
  min-width: 0;
  min-height: 34px;
  height: 34px;
  padding: 0 20px 0 7px;
  border-radius: 9px;
  font-size: 10px;
  line-height: 32px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .wrap-input-question .chat-agent-composer-select-reasoning {
  width: 64px;
  max-width: 64px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .answer-box .chat-composer-actions-divider {
  margin: 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide > .row {
  display: flex;
  flex-wrap: nowrap;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .ai-box-left {
  flex: 0 0 176px;
  max-width: 176px;
  border-right: 1px solid #e8ebf0;
  background: #fbfbfc;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .ai-box-right {
  flex: 1 1 auto;
  max-width: none;
  min-width: 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide.chat-search-panel-open .ai-box-right,
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide.chat-search-panel-open .ai-box-search {
  flex: 0 0 292px;
  max-width: 292px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .ai-box-search {
  min-width: 0;
  height: 100%;
  border-left: 1px solid #e8ebf0;
  background: #fff;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-panel {
  height: 100%;
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-controls {
  padding: 14px 16px;
  border-bottom: 1px solid #eef0f2;
  background: #fff;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-title {
  color: #272b30;
  font-size: 14px;
  font-weight: 700;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-close-btn {
  width: 28px;
  height: 28px;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: #6c757d;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  line-height: 1;
  padding: 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-close-btn:hover {
  background: #f1f3f5;
  color: #272b30;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-input-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-input-row .form-control {
  height: 36px;
  font-size: 13px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-submit-btn {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border: none;
  border-radius: 10px;
  background: #0d6efd;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-submit-btn:hover {
  background: #0b5ed7;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-results {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 14px 14px 18px;
  background: #f8fafc;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-result-item {
  width: 100%;
  border: none;
  background: transparent;
  padding: 0;
  margin: 0 0 12px;
  text-align: left;
  color: inherit;
  cursor: pointer;
  display: block;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-result-item .mes-item {
  margin-bottom: 0;
  padding-left: 30px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-result-item .q-content {
  max-width: 100%;
  transition: box-shadow 0.18s ease, transform 0.18s ease;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-result-item:hover .q-content {
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
  transform: translateY(-1px);
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-result-time {
  color: #8a8e92;
  font-size: 12px;
  line-height: 16px;
  margin-top: 4px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-attachment-note,
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .chat-search-empty {
  color: #6c757d;
  font-size: 13px;
  line-height: 20px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar {
  background: #fbfbfc;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-header {
  padding: 8px 6px 6px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar {
  padding: 0 3px 6px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar .c-item {
  gap: 6px;
  padding: 6px 4px;
  margin-bottom: 4px;
  border-radius: 8px;
  min-height: 44px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar .channel-group-avatar {
  width: 30px;
  height: 30px;
  min-width: 30px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar .avatar-tile {
  font-size: 10px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar .name {
  font-size: 11px;
  line-height: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  width: 100%;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar .c-name {
  min-height: 30px;
  display: flex;
  align-items: center !important;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar .channel-content {
  display: flex;
  align-items: center;
  min-width: 0;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar .w-item,
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar .menu-setting {
  width: 100%;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar .c-info,
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-sidebar .ai-sidebar .text-muted {
  display: none !important;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-content .ai-header {
  padding: 10px 16px 10px 18px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-content .ai-content {
  padding: 18px 18px 20px;
}
.ai-container.chat-dialog-container.embedded-chat-panel.embedded-chat-panel-wide .wrap-ai-content .answer-box {
  padding: 10px 16px 14px;
}
.ai-container.chat-dialog-container.compact-chat-modal {
  height: 100vh;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: #fff;
}
.ai-container.chat-dialog-container.compact-chat-modal > .row {
  height: 100%;
}
.ai-container.chat-dialog-container.compact-chat-modal .ai-box-left,
.ai-container.chat-dialog-container.compact-chat-modal .ai-box-right {
  flex: 0 0 100%;
  max-width: 100%;
  height: 100%;
}
.ai-container.chat-dialog-container.compact-chat-modal .wrap-ai-sidebar,
.ai-container.chat-dialog-container.compact-chat-modal .wrap-ai-content {
  height: 100%;
}
.ai-container.chat-dialog-container.compact-chat-modal .wrap-ai-sidebar,
.ai-container.chat-dialog-container.compact-chat-modal .wrap-ai-content {
  background: #fff;
  border-right: none;
}
.ai-container.chat-dialog-container.compact-chat-modal .chat-panel-back-btn {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border: none;
  background: none;
  color: #4c5258;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
  padding: 0;
}
.ai-container.chat-dialog-container.compact-chat-modal .chat-panel-back-btn svg {
  width: 22px;
  height: 22px;
}
.ai-container.chat-dialog-container.compact-chat-modal .wrap-ai-sidebar .ai-header,
.ai-container.chat-dialog-container.compact-chat-modal .wrap-ai-content .ai-header {
  padding: 10px 14px;
}
.ai-container.chat-dialog-container.compact-chat-modal .wrap-ai-sidebar .ai-sidebar {
  height: calc(100% - 62px);
}
.ai-container.chat-dialog-container.compact-chat-modal .wrap-ai-content {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}
.ai-container.chat-dialog-container.compact-chat-modal .wrap-ai-content .ai-content {
  flex: 1 1 auto;
  height: auto;
  min-width: 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
}
.ai-container.chat-dialog-container.compact-chat-modal .answer-box {
  margin-top: auto;
  flex: 0 0 auto;
  position: static;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.ai-container.chat-dialog-container.compact-chat-modal .answer-box .chat-composer-rich-wrapper {
  width: 100%;
  box-sizing: border-box;
}
.ai-container.chat-dialog-container .wrap-mes-item {
  min-width: 0;
  position: relative;
}
.ai-container.chat-dialog-container .fixheader {
  gap: 18px;
  min-width: 0;
  overflow: hidden;
}
.ai-container.chat-dialog-container .fixheader > .d-flex:first-child {
  flex: 1 1 auto;
  min-width: 0;
}
.ai-container.chat-dialog-container .popup-channel-header {
  display: flex;
  align-items: center;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.ai-container.chat-dialog-container .popup-channel-header-avatar {
  width: 35px;
  height: 35px;
  min-width: 35px;
  border-radius: 50%;
  overflow: hidden;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  background: #e9ecef;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06);
  align-self: center;
  margin-right: 10px;
}
.ai-container.chat-dialog-container .popup-channel-header-avatar.tile-count-1 {
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
}
.ai-container.chat-dialog-container .popup-channel-header-avatar.tile-count-2 {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: 1fr;
}
.ai-container.chat-dialog-container .popup-channel-header-avatar.tile-count-3 .avatar-tile:first-child {
  grid-row: span 2;
}
.ai-container.chat-dialog-container .popup-channel-header-avatar .avatar-tile {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 0.5px solid rgba(255, 255, 255, 0.9);
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  width: calc(100% + 1px);
  height: calc(100% + 1px);
}
.ai-container.chat-dialog-container .popup-channel-header-avatar .avatar-tile.ai-special-avatar {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 2px;
  border-radius: 50%;
}
.ai-container.chat-dialog-container .popup-channel-header-avatar .avatar-tile.one-user {
  border-radius: 50%;
}
.ai-container.chat-dialog-container .popup-channel-header-avatar .avatar-tile-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.avatar-tile.ai-special-avatar .ai-container.chat-dialog-container .popup-channel-header-avatar .avatar-tile-img {
  object-fit: contain;
}
.ai-container.chat-dialog-container .popup-channel-header-avatar .avatar-tile-text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.ai-container.chat-dialog-container .popup-channel-header-content {
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
}
.ai-container.chat-dialog-container .popup-channel-header-main {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  overflow: hidden;
}
.ai-container.chat-dialog-container .popup-channel-header-title {
  color: #272b30;
  min-width: 0;
  flex: 1 1 auto;
  max-width: none;
}
.ai-container.chat-dialog-container .popup-channel-header-title-text {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ai-container.chat-dialog-container .popup-channel-header-title a {
  vertical-align: middle;
}
.ai-container.chat-dialog-container .popup-channel-header-inline-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
}
.ai-container.chat-dialog-container .popup-channel-header-inline-actions > a,
.ai-container.chat-dialog-container .popup-channel-header-inline-actions > button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border: 0 !important;
  border-radius: 8px;
  background: transparent;
  color: #4c5258;
  font-size: 16px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
  box-shadow: none !important;
  transition: background-color 160ms ease, color 160ms ease;
}
.ai-container.chat-dialog-container .popup-channel-header-inline-actions > a img,
.ai-container.chat-dialog-container .popup-channel-header-inline-actions > button img {
  display: block;
  width: 16px;
  height: 16px;
}
.ai-container.chat-dialog-container .popup-channel-header-inline-actions > a:hover,
.ai-container.chat-dialog-container .popup-channel-header-inline-actions > button:hover {
  background: #f0f4f9;
  color: #1458c8;
}
.ai-container.chat-dialog-container .chat-panel-header-actions {
  position: relative;
  flex: 0 0 auto;
  padding-left: 8px;
  overflow: visible;
}
.ai-container.chat-dialog-container .chat-scroll-to-bottom-anchor {
  position: relative;
  flex: 0 0 0;
  height: 0;
  z-index: 4;
}
.ai-container.chat-dialog-container .chat-scroll-to-bottom-btn {
  position: absolute;
  left: 50%;
  bottom: 14px;
  width: 40px;
  height: 40px;
  border: 1px solid #d6e0ee;
  border-radius: 50%;
  background: #fff;
  color: #0d6efd;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.18);
  transform: translateX(-50%);
  transition: background 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}
.ai-container.chat-dialog-container .chat-scroll-to-bottom-btn:hover {
  background: #f5f8ff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.22);
  transform: translate(-50%, -2px);
}
.ai-container.chat-dialog-container .chat-scroll-to-bottom-btn:focus-visible {
  outline: 2px solid #0d6efd;
  outline-offset: 2px;
}
.ai-container.chat-dialog-container .chat-image-viewer {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(8, 12, 20, 0.94);
}
.ai-container.chat-dialog-container .chat-image-viewer-media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100vw - 160px);
  height: calc(100vh - 96px);
  max-width: calc(100vw - 160px);
  max-height: calc(100vh - 96px);
}
.ai-container.chat-dialog-container .chat-image-viewer-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  user-select: none;
}
.ai-container.chat-dialog-container .chat-image-viewer-close,
.ai-container.chat-dialog-container .chat-image-viewer-nav {
  position: absolute;
  z-index: 2;
  width: 44px;
  height: 44px;
  border: none;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: background 0.15s ease, transform 0.15s ease;
}
.ai-container.chat-dialog-container .chat-image-viewer-close:hover,
.ai-container.chat-dialog-container .chat-image-viewer-nav:hover {
  background: rgba(255, 255, 255, 0.22);
}
.ai-container.chat-dialog-container .chat-image-viewer-close:focus-visible,
.ai-container.chat-dialog-container .chat-image-viewer-nav:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}
.ai-container.chat-dialog-container .chat-image-viewer-close {
  top: 20px;
  right: 20px;
}
.ai-container.chat-dialog-container .chat-image-viewer-nav {
  top: 50%;
  transform: translateY(-50%);
}
.ai-container.chat-dialog-container .chat-image-viewer-nav:hover {
  transform: translateY(-50%) scale(1.05);
}
.ai-container.chat-dialog-container .chat-image-viewer-prev {
  left: 24px;
}
.ai-container.chat-dialog-container .chat-image-viewer-next {
  right: 24px;
}
.ai-container.chat-dialog-container .chat-image-viewer-counter {
  position: absolute;
  z-index: 2;
  top: 28px;
  left: 50%;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(8, 12, 20, 0.58);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  transform: translateX(-50%);
}
@media (max-width: 575.98px) {
  .ai-container.chat-dialog-container .chat-image-viewer-media {
    width: calc(100vw - 24px);
    height: calc(100vh - 80px);
    max-width: calc(100vw - 24px);
    max-height: calc(100vh - 80px);
  }
  .ai-container.chat-dialog-container .chat-image-viewer-nav {
    width: 40px;
    height: 40px;
    background: rgba(8, 12, 20, 0.56);
  }
  .ai-container.chat-dialog-container .chat-image-viewer-prev {
    left: 12px;
  }
  .ai-container.chat-dialog-container .chat-image-viewer-next {
    right: 12px;
  }
}
.ai-container.chat-dialog-container .ai-box-search {
  min-width: 0;
  height: 100%;
  border-left: 1px solid #e8ebf0;
  background: #fff;
}
.ai-container.chat-dialog-container .chat-search-panel {
  height: 100%;
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.ai-container.chat-dialog-container .chat-search-controls {
  padding: 14px 16px;
  border-bottom: 1px solid #eef0f2;
  background: #fff;
}
.ai-container.chat-dialog-container .chat-search-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.ai-container.chat-dialog-container .chat-search-title {
  color: #272b30;
  font-size: 14px;
  font-weight: 700;
}
.ai-container.chat-dialog-container .chat-search-close-btn {
  width: 28px;
  height: 28px;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: #6c757d;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  line-height: 1;
  padding: 0;
}
.ai-container.chat-dialog-container .chat-search-close-btn:hover {
  background: #f1f3f5;
  color: #272b30;
}
.ai-container.chat-dialog-container .chat-search-input-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.ai-container.chat-dialog-container .chat-search-input-row .form-control {
  height: 36px;
  font-size: 13px;
}
.ai-container.chat-dialog-container .chat-search-submit-btn {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border: none;
  border-radius: 10px;
  background: #0d6efd;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.ai-container.chat-dialog-container .chat-search-submit-btn:hover {
  background: #0b5ed7;
}
.ai-container.chat-dialog-container .chat-search-results {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 14px 14px 18px;
  background: #f8fafc;
}
.ai-container.chat-dialog-container .chat-search-result-item {
  width: 100%;
  border: none;
  background: transparent;
  padding: 0;
  margin: 0 0 12px;
  text-align: left;
  color: inherit;
  cursor: pointer;
  display: block;
}
.ai-container.chat-dialog-container .chat-search-result-item .mes-item {
  margin-bottom: 0;
  padding-left: 30px;
}
.ai-container.chat-dialog-container .chat-search-result-item .q-content {
  max-width: 100%;
  transition: box-shadow 0.18s ease, transform 0.18s ease;
}
.ai-container.chat-dialog-container .chat-search-result-item:hover .q-content {
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
  transform: translateY(-1px);
}
.ai-container.chat-dialog-container .chat-search-result-time {
  color: #8a8e92;
  font-size: 12px;
  line-height: 16px;
  margin-top: 4px;
}
.ai-container.chat-dialog-container .chat-search-attachment-note,
.ai-container.chat-dialog-container .chat-search-empty {
  color: #6c757d;
  font-size: 13px;
  line-height: 20px;
}
.ai-container.chat-dialog-container .chat-header-action-menu {
  position: relative;
  flex: 0 0 auto;
  overflow: visible;
}
.ai-container.chat-dialog-container .chat-translation-header-menu-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
  color: #172033;
  font-size: 13px;
  font-weight: 800;
}
.ai-container.chat-dialog-container .chat-translation-language-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
}
.ai-container.chat-dialog-container .chat-translation-language-option {
  min-width: 0;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  color: #364152;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 7px 8px;
  text-align: left;
  font-size: 12px;
  line-height: 16px;
}
.ai-container.chat-dialog-container .chat-translation-language-option i {
  width: 12px;
  color: transparent;
  font-size: 10px;
}
.ai-container.chat-dialog-container .chat-translation-language-option:hover {
  background: #f3f6fb;
}
.ai-container.chat-dialog-container .chat-translation-language-option.is-selected {
  border-color: #bfd5fb;
  background: #eef5ff;
  color: #0b5ed7;
  font-weight: 700;
}
.ai-container.chat-dialog-container .chat-translation-language-option.is-selected i {
  color: #0b5ed7;
}
.ai-container.chat-dialog-container .chat-translation-menu-divider {
  height: 1px;
  margin: 12px 0;
  background: #e8edf3;
}
.ai-container.chat-dialog-container .chat-translation-auto-option {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  cursor: pointer;
}
.ai-container.chat-dialog-container .chat-translation-auto-option strong,
.ai-container.chat-dialog-container .chat-translation-auto-option small {
  display: block;
}
.ai-container.chat-dialog-container .chat-translation-auto-option strong {
  color: #263244;
  font-size: 12px;
  line-height: 17px;
}
.ai-container.chat-dialog-container .chat-translation-auto-option small {
  margin-top: 2px;
  color: #778195;
  font-size: 11px;
  line-height: 15px;
}
.ai-container.chat-dialog-container .chat-header-action-menu-panel {
  position: fixed;
  z-index: 1200;
  min-width: 190px;
  padding: 8px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.16);
}
.ai-container.chat-dialog-container .chat-header-action-menu-panel.has-translation-settings {
  width: min(360px, 100vw - 24px);
}
.ai-container.chat-dialog-container .chat-header-translation-item > .fa-globe {
  color: #4c5258;
}
.ai-container.chat-dialog-container .chat-header-translation-item > .fa-globe.is-on {
  color: #0d6efd;
}
.ai-container.chat-dialog-container .chat-header-translation-settings {
  padding: 8px 8px 10px;
}
.ai-container.chat-dialog-container .chat-header-action-menu-divider {
  height: 1px;
  margin: 6px 2px;
  background: #e8edf3;
}
.ai-container.chat-dialog-container .chat-header-icon-btn-menu {
  width: 36px;
  min-width: 36px;
  border-color: #dbe3ee;
}
.ai-container.chat-dialog-container .chat-header-icon-btn-menu svg {
  display: block;
  overflow: visible;
}
.ai-container.chat-dialog-container .chat-header-action-menu-item {
  width: 100%;
  border: none;
  background: transparent;
  color: #1f2937;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 10px;
  text-align: left;
  font-size: 13px;
  line-height: 18px;
  font-weight: 500;
}
.ai-container.chat-dialog-container .chat-header-action-menu-item img,
.ai-container.chat-dialog-container .chat-header-action-menu-item i {
  width: 16px;
  min-width: 16px;
  text-align: center;
}
.ai-container.chat-dialog-container .chat-header-action-menu-item:hover:not(:disabled) {
  background: #f3f6fb;
}
.ai-container.chat-dialog-container .chat-header-action-menu-item:disabled {
  opacity: 0.7;
}
.ai-container.chat-dialog-container .ot-active-call-join-btn {
  height: 28px;
  padding: 0 10px;
  border: 1px solid rgba(16, 185, 129, 0.34);
  border-radius: 999px;
  background: rgba(236, 253, 245, 0.98);
  color: #047857;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  vertical-align: middle;
  box-shadow: 0 8px 18px rgba(16, 185, 129, 0.12);
}
.ai-container.chat-dialog-container .ot-active-call-join-btn i {
  font-size: 12px;
}
.ai-container.chat-dialog-container .ot-active-call-join-btn:hover:not(:disabled) {
  background: #d1fae5;
  border-color: rgba(5, 150, 105, 0.45);
}
.ai-container.chat-dialog-container .ot-active-call-join-btn:disabled {
  cursor: wait;
  opacity: 0.72;
}
.ai-container.chat-dialog-container .wrap-ai-sidebar .ai-header {
  padding: 7px 10px 10px 10px;
}
.ai-container.chat-dialog-container .wrap-ai-sidebar .ai-header a:hover {
  background: none;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-header {
  position: relative;
  z-index: 20;
  overflow: visible;
}
.ai-container.chat-dialog-container .wrap-ai-sidebar .ai-sidebar,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content,
.ai-container.chat-dialog-container .chat-search-results {
  scrollbar-width: auto;
  scrollbar-color: #9aa4b2 #eef1f5;
}
.ai-container.chat-dialog-container .wrap-ai-sidebar .ai-sidebar::-webkit-scrollbar,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content::-webkit-scrollbar,
.ai-container.chat-dialog-container .chat-search-results::-webkit-scrollbar {
  width: 12px;
  height: 12px;
}
.ai-container.chat-dialog-container .wrap-ai-sidebar .ai-sidebar::-webkit-scrollbar-track,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content::-webkit-scrollbar-track,
.ai-container.chat-dialog-container .chat-search-results::-webkit-scrollbar-track {
  background: #eef1f5;
}
.ai-container.chat-dialog-container .wrap-ai-sidebar .ai-sidebar::-webkit-scrollbar-thumb,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content::-webkit-scrollbar-thumb,
.ai-container.chat-dialog-container .chat-search-results::-webkit-scrollbar-thumb {
  background: #9aa4b2;
  border: 2px solid #eef1f5;
  border-radius: 999px;
}
.ai-container.chat-dialog-container .wrap-ai-sidebar .ai-sidebar::-webkit-scrollbar-thumb:hover,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content::-webkit-scrollbar-thumb:hover,
.ai-container.chat-dialog-container .chat-search-results::-webkit-scrollbar-thumb:hover {
  background: #7d8794;
}
.ai-container.chat-dialog-container.embedded-chat-panel .wrap-ai-content .ai-header {
  position: sticky;
  top: 0;
  z-index: 24;
  background: #fff;
}
.ai-container.chat-dialog-container .wrap-ai-sidebar .ai-sidebar .channel-name-unread {
  color: #0a4ef4;
  font-weight: 600;
}
.ai-container.chat-dialog-container .wrap-ai-sidebar .ai-sidebar .channel-meta-unread {
  color: #0f172a !important;
  font-weight: 500;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-history-loader {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #6c757d;
  font-size: 12px;
  padding: 8px 0 12px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-history-gap {
  display: flex;
  justify-content: center;
  padding: 4px 0 12px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-history-gap-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px dashed #b8c0cc;
  border-radius: 999px;
  background: #f8fafc;
  color: #475569;
  font-size: 12px;
  line-height: 1;
  padding: 8px 14px;
  transition: all 0.15s ease;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-history-gap-btn:hover:not(:disabled) {
  background: #eef4ff;
  border-color: #7aa2f7;
  color: #0a4ef4;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-history-gap-btn:disabled {
  cursor: wait;
  opacity: 0.75;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item {
  position: relative;
  padding-left: 30px;
  margin-bottom: 8px;
  min-width: 0;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .wrap-mes-item {
  position: relative;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-actions {
  position: absolute;
  z-index: 3;
  top: calc(100% - 2px);
  right: 8px;
  display: flex;
  width: max-content;
  align-items: center;
  gap: 2px;
  padding: 3px 5px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.14);
  opacity: 0;
  pointer-events: none;
  transition: opacity 120ms ease;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-selection-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  min-height: 30px;
  margin: 4px 0 2px;
  padding: 3px 0;
  border-top: 1px solid rgba(15, 23, 42, 0.08);
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-selection-actions .message-action-btn {
  width: auto;
  min-width: 30px;
  min-height: 28px;
  padding: 0 8px;
  border-radius: 7px;
  background: #f4f7fb;
  color: #3569ad;
  font-size: 11px;
  font-weight: 650;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-time {
  padding: 0 4px;
  color: #8a8e92;
  font-size: 11px;
  white-space: nowrap;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-action-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #8a8e92;
  line-height: 1;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-action-btn.message-action-btn-wide {
  width: auto;
  padding: 0 6px;
  gap: 4px;
  border-radius: 5px;
  white-space: nowrap;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-action-btn.message-action-btn-active {
  background: rgba(13, 110, 253, 0.12);
  color: #0d6efd;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-action-btn:hover {
  background: rgba(13, 110, 253, 0.12);
  color: #0d6efd;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-action-btn.message-action-btn-danger:hover {
  background: rgba(220, 53, 69, 0.12);
  color: #dc3545;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-answer .message-actions {
  right: auto;
  left: 8px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item:hover .message-actions, .ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item:focus-within .message-actions, .ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.message-command-open .message-actions {
  opacity: 1;
  pointer-events: auto;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .wrap-avatar {
  position: absolute;
  left: 0;
  top: 22px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-user {
  padding-bottom: 5px;
  text-transform: capitalize;
  color: #8a8e92;
  font-size: 12px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-text {
  max-width: 100%;
  overflow-x: auto;
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}
@media (min-width: 992px) {
  .ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-text.chat-message-emoji-only {
    font-size: 36px;
    line-height: 1.12;
    overflow-x: visible;
  }
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-text a {
  overflow-wrap: anywhere;
  word-break: break-word;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-text strong,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-text b {
  font-weight: 800;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-text table.ot-getstream-markdown-table {
  width: 100%;
  min-width: 280px;
  margin: 8px 0 4px;
  border-collapse: collapse;
  border-radius: 8px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.92);
  color: #20252b;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-text table.ot-getstream-markdown-table th,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-text table.ot-getstream-markdown-table td {
  padding: 8px 10px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  text-align: left;
  vertical-align: top;
  font-size: 12px;
  line-height: 1.5;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .message-text table.ot-getstream-markdown-table th {
  background: rgba(15, 23, 42, 0.06);
  font-weight: 700;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-translation-meta,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-translation-error {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  margin-top: 2px;
  color: #6f767e;
  font-size: 11px;
  line-height: 14px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-translation-meta button,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-translation-error button {
  padding: 0;
  border: 0;
  background: transparent;
  color: #0d6efd;
  font: inherit;
  font-weight: 600;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-translation-meta button.chat-translation-status,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-translation-error button.chat-translation-status {
  color: inherit;
  font-weight: 400;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-translation-source {
  max-width: 190px;
  padding: 2px 22px 2px 6px;
  border: 1px solid rgba(15, 23, 42, 0.14);
  border-radius: 6px;
  background-color: #fff;
  color: #52575c;
  font-size: 11px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-translation-error {
  color: #b42318;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .q-content {
  max-width: 100%;
  min-width: 0;
  border-radius: 8px;
  background: rgba(233, 233, 233, 0.5);
  padding: 9px 16px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-reply-preview {
  margin-bottom: 8px;
  padding: 7px 10px;
  border-left: 3px solid rgba(13, 110, 253, 0.45);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.72);
  color: #38404a;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-reply-preview-user {
  margin-bottom: 2px;
  font-size: 11px;
  line-height: 16px;
  font-weight: 700;
  color: #1b5cc9;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-reply-preview-text {
  font-size: 12px;
  line-height: 17px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow-wrap: anywhere;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-image-attachment-img {
  max-width: min(240px, 100%);
  max-height: 240px;
  cursor: zoom-in;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-file-attachment-link {
  max-width: 100%;
  min-width: 0;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-file-attachment-link i,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-file-attachment-link small {
  flex: 0 0 auto;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item .chat-file-attachment-title {
  min-width: 0;
  overflow: hidden;
  overflow-wrap: anywhere;
  text-overflow: ellipsis;
  word-break: break-word;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-answer {
  display: flex;
  align-items: flex-start;
  padding-left: 0;
  min-width: 0;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-answer > .avatar-wrap {
  width: 30px;
  min-width: 30px;
  flex: 0 0 30px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 22px;
  margin-right: 10px;
  line-height: 0;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-answer > .wrap-mes-item {
  width: fit-content;
  min-width: 0;
  max-width: min(85%, 100% - 40px);
  flex: 0 1 auto;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .q-content {
  background: #0d6efd;
  color: #fff;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .q-content a {
  color: #fff !important;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .chat-translation-meta {
  color: rgba(255, 255, 255, 0.82);
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .chat-translation-meta button {
  color: #fff;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .chat-reply-preview {
  border-left-color: rgba(255, 255, 255, 0.72);
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .chat-reply-preview-user {
  color: #fff;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .message-text table.ot-getstream-markdown-table {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .message-text table.ot-getstream-markdown-table th,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .message-text table.ot-getstream-markdown-table td {
  border-color: rgba(255, 255, 255, 0.24);
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .message-text table.ot-getstream-markdown-table th {
  background: rgba(255, 255, 255, 0.16);
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .message-text strong,
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-question .message-text b {
  font-weight: 800;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .message-selection-actions-floating {
  position: fixed;
  z-index: 60;
  display: flex;
  align-items: center;
  gap: 4px;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  pointer-events: auto;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .message-selection-actions-floating .message-action-btn {
  appearance: none;
  min-height: 28px;
  padding: 0 9px;
  border: 0;
  border-radius: 7px;
  background: #f4f7fb;
  color: #3569ad;
  font-size: 11px;
  font-weight: 650;
  box-shadow: 0 3px 9px rgba(15, 23, 42, 0.12);
  outline: none;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .message-selection-actions-floating .message-action-btn:hover {
  background: #e9f1ff;
  color: #0d6efd;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .message-selection-actions-floating .message-action-btn:focus-visible {
  outline: 2px solid rgba(13, 110, 253, 0.42);
  outline-offset: 2px;
}
.ai-container.chat-dialog-container .chat-search-target-highlight .q-content {
  box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.22), 0 10px 24px rgba(13, 110, 253, 0.14);
  transition: box-shadow 0.18s ease;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .ot-call-log-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 8px 4px 10px;
  color: #666b72;
  font-size: 13px;
  line-height: 20px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .ot-call-log-item .ot-call-log-icon {
  flex: 0 0 auto;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .ot-call-log-item .ot-call-log-icon img {
  width: 18px;
  height: 18px;
  display: block;
  opacity: 0.78;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .ot-call-log-item .ot-call-log-time {
  flex: 0 0 auto;
  min-width: 48px;
  color: #636972;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .ot-call-log-item .ot-call-log-label {
  color: #61656c;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .ot-call-log-item .ot-call-log-label strong {
  color: #4b5057;
  font-weight: 700;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .q-content.ot-ai-pending-card {
  min-width: 220px;
  max-width: 420px;
  background: #f5f7fb;
  border: 1px solid #e6eaf2;
  color: #2b313a;
  padding: 10px 14px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-status {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  line-height: 20px;
  font-weight: 500;
  color: #2f3640;
  flex: 1 1 auto;
  min-width: 0;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-meta {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 0 auto;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-timer {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  background: rgba(77, 90, 112, 0.1);
  color: #46505f;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.01em;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-dots {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-dots span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #566070;
  opacity: 0.35;
  animation: otAiPendingDotPulse 1.2s ease-in-out infinite;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-dots span:nth-child(2) {
  animation-delay: 0.16s;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-dots span:nth-child(3) {
  animation-delay: 0.32s;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-toggle {
  width: 26px;
  height: 26px;
  border: none;
  background: rgba(77, 90, 112, 0.08);
  border-radius: 50%;
  color: #5a6270;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-toggle svg {
  width: 16px;
  height: 16px;
  display: block;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-toggle:hover {
  background: rgba(77, 90, 112, 0.14);
  color: #303844;
  transform: translateY(-1px);
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-detail {
  margin-top: 8px;
  font-size: 12px;
  line-height: 18px;
  color: #6b7280;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .ot-ai-completed-summary {
  padding: 2px 0 8px 30px;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-ai-cost-summary {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px 8px;
  margin-top: 8px;
  padding: 5px 8px;
  border: 1px solid #e4e8ef;
  border-radius: 7px;
  background: #fafbfc;
  color: #707784;
  font-size: 10px;
  line-height: 14px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-ai-cost-summary .chat-ai-cost-model {
  color: #3e4653;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-ai-cost-summary .chat-ai-cost-reasoning {
  color: #697386;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-ai-cost-summary .chat-ai-cost-value {
  color: #3b5ccc;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-ai-cost-summary .chat-ai-cost-period {
  color: #89919e;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .chat-ai-cost-summary span + span::before {
  content: "·";
  margin-right: 8px;
  color: #b0b6c0;
}
.ai-container.chat-dialog-container .wrap-ai-content .ai-content .ot-ai-completed-summary-line {
  width: 100%;
  padding: 0 0 10px;
  border-bottom: 1px solid #ebeef2;
  color: #707784;
  display: block;
  font-size: 13px;
  font-weight: 500;
  text-align: left;
}
.ai-container.chat-dialog-container .answer-box {
  padding: 10px 16px 14px;
}
.ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 12px;
  max-height: 180px;
  overflow-x: hidden;
  overflow-y: auto;
  padding-right: 2px;
  overscroll-behavior: contain;
}
.ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-item {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 12px;
  min-width: 0;
  max-width: 260px;
  padding: 10px 12px;
  border: 1px solid #ecedee;
  border-radius: 14px;
  background: #ffffff;
}
.ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-main {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  flex: 1 1 auto;
}
.ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-thumb {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  overflow: hidden;
  background: #f5f5f5;
  flex: 0 0 42px;
}
.ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-meta {
  min-width: 0;
}
.ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-type {
  font-size: 12px;
  line-height: 16px;
  color: #8a8e92;
  margin-bottom: 2px;
}
.ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-name {
  font-size: 13px;
  line-height: 18px;
  font-weight: 500;
  color: #141516;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-remove-btn {
  border: none;
  background: none;
  color: #6f767e;
  font-size: 12px;
  line-height: 16px;
  padding: 0;
  white-space: nowrap;
}
.ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-remove-btn:hover {
  color: #141516;
  text-decoration: underline;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question {
  display: block;
  min-width: 0;
  position: relative;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper {
  position: relative;
  border: 1px solid #d9d9d9;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-mode-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 14px;
  border-bottom: 1px solid #e8edf5;
  background: linear-gradient(90deg, rgba(13, 110, 253, 0.09), rgba(243, 247, 255, 0.96));
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-mode-banner-edit {
  background: linear-gradient(90deg, rgba(255, 193, 7, 0.14), rgba(255, 250, 238, 0.96));
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-mode-main {
  min-width: 0;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-mode-title {
  color: #202938;
  font-size: 12px;
  line-height: 16px;
  font-weight: 700;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-mode-preview {
  margin-top: 2px;
  color: #667085;
  font-size: 12px;
  line-height: 17px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-mode-close {
  width: 26px;
  height: 26px;
  border: none;
  border-radius: 50%;
  background: rgba(17, 24, 39, 0.08);
  color: #384152;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  flex: 0 0 26px;
  font-size: 18px;
  line-height: 1;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-mode-close:hover {
  background: rgba(17, 24, 39, 0.14);
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper .chat-rich-editor .NgxEditor {
  min-height: 46px;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper .chat-rich-editor .NgxEditor__Content {
  min-height: 46px;
  padding: 14px 14px 10px;
  line-height: normal;
  white-space: normal;
  overflow-x: hidden;
  overflow-y: auto;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper .chat-composer-actions {
  margin-top: 0;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper .chat-emoji-picker-container {
  position: relative;
  display: inline-flex;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper.chat-composer-rich-wrapper-compact .chat-rich-editor .NgxEditor__Content p,
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper.chat-composer-rich-wrapper-compact .chat-rich-editor .NgxEditor__Content div {
  margin-bottom: 0;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-emoji-picker-panel {
  position: absolute;
  right: 38px;
  bottom: calc(100% + 8px);
  z-index: 14;
  border-radius: 16px;
  box-shadow: 0 20px 48px rgba(15, 23, 42, 0.18);
  overflow: hidden;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-emoji-picker-panel .emoji-mart {
  border: none;
  border-radius: 16px;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-emoji-picker {
  max-width: min(352px, 100vw - 32px);
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-mention-menu {
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: calc(100% + 8px);
  z-index: 12;
  max-height: 260px;
  overflow-y: auto;
  padding: 6px;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.16);
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-mention-option {
  width: 100%;
  border: none;
  border-radius: 10px;
  background: transparent;
  color: #1f2937;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  text-align: left;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-mention-option:hover, .ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-mention-option.chat-mention-option-active {
  background: #f3f6fb;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-mention-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  line-height: 18px;
  font-weight: 600;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-agent-composer-control-group {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-agent-composer-label {
  color: #8a929e;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  white-space: nowrap;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-agent-composer-select {
  max-width: 190px;
  min-height: 32px;
  border: 1px solid #e0e4eb;
  border-radius: 999px;
  padding: 0 28px 0 11px;
  background-color: #f8f9fb;
  color: #3a4250;
  font-size: 12px;
  font-weight: 600;
  line-height: 30px;
  outline: none;
  cursor: pointer;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-agent-composer-select:hover:not(:disabled) {
  border-color: #b8c0d0;
  background-color: #fff;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-agent-composer-select:focus {
  border-color: #6574d8;
  box-shadow: 0 0 0 3px rgba(101, 116, 216, 0.14);
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-agent-composer-select:disabled {
  cursor: default;
  opacity: 0.58;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-agent-composer-select-reasoning {
  max-width: 94px;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question:focus-within .chat-composer-rich-wrapper {
  border-bottom: 2px solid #4b57db;
  box-shadow: 0 8px 24px rgba(40, 44, 52, 0.06);
  margin-bottom: -1px;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-rich-editor {
  display: block;
  width: 100%;
  line-height: 0;
  margin: 0;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-rich-editor .NgxEditor {
  border: none;
  min-height: 86px;
  background: transparent;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-rich-editor .NgxEditor__Content {
  min-height: 86px;
  max-height: 280px;
  overflow-y: auto;
  padding: 18px 18px 8px;
  font-size: 12px;
  line-height: 1.7;
  color: #1f2328;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-rich-editor .NgxEditor__Content p {
  margin: 0 0 0.75rem;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-rich-editor .NgxEditor__Content p:last-child {
  margin-bottom: 0;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .txt-control {
  height: auto;
  min-height: 39px;
  border: none;
  padding: 7px 12px 7px 0;
  border-radius: 0;
  font-size: 12px;
  line-height: normal;
  color: #141516;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .txt-control:focus {
  border: none;
  outline: none;
  box-shadow: none;
}
.ai-container.chat-dialog-container .answer-box .wrap-input-question .txt-control::placeholder {
  color: #6f767e;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-action-btn {
  width: 34px;
  height: 34px;
  border: none;
  background: none;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #494d55;
  padding: 0;
  flex: 0 0 34px;
  transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-action-btn svg {
  width: 19px;
  height: 19px;
  display: block;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-action-btn:hover {
  background: rgba(72, 78, 89, 0.08);
  color: #1f2328;
  transform: translateY(-1px);
}
.ai-container.chat-dialog-container .answer-box .chat-composer-action-btn-attach svg {
  width: 17px;
  height: 17px;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-actions {
  position: static;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  width: 100%;
  min-width: 0;
  padding: 8px 58px 12px 12px;
  border-top: 1px solid #eef0f2;
  flex-wrap: nowrap;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-character-count {
  color: #7a818c;
  font-size: 11px;
  line-height: 16px;
  white-space: nowrap;
  margin-right: 4px;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-character-count-warning {
  color: #c2410c;
  font-weight: 700;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-actions-divider {
  width: 1px;
  height: 24px;
  background: #d7dae0;
  margin-left: auto;
  margin-right: 2px;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-send-btn {
  width: 34px;
  height: 34px;
  border: 1px solid rgba(72, 78, 89, 0.12);
  background: #fff;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: background-color 0.18s ease, transform 0.18s ease, opacity 0.18s ease;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-send-btn img {
  width: 18px;
  height: 18px;
  display: block;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-send-btn:disabled {
  opacity: 0.45;
  cursor: default;
}
.ai-container.chat-dialog-container .answer-box .chat-composer-send-btn:not(:disabled):hover {
  background: rgba(72, 78, 89, 0.08);
  transform: translateY(-1px);
}

@keyframes otAiPendingDotPulse {
  0%, 80%, 100% {
    transform: scale(0.82);
    opacity: 0.28;
  }
  40% {
    transform: scale(1);
    opacity: 0.95;
  }
}
.main.chat-shell-page .bc {
  gap: 0;
}

.main.chat-shell-page .chat-shell-home-icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
  margin-right: 10px;
  border: 1px solid var(--border-strong);
  border-radius: 8px;
  color: var(--text);
  background: var(--surface);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-size: 13px;
  line-height: 1;
  transition: background 100ms var(--ease), border-color 100ms var(--ease), color 100ms var(--ease);
}
.main.chat-shell-page .chat-shell-home-icon:hover {
  color: var(--brand);
  background: var(--raised);
  border-color: #bbb;
}

body:has(.main.chat-shell-page) .ot-create-issue,
body:has(.main.chat-shell-page) .er-create-issue-hover {
  bottom: 96px;
}

.ot-create-issue,
.er-create-issue-hover {
  transition: opacity 180ms ease, transform 180ms ease, visibility 0s linear 0s;
  will-change: opacity, transform;
}

body:has(.wrap-main-page.chat-panel-active) .ot-create-issue,
body:has(.wrap-main-page.chat-panel-active) .er-create-issue-hover,
body:has(.embedded-chat-panel) .ot-create-issue,
body:has(.embedded-chat-panel) .er-create-issue-hover {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px) scale(0.86);
  transition-delay: 0s, 0s, 180ms;
}

@media (prefers-reduced-motion: reduce) {
  .ot-create-issue,
  .er-create-issue-hover {
    transition: none;
  }
}
@media (max-width: 991.98px) {
  body:has(.main.chat-shell-page) {
    overflow: hidden;
  }
  .main.chat-shell-page {
    display: flex;
    flex-direction: column;
    height: calc(100dvh - 66px);
    max-height: calc(100dvh - 66px);
    overflow: hidden;
  }
  .main.chat-shell-page .topbar {
    flex: 0 0 auto;
  }
  .main.chat-shell-page .bc {
    gap: 0;
  }
  .main.chat-shell-page .chat-shell-home-icon {
    width: 32px;
    height: 32px;
    min-width: 32px;
    margin-right: 10px;
    border: 1px solid var(--border-strong);
    border-radius: 8px;
    color: var(--text);
    background: var(--surface);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 13px;
    line-height: 1;
    transition: background 100ms var(--ease), border-color 100ms var(--ease), color 100ms var(--ease);
  }
  .main.chat-shell-page .chat-shell-home-icon:hover {
    color: var(--brand);
    background: var(--raised);
    border-color: #bbb;
  }
  .main.chat-shell-page .lease-tenant-detail-content {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
  }
  .main.chat-shell-page .lease-tenant-detail-content,
  .main.chat-shell-page app-getstream-chat-page,
  .main.chat-shell-page app-getstream-chat-page > .ai-container.chat-dialog-container {
    min-height: 0;
    overflow: hidden;
  }
  .main.chat-shell-page app-getstream-chat-page {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
  }
  .main.chat-shell-page app-getstream-chat-page > .ai-container.chat-dialog-container {
    flex: 1 1 auto;
  }
  .main.chat-shell-page app-getstream-chat-page > .ai-container.chat-dialog-container.compact-chat-modal.standalone-chat-page {
    height: 100%;
    max-height: 100%;
  }
  .ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-rich-editor,
  .ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-rich-editor .NgxEditor,
  .ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper .chat-rich-editor {
    font-size: 16px;
  }
  .ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-rich-editor .NgxEditor__Content,
  .ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper .chat-rich-editor .NgxEditor__Content {
    font-size: 16px;
    line-height: 20px;
  }
  .ai-container.chat-dialog-container .answer-box {
    padding: 6px 10px max(6px, env(safe-area-inset-bottom, 0px));
  }
  .ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-rich-editor .NgxEditor__Content,
  .ai-container.chat-dialog-container .answer-box .wrap-input-question .chat-composer-rich-wrapper .chat-rich-editor .NgxEditor__Content {
    min-height: 40px;
    max-height: 118px;
    padding: 10px 12px 6px;
  }
  .ai-container.chat-dialog-container .answer-box .chat-composer-actions {
    position: static;
    gap: 2px;
    width: 100%;
    padding: 6px 54px 8px 8px;
  }
  .ai-container.chat-dialog-container .answer-box .chat-composer-action-btn {
    width: 26px;
    height: 26px;
    flex-basis: 26px;
  }
  .ai-container.chat-dialog-container .answer-box .chat-composer-action-btn svg {
    width: 15px;
    height: 15px;
  }
  .ai-container.chat-dialog-container .answer-box .chat-composer-action-btn-attach svg {
    width: 14px;
    height: 14px;
  }
  .ai-container.chat-dialog-container .answer-box .chat-composer-actions-divider {
    height: 20px;
    margin-left: auto;
    margin-right: 0;
  }
  .ai-container.chat-dialog-container .answer-box .chat-composer-send-btn {
    width: 30px;
    height: 30px;
  }
  .ai-container.chat-dialog-container .answer-box .chat-composer-send-btn img {
    width: 18px;
    height: 18px;
  }
  body .modal.mobile-chat-fullscreen {
    --bs-modal-width: 100vw;
    --mo-modal-width: 100vw;
  }
  body .modal.mobile-chat-fullscreen .modal-dialog {
    width: 100vw;
    max-width: 100vw;
    height: 100dvh;
    max-height: 100dvh;
    right: -100vw;
    margin: 0 0 0 auto;
    overflow: hidden;
  }
  body .modal.mobile-chat-fullscreen.show .modal-dialog {
    right: 0 !important;
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .answer-box {
    position: static;
  }
  body .modal.mobile-chat-fullscreen .modal-content {
    width: 100vw;
    height: 100dvh;
    max-height: 100dvh;
    border-radius: 0;
    border: none;
    overflow: hidden;
  }
  body .modal.mobile-chat-fullscreen .card-container.ai-container.chat-dialog-container,
  body .modal.mobile-chat-fullscreen .card-container.ai-container.chat-dialog-container > .row,
  body .modal.mobile-chat-fullscreen .ai-box-left,
  body .modal.mobile-chat-fullscreen .ai-box-right,
  body .modal.mobile-chat-fullscreen .wrap-ai-sidebar,
  body .modal.mobile-chat-fullscreen .wrap-ai-content {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-header,
  body .modal.mobile-chat-fullscreen .wrap-ai-content .answer-box {
    flex: 0 0 auto;
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-content {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-content .mes-item {
    padding-left: 20px;
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-content .mes-item.mes-answer {
    gap: 8px;
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-content .mes-item .avatar-wrap {
    flex: 0 0 auto;
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-content .mes-item .wrap-mes-item {
    max-width: calc(100vw - 64px);
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-content .mes-item.mes-question .wrap-mes-item {
    max-width: calc(100vw - 38px);
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-content .mes-item .q-content {
    padding: 8px 11px;
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-content .mes-item .message-text {
    font-size: 12px;
    line-height: 1.55;
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-content .mes-item .message-text.chat-message-emoji-only {
    font-size: 12px;
    line-height: 1.55;
  }
  body .modal.mobile-chat-fullscreen .wrap-ai-content .ai-content .mes-item .message-text table.ot-getstream-markdown-table {
    min-width: 240px;
  }
  body .modal.mobile-chat-fullscreen .answer-box {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 6px 10px max(6px, env(safe-area-inset-bottom, 0px));
  }
  body .modal.mobile-chat-fullscreen .answer-box .chat-composer-rich-wrapper {
    width: 100%;
    box-sizing: border-box;
  }
  body .modal.mobile-chat-fullscreen .ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-list {
    flex-direction: column;
    flex-wrap: nowrap;
    flex: 0 0 auto;
    gap: 8px;
    max-height: min(30dvh, 220px);
    margin-bottom: 8px;
  }
  body .modal.mobile-chat-fullscreen .ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-item {
    width: 100%;
    max-width: 100%;
    padding: 8px 10px;
  }
  body .modal.mobile-chat-fullscreen .ai-container.chat-dialog-container .answer-box .wrap-ab .chat-attachment-preview-thumb {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
  }
  body .modal.mobile-chat-fullscreen .answer-box .wrap-input-question .chat-rich-editor .NgxEditor__Content,
  body .modal.mobile-chat-fullscreen .answer-box .wrap-input-question .chat-composer-rich-wrapper .chat-rich-editor .NgxEditor__Content {
    min-height: 40px;
    max-height: 118px;
    padding: 10px 126px 10px 12px;
  }
  body .modal.mobile-chat-fullscreen .answer-box .chat-composer-actions {
    right: 6px;
    bottom: 4px;
    gap: 2px;
  }
  body .modal.mobile-chat-fullscreen .answer-box .chat-composer-action-btn {
    width: 26px;
    height: 26px;
    flex-basis: 26px;
  }
  body .modal.mobile-chat-fullscreen .answer-box .chat-composer-send-btn {
    width: 30px;
    height: 30px;
  }
  body .modal.mobile-chat-fullscreen .answer-box .chat-composer-actions-divider {
    height: 20px;
    margin: 0;
  }
  body .modal.mobile-call-fullscreen {
    --bs-modal-width: 100vw;
    --mo-modal-width: 100vw;
  }
  body .modal.mobile-call-fullscreen .modal-dialog {
    width: 100vw;
    max-width: 100vw;
    height: 100vh;
    right: -100vw;
    margin: 0 0 0 auto;
  }
  body .modal.mobile-call-fullscreen.show .modal-dialog {
    right: 0 !important;
  }
  body .modal.mobile-call-fullscreen .modal-content {
    width: 100vw;
    height: 100vh;
    border-radius: 0;
    border: none;
    overflow: hidden;
    background: #0f172a;
  }
}
body .modal.desktop-call-workspace-modal {
  --bs-modal-width: min(1100px, calc(100vw - 24px));
  --mo-modal-width: min(1000px, calc(100vw - 24px));
}
body .modal.desktop-call-workspace-modal.fade .modal-dialog {
  right: calc(-1 * min(1100px, 100vw));
}
body .modal.desktop-call-workspace-modal.show .modal-dialog {
  right: 0 !important;
}
body .modal.desktop-call-workspace-modal .modal-dialog {
  width: 100%;
  height: 100vh;
  max-height: 100vh;
  margin: 0 0 0 auto;
}
body .modal.desktop-call-workspace-modal .modal-content {
  height: 100vh;
  max-height: 100vh;
  border-left: 1px solid #edf0f3;
  border-radius: 0;
  overflow: hidden;
  background: #f6f8fb;
  box-shadow: -18px 0 48px rgba(15, 23, 42, 0.12);
}

.ot-call-workspace-dialog {
  height: 100vh;
  max-height: 100vh;
  background: #f6f8fb;
}
.ot-call-workspace-dialog .ot-call-workspace-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  height: 100vh;
  min-height: 0;
}
.ot-call-workspace-dialog .ot-call-stage-panel {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  padding: 14px 14px 16px;
  background: #f6f8fb;
}
.ot-call-workspace-dialog .ot-call-stage-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.ot-call-workspace-dialog .ot-call-stage-title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  color: #1f2937;
}
.ot-call-workspace-dialog .ot-call-stage-subtitle {
  margin-top: 4px;
  font-size: 12px;
  color: #6b7280;
}
.ot-call-workspace-dialog .ot-call-stage-surface {
  position: relative;
  display: flex;
  flex: 1 1 auto;
  min-height: 0;
  border: 1px solid #e7ebf0;
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #f3f5f8 100%);
  overflow: hidden;
  align-items: center;
  justify-content: center;
  padding: 18px;
}
.ot-call-workspace-dialog .ot-call-stage-surface.is-screen-sharing {
  padding: 0;
  background: #0f172a;
}
.ot-call-workspace-dialog .ot-call-stage-screen-share {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #101828;
}
.ot-call-workspace-dialog .ot-call-stage-badge {
  position: absolute;
  top: 16px;
  left: 16px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.78);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
}
.ot-call-workspace-dialog .ot-call-local-preview {
  position: absolute;
  right: 18px;
  bottom: 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.16);
  backdrop-filter: blur(10px);
}
.ot-call-workspace-dialog .ot-call-local-preview .ot-call-chat-avatar-shell {
  margin: 0;
  flex: 0 0 auto;
}
.ot-call-workspace-dialog .ot-call-local-name {
  font-size: 13px;
  font-weight: 600;
  color: #1f2937;
}
.ot-call-workspace-dialog .ot-call-stage-empty {
  text-align: center;
  max-width: 320px;
}
.ot-call-workspace-dialog .ot-call-stage-avatar,
.ot-call-workspace-dialog .ot-call-participant-avatar {
  width: 96px;
  height: 96px;
  border-radius: 50%;
  background: #d8dbe1;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  font-size: 32px;
  font-weight: 700;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35);
}
.ot-call-workspace-dialog .ot-call-stage-avatar img,
.ot-call-workspace-dialog .ot-call-participant-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ot-call-workspace-dialog .ot-call-stage-avatar-shell,
.ot-call-workspace-dialog .ot-call-chat-avatar-shell {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(226, 232, 240, 0.92);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}
.ot-call-workspace-dialog .ot-call-stage-avatar-shell {
  padding: 10px;
}
.ot-call-workspace-dialog .ot-call-stage-avatar-shell .wrap-avatar.l-avatar {
  width: 68px;
  height: 68px;
  line-height: 68px;
  font-size: 24px;
}
.ot-call-workspace-dialog .ot-call-chat-avatar-shell {
  width: 35px;
  height: 35px;
  margin: 0 auto 12px;
}
.ot-call-workspace-dialog .ot-call-chat-avatar-shell .wrap-avatar.m-avatar {
  width: 32px;
  height: 32px;
  line-height: 32px;
  font-size: 13px;
}
.ot-call-workspace-dialog .ot-call-stage-empty-title {
  margin-top: 16px;
  font-size: 20px;
  font-weight: 700;
  color: #111827;
}
.ot-call-workspace-dialog .ot-call-stage-empty-subtitle {
  margin-top: 8px;
  font-size: 14px;
  color: #6b7280;
}
.ot-call-workspace-dialog .ot-call-stage-grid {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 14px;
  align-content: center;
}
.ot-call-workspace-dialog .ot-call-participant-card {
  min-width: 0;
  position: relative;
  overflow: hidden;
  padding: 20px 14px 16px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(226, 232, 240, 0.95);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
  text-align: center;
}
.ot-call-workspace-dialog .ot-call-participant-card.is-local {
  border-color: rgba(37, 99, 235, 0.18);
  box-shadow: 0 16px 34px rgba(37, 99, 235, 0.12);
}
.ot-call-workspace-dialog .ot-call-participant-card.is-speaking {
  border-color: rgba(16, 185, 129, 0.42);
  box-shadow: 0 18px 38px rgba(16, 185, 129, 0.16), 0 14px 34px rgba(15, 23, 42, 0.08);
}
.ot-call-workspace-dialog .ot-call-speaking-indicator {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #111827;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(209, 213, 219, 0.86);
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.1);
  z-index: 2;
}
.ot-call-workspace-dialog .ot-call-speaking-indicator i {
  position: relative;
  z-index: 2;
  font-size: 13px;
}
.ot-call-workspace-dialog .ot-call-speaking-indicator.is-muted {
  color: #9ca3af;
  background: rgba(249, 250, 251, 0.98);
  border-color: rgba(209, 213, 219, 0.86);
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06);
}
.ot-call-workspace-dialog .ot-call-speaking-indicator.is-muted::after {
  content: "";
  position: absolute;
  width: 18px;
  height: 2px;
  border-radius: 999px;
  background: #9ca3af;
  transform: rotate(-45deg);
  z-index: 3;
}
.ot-call-workspace-dialog .ot-call-speaking-indicator.is-speaking {
  color: #047857;
  background: rgba(236, 253, 245, 0.98);
  border-color: rgba(16, 185, 129, 0.34);
  box-shadow: 0 8px 18px rgba(16, 185, 129, 0.18);
}
.ot-call-workspace-dialog .ot-call-speaking-pulse {
  position: absolute;
  inset: 3px;
  border-radius: inherit;
  background: rgba(16, 185, 129, 0.16);
  animation: ot-call-speaking-pulse 1.4s ease-out infinite;
}
@keyframes ot-call-speaking-pulse {
  0% {
    opacity: 0.75;
    transform: scale(0.82);
  }
  70% {
    opacity: 0;
    transform: scale(1.55);
  }
  100% {
    opacity: 0;
    transform: scale(1.55);
  }
}
.ot-call-workspace-dialog .ot-call-participant-card .ot-call-participant-avatar {
  width: 78px;
  height: 78px;
  margin: 0 auto 14px;
  font-size: 24px;
}
.ot-call-workspace-dialog .ot-call-participant-name {
  font-size: 15px;
  font-weight: 700;
  color: #111827;
  line-height: 1.35;
}
.ot-call-workspace-dialog .ot-call-participant-name span {
  color: #6b7280;
  font-weight: 500;
  margin-left: 4px;
}
.ot-call-workspace-dialog .ot-call-participant-meta {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}
.ot-call-workspace-dialog .ot-call-participant-meta span {
  padding: 4px 10px;
  border-radius: 999px;
  background: #f3f4f6;
  color: #4b5563;
  font-size: 12px;
  font-weight: 500;
}
.ot-call-workspace-dialog .ot-call-chat-panel {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  border-left: 1px solid #e5e7eb;
  background: #fff;
}
.ot-call-workspace-dialog .ot-call-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0;
  padding: 6px 8px;
  border-bottom: 1px solid #edf0f3;
  background: #fff;
}
.ot-call-workspace-dialog .ot-call-toolbar-btn {
  min-width: 58px;
  padding: 5px 8px;
  border: none;
  border-radius: 10px;
  background: transparent;
  color: #4f5965;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 3px;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
.ot-call-workspace-dialog .ot-call-toolbar-btn:hover:not(:disabled) {
  background: #f6f8fb;
  color: #1f2937;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.07);
}
.ot-call-workspace-dialog .ot-call-toolbar-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.16);
}
.ot-call-workspace-dialog .ot-call-toolbar-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  box-shadow: none;
}
.ot-call-workspace-dialog .ot-call-toolbar-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 18px;
  font-size: 17px;
  line-height: 1;
}
.ot-call-workspace-dialog .ot-call-toolbar-btn-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
}
.ot-call-workspace-dialog .ot-call-toolbar-btn-caret {
  font-size: 9px;
}
.ot-call-workspace-dialog .ot-call-stage-empty-actions {
  margin-top: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.ot-call-workspace-dialog .ot-call-stage-empty-actions .ot-call-toolbar-btn {
  min-width: 86px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid #e6ebf2;
}
.ot-call-workspace-dialog .ot-call-toolbar-btn-success {
  color: #1f7a45;
}
.ot-call-workspace-dialog .ot-call-toolbar-btn-success:hover:not(:disabled) {
  background: #eef8f2;
  color: #146437;
}
.ot-call-workspace-dialog .ot-call-toolbar-btn-danger {
  color: #b83939;
}
.ot-call-workspace-dialog .ot-call-toolbar-btn-danger:hover:not(:disabled) {
  background: #fff4f4;
  color: #982b2b;
}
.ot-call-workspace-dialog .ot-call-chat-card {
  display: flex;
  flex-direction: column;
  min-height: 0;
  flex: 1 1 auto;
  background: #fff;
}
.ot-call-workspace-dialog .ot-call-chat-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 18px;
  border-bottom: 1px solid #edf0f3;
}
.ot-call-workspace-dialog .ot-call-chat-card-title {
  font-size: 16px;
  font-weight: 700;
  color: #111827;
}
.ot-call-workspace-dialog .ot-call-chat-card-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  background: #fff;
}
.ot-call-workspace-dialog .ot-call-chat-unavailable {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  min-height: 240px;
  padding: 24px;
  color: #6b7280;
  font-size: 14px;
}

@media (max-width: 991.98px) {
  body .modal.desktop-call-workspace-modal {
    --bs-modal-width: 100vw;
    --mo-modal-width: 100vw;
  }
  body .modal.desktop-call-workspace-modal .modal-dialog {
    width: 100vw;
    max-width: 100vw;
    right: -100vw;
  }
  body .modal.desktop-call-workspace-modal .modal-content {
    border-radius: 0;
    border: none;
  }
  .ot-call-workspace-dialog .ot-call-workspace-main {
    grid-template-columns: 1fr;
  }
  .ot-call-workspace-dialog .ot-call-chat-panel {
    border-left: none;
    border-top: 1px solid #e5e7eb;
  }
  .ot-mobile-call-dialog {
    display: flex;
    flex-direction: column;
    height: 100vh;
    min-height: 100vh;
    background: linear-gradient(180deg, #0f172a 0%, #111827 100%);
    color: #f8fafc;
    position: relative;
    overflow: hidden;
  }
  .ot-mobile-call-dialog::before, .ot-mobile-call-dialog::after {
    content: "";
    position: absolute;
    border-radius: 999px;
    pointer-events: none;
    filter: blur(12px);
    opacity: 0.85;
  }
  .ot-mobile-call-dialog::before {
    top: -90px;
    left: -70px;
    width: 220px;
    height: 220px;
    background: radial-gradient(circle, rgba(96, 165, 250, 0.28) 0%, rgba(96, 165, 250, 0) 72%);
  }
  .ot-mobile-call-dialog::after {
    right: -70px;
    bottom: 120px;
    width: 220px;
    height: 220px;
    background: radial-gradient(circle, rgba(139, 92, 246, 0.22) 0%, rgba(139, 92, 246, 0) 72%);
  }
  .ot-mobile-call-header {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: calc(env(safe-area-inset-top, 0px) + 16px) 18px 14px;
  }
  .ot-mobile-call-header .btn-close {
    filter: invert(1);
    opacity: 0.92;
    margin-top: 2px;
  }
  .ot-mobile-call-header-copy {
    min-width: 0;
  }
  .ot-mobile-call-status-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 10px;
  }
  .ot-mobile-call-status-pill,
  .ot-mobile-call-status-count {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }
  .ot-mobile-call-status-pill {
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #f8fafc;
  }
  .ot-mobile-call-status-count {
    background: rgba(15, 23, 42, 0.42);
    color: rgba(226, 232, 240, 0.86);
  }
  .ot-mobile-call-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    color: #f8fafc;
  }
  .ot-mobile-call-subtitle {
    margin-top: 4px;
    font-size: 13px;
    line-height: 1.45;
    color: rgba(226, 232, 240, 0.82);
  }
  .ot-mobile-call-stage {
    position: relative;
    z-index: 1;
    flex: 1 1 auto;
    min-height: 0;
    margin: 0 14px;
    border-radius: 28px;
    overflow: hidden;
    background: radial-gradient(circle at top, rgba(59, 130, 246, 0.18), transparent 42%), rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 24px 80px rgba(2, 6, 23, 0.38);
  }
  .ot-mobile-call-stage::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0) 58%);
    pointer-events: none;
  }
  .ot-mobile-call-stage-content {
    width: 100%;
    padding: 28px 20px 24px;
    text-align: center;
  }
  .ot-mobile-call-stage-content-empty {
    max-width: 320px;
    animation: ot-mobile-call-pulse 2.8s ease-in-out infinite;
  }
  .ot-mobile-call-stage-avatar {
    display: flex;
    justify-content: center;
  }
  .ot-mobile-call-stage-avatar .wrap-avatar.l-avatar {
    width: 96px;
    height: 96px;
    line-height: 96px;
    font-size: 30px;
    box-shadow: 0 18px 44px rgba(15, 23, 42, 0.34);
  }
  .ot-mobile-call-stage-name {
    margin-top: 18px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
    color: #ffffff;
  }
  .ot-mobile-call-stage-name span {
    margin-left: 6px;
    font-size: 14px;
    font-weight: 500;
    color: rgba(226, 232, 240, 0.78);
  }
  .ot-mobile-call-stage-meta {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
  }
  .ot-mobile-call-stage-chip {
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    color: #e2e8f0;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    backdrop-filter: blur(10px);
  }
  .ot-mobile-call-stage-empty-copy {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.6;
    color: rgba(226, 232, 240, 0.8);
  }
  .ot-mobile-call-participant-strip {
    margin-top: 22px;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(78px, 88px);
    gap: 10px;
    overflow-x: auto;
    width: max-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 4px;
    padding-inline: 4px;
    justify-content: center;
    align-items: stretch;
    scrollbar-width: none;
  }
  .ot-mobile-call-participant-strip::-webkit-scrollbar {
    display: none;
  }
  .ot-mobile-call-participant-pill {
    min-width: 78px;
    padding: 10px 10px 9px;
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.13) 0%, rgba(255, 255, 255, 0.07) 100%);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(2, 6, 23, 0.18);
    backdrop-filter: blur(18px);
  }
  .ot-mobile-call-participant-pill-avatar {
    display: flex;
    justify-content: center;
  }
  .ot-mobile-call-participant-pill-avatar .wrap-avatar.m-avatar {
    width: 34px;
    height: 34px;
    line-height: 34px;
    font-size: 13px;
  }
  .ot-mobile-call-participant-pill-name {
    margin-top: 7px;
    font-size: 10px;
    line-height: 1.3;
    color: rgba(226, 232, 240, 0.9);
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .ot-mobile-call-badge {
    position: absolute;
    top: 16px;
    left: 16px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.74);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
  }
  .ot-mobile-call-screen-share {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #020617;
  }
  .ot-mobile-call-screen-share-meta {
    position: absolute;
    left: 16px;
    bottom: 18px;
    padding: 10px 12px;
    border-radius: 16px;
    background: rgba(15, 23, 42, 0.74);
    backdrop-filter: blur(12px);
    box-shadow: 0 18px 36px rgba(2, 6, 23, 0.28);
  }
  .ot-mobile-call-screen-share-name {
    font-size: 13px;
    font-weight: 700;
    color: #fff;
  }
  .ot-mobile-call-screen-share-caption {
    margin-top: 2px;
    font-size: 11px;
    color: rgba(226, 232, 240, 0.8);
  }
  .ot-mobile-call-local-preview {
    position: absolute;
    right: 16px;
    bottom: 18px;
  }
  .ot-mobile-call-local-preview .ot-call-chat-avatar-shell {
    margin: 0;
    width: 54px;
    height: 54px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.24);
  }
  .ot-mobile-call-ringing-actions {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 22px 20px 18px;
  }
  .ot-mobile-call-primary-action,
  .ot-mobile-call-control-btn {
    border: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.12);
    color: #f8fafc;
    font-size: 22px;
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.18);
    transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease, color 0.18s ease;
  }
  .ot-mobile-call-primary-action:disabled,
  .ot-mobile-call-control-btn:disabled {
    opacity: 0.45;
    box-shadow: none;
  }
  .ot-mobile-call-primary-action:not(:disabled):active,
  .ot-mobile-call-control-btn:not(:disabled):active {
    transform: scale(0.97);
  }
  .ot-mobile-call-primary-action {
    width: 76px;
    height: 76px;
    border-radius: 28px;
    flex-direction: column;
    gap: 7px;
  }
  .ot-mobile-call-primary-action-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    line-height: 1;
  }
  .ot-mobile-call-primary-action-label {
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-transform: uppercase;
  }
  .ot-mobile-call-primary-action-success {
    background: #22c55e;
    color: #fff;
  }
  .ot-mobile-call-primary-action-danger,
  .ot-mobile-call-control-btn-danger {
    background: #ef4444;
    color: #fff;
  }
  .ot-mobile-call-controls {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 18px 14px 0;
    padding: 10px 12px calc(env(safe-area-inset-bottom, 0px) + 14px);
    border-radius: 30px 30px 0 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(15, 23, 42, 0.72) 100%);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-bottom: none;
    box-shadow: 0 -14px 34px rgba(2, 6, 23, 0.24);
    backdrop-filter: blur(24px) saturate(150%);
  }
  .ot-mobile-call-control-btn {
    width: 54px;
    min-height: 60px;
    border-radius: 22px;
    flex-direction: column;
    gap: 5px;
    padding: 8px 6px 7px;
    font-size: 17px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 8px 18px rgba(2, 6, 23, 0.12);
  }
  .ot-mobile-call-control-btn:not(.ot-mobile-call-control-btn-danger) {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0.08) 100%);
  }
  .ot-mobile-call-control-btn.is-off {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.24) 0%, rgba(148, 163, 184, 0.16) 100%);
    color: #f8fafc;
  }
  .ot-mobile-call-control-btn-danger {
    background: linear-gradient(180deg, #ff6b6b 0%, #ef4444 100%);
    color: #fff;
  }
  .ot-mobile-call-control-btn-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    line-height: 1;
  }
  .ot-mobile-call-control-btn-label {
    font-size: 9px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: rgba(248, 250, 252, 0.88);
  }
  @keyframes ot-mobile-call-pulse {
    0%, 100% {
      transform: scale(1);
      opacity: 1;
    }
    50% {
      transform: scale(1.015);
      opacity: 0.98;
    }
  }
}
.ai-chat-box .wrap-toggle-icon {
  display: none;
}

/**
* gajs-wrapper
**/
.gajs-wraper {
  background: #463a3c;
}
.gajs-wraper .gajs-sidebar {
  height: calc(100vh - 200px);
  overflow: auto;
}
.gajs-wraper .gajs-sidebar .gajs-sidebar-top {
  padding: 16px 0 10px 10px;
}
.gajs-wraper .gajs-sidebar .gajs-sidebar-top h6 {
  color: #bba5a6;
  font-weight: 600;
}
.gajs-wraper .gajs-sidebar .gajs-sidebar-top a {
  color: #bba5a6 !important;
}
.gajs-wraper .gajs-sidebar .gajs-pages-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.gajs-wraper .gajs-sidebar .gajs-pages-list li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 6px 0 6px 8px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  cursor: pointer;
}
.gajs-wraper .gajs-sidebar .gajs-pages-list li.active {
  background: rgba(255, 255, 255, 0.15);
}
.gajs-wraper .gajs-sidebar .gajs-pages-list li .p-title {
  color: #bba5a6;
  font-size: 12px;
}
.gajs-wraper .gajs-sidebar .gajs-pages-list li .p-actions .btn-duplicate {
  padding-right: 8px;
}
.gajs-wraper .gajs-sidebar .gajs-pages-list li .p-actions .btn-duplicate,
.gajs-wraper .gajs-sidebar .gajs-pages-list li .p-actions .btn-remove {
  color: #bba5a6;
}
.gajs-wraper .gajs-sidebar .gajs-pages-list li .p-actions .btn-more {
  padding: 0 5px;
}
.gajs-wraper .gajs-sidebar .gajs-pages-list li .p-actions .btn-more svg {
  transform: rotate(90deg);
}
.gajs-wraper .gajs-main-container {
  height: calc(100vh - 124px);
  overflow: auto;
}
.gajs-wraper .gajs-form-page-info {
  position: sticky;
  top: 0;
  padding-top: 16px;
  padding-bottom: 10px;
}
.gajs-wraper .gajs-form-page-info .form-label {
  color: #bba5a6;
}
.gajs-wraper .gajs-layer-manager .panel__layers {
  background: none !important;
}

.wrap-copy-menu {
  padding: 0 10px;
}
.wrap-copy-menu h5 {
  font-size: 14px;
  padding-top: 6px;
  color: #463b3c;
}
.wrap-copy-menu .mat-mdc-menu-item {
  min-height: 32px;
  border-bottom: 1px solid #bba5a6;
}
.wrap-copy-menu .mat-mdc-menu-item .mat-mdc-menu-item-text {
  font-size: 13px !important;
  color: #463b3c !important;
}
.wrap-copy-menu .mat-mdc-menu-item:last-child {
  border-bottom: none;
}

#headlessui-portal-root {
  z-index: 10000;
  position: relative;
}

.cdk-overlay-container .mat-mdc-menu-panel .mat-mdc-menu-content {
  padding: 5px 0 !important;
}
.cdk-overlay-container .mat-mdc-menu-panel .mat-mdc-menu-content .mat-mdc-menu-item {
  min-height: 40px;
  padding: 0 10px;
}

/*
* Custom for 3rd detail page
*/
.ai-chat-box-col {
  position: relative;
  z-index: 1;
  padding: 0 !important;
}
.ai-chat-box-col .ai-container {
  border-left: 2px solid #ecedee;
}
.ai-chat-box-col .wrap-toggle-icon {
  cursor: pointer;
}
.ai-chat-box-col .ai-chat-box {
  position: relative;
}
.ai-chat-box-col .ai-chat-box .wrap-toggle-icon {
  display: block;
}
.ai-chat-box-col .ai-chat-box .ai-box-left {
  position: absolute;
  width: 300px;
  top: 0;
  left: -310px;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  z-index: 12;
}
.ai-chat-box-col .ai-chat-box .ai-box-left.active {
  left: -1px;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.ai-chat-box-col .ai-chat-box .ai-box-left .btn-close {
  display: block !important;
}
.ai-chat-box-col .ai-chat-box .ai-box-right {
  width: 100% !important;
  z-index: 11;
}
.ai-chat-box-col .ai-chat-box .ai-box-right .btn-close {
  display: none;
}
.ai-chat-box-col .wrap-ai-content {
  height: calc(100vh - 115px);
  padding: 0 10px;
}
.ai-chat-box-col .wrap-ai-content .ai-header {
  padding: 0px 10px;
  border-bottom: 1px solid #ecedee;
  border-left: 1px solid #ecedee;
}
.ai-chat-box-col .wrap-ai-content .ai-header::before {
  display: none;
}
.ai-chat-box-col .wrap-ai-content .ai-header .modal-title {
  height: 41px;
  line-height: 41px;
  font-size: 18px;
}
.ai-chat-box-col .wrap-ai-content .answer-box {
  border-left: 1px solid #ecedee;
}

/* Kanban Arrow Style */
.ot-kanban-progress.arrow-style .kanban-progress .level-name {
  padding: 0 0 10px 0;
}
.ot-kanban-progress.arrow-style .header-step-bar ul {
  padding: 0;
  gap: 5px;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li {
  flex: 1;
  background-color: #f2f2f2;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  cursor: pointer;
  clip-path: polygon(0% 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 0% 100%, 20px 50%);
}
.ot-kanban-progress.arrow-style .header-step-bar ul li::before {
  display: none !important;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li .step-number {
  display: none !important;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li .step-label {
  font-size: 14px;
  font-weight: 600;
  color: #333;
  margin-top: 0;
  padding-left: 0;
  transform: none;
  width: auto;
  display: block;
  padding-top: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 25px;
  text-align: center;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li .step-label .step-percent {
  display: none;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li .step-label i {
  margin-left: 5px;
  color: #fff !important;
  background-color: #000 !important;
  border-radius: 50%;
  opacity: 1 !important;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li.active, .ot-kanban-progress.arrow-style .header-step-bar ul li.current {
  background-color: #266df0;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li.active .step-label, .ot-kanban-progress.arrow-style .header-step-bar ul li.current .step-label {
  color: #fff;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li.active::before, .ot-kanban-progress.arrow-style .header-step-bar ul li.current::before {
  display: none !important;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li.active .step-number, .ot-kanban-progress.arrow-style .header-step-bar ul li.current .step-number {
  display: none !important;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li:first-child {
  clip-path: polygon(0% 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 0% 100%);
}
.ot-kanban-progress.arrow-style .header-step-bar ul li:first-child .step-label {
  padding-left: 0;
}
.ot-kanban-progress.arrow-style .header-step-bar ul li:last-child {
  width: auto !important;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 20px 50%);
}

.wrap-pd-section {
  border-bottom: 1px solid #ededed;
  padding-bottom: 30px;
  margin-bottom: 20px;
}

.nav-header-sticky {
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 10;
  padding: 15px 0;
  border-bottom: 1px solid #ecedee;
}

.checkout-steps-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
.checkout-steps-nav::before {
  content: "";
  position: absolute;
  top: 12px;
  height: 2px;
  width: calc(100% - 40px);
  left: 20px;
  background-color: #e0e0e0;
  z-index: 1;
}
.checkout-steps-nav a {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 1;
  background: #fff;
  padding: 0 10px;
}
.checkout-steps-nav a.deactive {
  cursor: not-allowed;
  pointer-events: none;
}
.checkout-steps-nav a.deactive .step-num {
  background: #8e8e8e;
}
.checkout-steps-nav a.deactive .step-name {
  color: #8e8e8e;
}
.checkout-steps-nav a:last-child {
  padding-right: 0;
  margin-right: 0;
}
.checkout-steps-nav .step-num {
  border-radius: 50%;
  height: 24px;
  width: 24px;
  display: table;
  background-color: #304ffe;
  color: #fff;
  text-align: center;
  line-height: 24px;
  margin-right: 8px;
}
.checkout-steps-nav .step-name {
  color: #141516;
  font-size: 15px;
}

.breadcrumb-container li {
  font-size: 12px;
  font-weight: normal !important;
}
.box-step-info {
  border: 1px solid #ecedee;
  border-radius: 10px;
  padding: 15px;
  margin-bottom: 20px;
  margin-top: 20px;
  background: #f7f7f7;
  display: flex;
}
.box-step-info .box-col {
  padding-right: 25px;
}
.box-step-info .box-col:last-child {
  padding-right: 0;
}
.box-step-info .box-col .col-title {
  font-size: 14px;
  font-weight: 300;
  color: #828282;
}
.box-step-info .box-col.white-space-nowrap .col-value {
  white-space: nowrap;
}
.box-step-info .box-col .col-value {
  color: #141516;
  font-size: 16px;
}
.box-step-info .box-col .col-value.b-title {
  font-weight: bold;
}
.box-step-info .box-col .col-value i {
  color: #266df0;
  margin-right: 6px;
}
.box-step-info .box-col-space {
  width: 1px;
  background: #e0e0e0;
  margin: 0 25px 0 0px;
}
.box-step-info .step-title {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 10px;
}

.wrap-time-result {
  margin-left: 20px;
  border-left: 1px solid #ecedee;
  padding: 0 20px;
}
.wrap-time-result .trs-title {
  font-weight: 500;
  font-size: 16px;
  margin-bottom: 15px;
}
.wrap-time-result ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.wrap-time-result ul li {
  border-bottom: 1px solid #ecedee;
  margin-bottom: 10px;
  padding-bottom: 10px;
}
.wrap-time-result ul li .trs-line-title {
  font-size: 14px;
  font-weight: 300;
  color: #828282;
}
.wrap-time-result ul li .trs-line-value {
  color: #141516;
}
.wrap-time-result .box-view-timezone {
  border: 1px solid #bbceff;
  border-radius: 15px;
  padding: 15px;
  margin-top: 20px;
  background: #eff4ff;
}
.wrap-time-result .box-view-timezone .vtz-title {
  font-weight: 500;
  color: #02176c;
  margin-bottom: 10px;
  font-size: 14px;
}
.wrap-time-result .box-view-timezone .vtz-footer {
  margin-top: 15px;
  padding-top: 10px;
  border-top: 1px solid #bbceff;
}
.wrap-time-result .box-view-timezone .vtz-footer .ft-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.wrap-time-result .box-view-timezone .vtz-footer .ft-line .ft-left {
  font-size: 13px;
  color: #02176c;
}
.wrap-time-result .box-view-timezone .vtz-footer .ft-line .ft-right {
  font-size: 13px;
  font-weight: 600;
  color: #141516;
}

.items-grid-view .block-item {
  border: 1px solid #ecedee;
  height: 100%;
  position: relative;
  padding-bottom: 55px;
}
.items-grid-view .block-item .wrap-thumbnail {
  height: 200px;
  margin: -1px -1px 10px -1px;
  width: calc(100% + 2px);
}
.items-grid-view .block-item .wrap-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.items-grid-view .block-item .item-label {
  color: #266df0;
  padding: 0 10px;
}
.items-grid-view .block-item .item-name {
  color: #141516;
  font-size: 18px;
  font-weight: 500;
  padding: 5px 10px;
}
.items-grid-view .block-item .item-address {
  font-size: 13px;
  font-weight: 400;
  padding: 0 10px;
}
.items-grid-view .block-item .item-price {
  padding: 10px;
  border-top: 1px solid #ecedee;
  font-size: 18px;
  font-weight: 500;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.items-grid-view .block-item .item-price .price-text {
  font-weight: 400;
}

.property-section {
  padding: 20px 0;
  border-bottom: 1px solid #ecedee;
}
.property-section .items-grid-view .block-item {
  padding-bottom: 0;
}
.property-section .items-grid-view .block-item .item-price {
  position: relative;
  margin-top: 15px;
  padding-bottom: 0;
}
.property-section .items-grid-view .rv-btn {
  padding: 10px 0;
  text-align: center;
}
.property-section .items-grid-view .rv-btn.have-border {
  border-top: 1px solid #ecedee;
}

.wrap-images-view {
  min-height: 100vh;
}
.wrap-images-view .modal-body {
  max-height: calc(100vh - 80px);
}
.wrap-images-view .image-tooltip {
  position: fixed;
  z-index: 9999;
  pointer-events: none;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
  max-width: 50vw;
  max-height: 50vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wrap-images-view .image-tooltip img {
  max-width: 50vw;
  max-height: 50vh;
  display: block;
}

.reservation-search-field.reservation-search-space-type .reservation-select.ng-select .ng-value-container {
  padding-left: 18px !important;
}
.reservation-search-field .ng-select .ng-select-container .ng-value-container .ng-input > input {
  line-height: 31px;
}

.local-marketing-wizard-page {
  background: #e5e5e5;
  max-width: none;
  padding-left: 18px;
  padding-right: 18px;
}

.lm-wizard-shell {
  max-width: 1080px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #e9edf3;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}

.lm-wizard-titlebar {
  min-height: 70px;
  border-bottom: 1px solid #e9edf3;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 24px;
}
.lm-wizard-titlebar h2 {
  font-size: 20px;
  font-weight: 600;
  color: #222f3e;
  margin: 0;
}

.lm-status-badge {
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  padding: 7px 13px;
}
.lm-status-badge.is-active {
  background: #e8f8ee;
  color: #15803d;
}
.lm-status-badge.is-muted {
  background: #eceff3;
  color: #64748b;
}

.lm-wizard-step,
.lm-form-step {
  position: relative;
}

.lm-wizard-step {
  display: grid;
  grid-template-columns: 52px 1fr;
  border-bottom: 1px solid #eef1f5;
  padding: 20px 24px 22px 0;
}

.lm-form-step {
  padding-left: 44px;
}

.lm-step-tag {
  align-self: start;
  justify-self: center;
  background: #eef0f3;
  color: #7b8490;
  border-radius: 2px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  padding: 6px 7px;
  text-transform: uppercase;
}

.lm-form-step > .lm-step-tag {
  position: absolute;
  left: 0;
  top: 18px;
}

.lm-step-body h3,
.lm-section-head h3 {
  color: #26313f;
  font-size: 15px;
  font-weight: 700;
  margin: 0 0 18px;
}

.lm-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.lm-wizard-card {
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.08);
  padding: 18px;
}

.lm-field-grid {
  display: grid;
  gap: 16px 22px;
}
.lm-field-grid.three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.lm-info-field label {
  color: #5c6571;
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 7px;
}
.lm-info-field div {
  color: #1f2937;
  font-size: 14px;
  min-height: 20px;
  word-break: break-word;
}
.lm-info-field small {
  color: #778190;
  display: block;
  margin-top: 4px;
  word-break: break-word;
}
.lm-info-field.wide {
  grid-column: span 2;
}

.lm-operation-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr);
  gap: 28px;
}

.lm-subsection-title {
  color: #3c4654;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 12px;
}

.lm-url-list,
.lm-phone-list {
  display: grid;
  gap: 9px;
}

.lm-url-row {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 12px;
  font-size: 13px;
}
.lm-url-row span {
  color: #596579;
  font-weight: 700;
}
.lm-url-row a,
.lm-url-row em {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lm-phone-chip,
.lm-payment-chip {
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
  color: #26313f;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 7px 11px;
}

.lm-json-preview {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  color: #64748b;
  font-size: 12px;
  margin: 0;
  max-height: 170px;
  overflow: auto;
  padding: 12px;
  white-space: pre-wrap;
}

.lm-payment-grid,
.lm-payment-picker {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(112px, 1fr));
}

.lm-payment-option {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  color: #64748b;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 82px;
  padding: 12px 8px;
  transition: all 0.15s ease;
}
.lm-payment-option i {
  color: #8bb9ff;
  font-size: 24px;
}
.lm-payment-option span {
  font-size: 12px;
  font-weight: 700;
}
.lm-payment-option:hover, .lm-payment-option.selected {
  border-color: #2d8cff;
  box-shadow: 0 0 0 3px rgba(45, 140, 255, 0.12);
  color: #0b63ce;
}

.lm-phone-editor {
  display: grid;
  gap: 10px;
}

.lm-phone-edit-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.lm-raw-json-warning {
  background: #fff8e6;
  border: 1px solid #ffe1a6;
  border-radius: 8px;
  color: #8a5b00;
  font-size: 12px;
  margin-bottom: 10px;
  padding: 9px 11px;
}

.lm-autofill-btn {
  align-items: center;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  color: #1d4ed8;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  gap: 7px;
  line-height: 1;
  padding: 9px 13px;
  transition: all 0.15s ease;
}
.lm-autofill-btn:hover:not(:disabled) {
  background: #dbeafe;
  border-color: #93c5fd;
}
.lm-autofill-btn:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

@media (max-width: 991.98px) {
  .lm-wizard-step {
    grid-template-columns: 1fr;
    padding: 18px;
  }
  .lm-step-tag,
  .lm-form-step > .lm-step-tag {
    justify-self: start;
    margin-bottom: 12px;
    position: static;
  }
  .lm-form-step {
    padding-left: 0;
  }
  .lm-field-grid.three,
  .lm-operation-grid {
    grid-template-columns: 1fr;
  }
  .lm-info-field.wide {
    grid-column: auto;
  }
}
/* Communication workspace */
@media (min-width: 992px) {
  .ai-container.chat-dialog-container.standalone-chat-page > .row {
    display: flex;
    flex-wrap: nowrap;
    min-width: 0;
    position: relative;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .ai-box-left {
    flex: 0 0 288px;
    width: 288px;
    max-width: 288px;
    min-width: 0;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .ai-box-right {
    flex: 1 1 auto;
    width: auto;
    max-width: none;
    min-width: 0;
  }
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-empty {
  display: flex;
  min-height: 220px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 28px 20px;
  color: #687386;
  text-align: center;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-empty i {
  display: inline-flex;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #edf4ff;
  color: #146ef5;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-empty strong {
  color: #344054;
  font-size: 13px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-empty span {
  font-size: 12px;
  line-height: 18px;
}

.ai-container.chat-dialog-container.standalone-chat-page {
  --chat-workspace-border: #e4e9f0;
  --chat-workspace-muted: #687386;
  --chat-workspace-ink: #172033;
  --chat-workspace-blue: #146ef5;
  --chat-workspace-cyan: #14b8e8;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-sidebar {
  border-right: 1px solid var(--chat-workspace-border);
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-sidebar .ai-header.chat-sidebar-header {
  padding: 14px 14px 12px;
  border-bottom: 1px solid var(--chat-workspace-border);
  background: #fff;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-heading-row {
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-heading {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-heading h6 {
  margin: 0;
  color: var(--chat-workspace-ink);
  font-size: 15px;
  font-weight: 700;
  line-height: 20px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-eyebrow,
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-eyebrow {
  color: #8290a3;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 14px;
  text-transform: uppercase;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-heading-actions {
  gap: 4px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-header-link-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-link-btn {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border: 0 !important;
  border-radius: 10px;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  text-decoration: none;
  box-shadow: none !important;
  transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-header-link-btn img,
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-link-btn img {
  width: 17px;
  height: 17px;
  display: block;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-header-link-btn:hover,
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-link-btn:hover {
  background: #f0f4f9;
  transform: translateY(-1px);
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-header-link-btn:focus-visible,
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-link-btn:focus-visible {
  outline: 3px solid rgba(20, 110, 245, 0.2);
  outline-offset: 1px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-new-btn,
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-close {
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #586579;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: background-color 160ms ease, color 160ms ease;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-new-btn:hover,
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-close:hover {
  background: #f0f4f9;
  color: var(--chat-workspace-blue);
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-new-btn:focus-visible,
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-close:focus-visible {
  outline: 3px solid rgba(20, 110, 245, 0.22);
  outline-offset: 1px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-workspace-switcher {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
  margin-top: 10px;
  padding: 4px;
  border: 1px solid #e2e7ee;
  border-radius: 12px;
  background: #f3f6f9;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-workspace-switcher-tab {
  min-width: 0;
  min-height: 44px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: #647084;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 5px;
  padding: 0 7px;
  font-size: 11px;
  font-weight: 650;
  white-space: nowrap;
  transition: background-color 160ms ease, box-shadow 160ms ease, color 160ms ease;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-workspace-switcher-tab i {
  flex: 0 0 auto;
  color: #7d8ba0;
  font-size: 12px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-workspace-switcher-tab > span:not(.chat-workspace-switcher-count) {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-workspace-switcher-tab.is-active {
  background: #fff;
  box-shadow: 0 1px 3px rgba(19, 33, 54, 0.12);
  color: #1458c8;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-workspace-switcher-tab.is-active i {
  color: var(--chat-workspace-cyan);
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-workspace-switcher-tab:focus-visible {
  outline: 3px solid rgba(20, 110, 245, 0.2);
  outline-offset: 1px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-workspace-switcher-count {
  min-width: 20px;
  height: 20px;
  border-radius: 999px;
  background: rgba(100, 116, 139, 0.1);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 6px;
  flex: 0 0 auto;
  color: inherit;
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-channel-filter {
  min-height: 44px;
  margin-top: 10px;
  border: 1px solid #e0e6ed;
  border-radius: 10px;
  background: #fff;
  color: #8490a1;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 0 11px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-channel-filter:focus-within {
  border-color: #72a6f8;
  box-shadow: 0 0 0 3px rgba(20, 110, 245, 0.12);
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-channel-filter i {
  font-size: 12px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-channel-filter input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--chat-workspace-ink);
  font-size: 12px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-channel-filter input::placeholder {
  color: #8c98a9;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-sidebar .ai-sidebar {
  padding: 8px;
  background: #f9fafc;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-sidebar .ai-sidebar .channel-collection-header {
  min-height: 36px;
  margin: 4px 2px;
  border-radius: 8px;
  padding: 0 8px;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-sidebar .ai-sidebar .c-item {
  min-height: 68px;
  margin: 3px 0;
  border: 1px solid transparent;
  border-radius: 11px;
  padding: 9px 10px;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-sidebar .ai-sidebar .c-item.item-active {
  border-color: #cfe0fb;
  background: #edf5ff;
  box-shadow: inset 3px 0 0 var(--chat-workspace-blue);
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-sidebar .ai-sidebar .c-item:hover:not(.item-active) {
  background: #f0f3f7;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-empty {
  min-height: 220px;
  color: var(--chat-workspace-muted);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 28px 20px;
  text-align: center;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-empty i {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: #edf4ff;
  color: var(--chat-workspace-blue);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-empty strong {
  color: #344054;
  font-size: 13px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-empty span {
  font-size: 12px;
  line-height: 18px;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-header {
  min-height: 64px;
  border-bottom-color: var(--chat-workspace-border);
  padding-left: 18px;
  padding-right: 18px;
}
.ai-container.chat-dialog-container.standalone-chat-page .chat-panel-header-actions .chat-header-icon-btn {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: transparent;
  appearance: none;
  border: 0 !important;
  box-shadow: none !important;
}
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .wrap-ai-content .ai-content {
  padding: 22px clamp(18px, 3vw, 46px);
  background: #fff;
}
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .wrap-ai-content .ai-content > .mes-content,
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .wrap-ai-content .ai-content > .alert,
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .wrap-ai-content .ai-content > .chat-history-loader {
  width: min(100%, 860px);
  margin-left: auto;
  margin-right: auto;
}
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .wrap-ai-content .ai-content .mes-item.mes-answer .wrap-mes-item {
  width: min(100%, 780px);
}
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .wrap-ai-content .ai-content .mes-item.mes-answer .q-content {
  border-radius: 0;
  background: transparent;
  padding: 0;
  color: #222b3a;
  font-size: 14px;
  line-height: 1.72;
}
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .wrap-ai-content .ai-content .mes-item.mes-question {
  display: flex;
  justify-content: flex-end;
  padding-left: 18%;
}
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .wrap-ai-content .ai-content .mes-item.mes-question .q-content {
  border-radius: 16px 16px 4px 16px;
  padding: 10px 14px;
  box-shadow: 0 5px 14px rgba(20, 110, 245, 0.12);
}
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .answer-box {
  border-top: 1px solid #edf0f4;
  background: #fff;
  padding: 12px clamp(16px, 3vw, 40px) 16px;
}
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .answer-box .wrap-ab {
  width: 100%;
}
.ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .answer-box .wrap-input-question .chat-composer-rich-wrapper {
  border-color: #d8e0ea;
  border-radius: 15px;
  box-shadow: 0 8px 24px rgba(25, 39, 61, 0.06);
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-content .mes-item.mes-ai-pending .q-content.ot-ai-pending-card {
  width: min(100%, 620px);
  max-width: 620px;
  border: 1px solid #dfe6ef;
  border-radius: 12px;
  background: #f7f9fc;
  padding: 0;
  overflow: hidden;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-header {
  width: 100%;
  min-height: 48px;
  border: 0;
  background: transparent;
  color: inherit;
  padding: 10px 12px 10px 14px;
  text-align: left;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-meta {
  gap: 8px;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-content .mes-item.mes-ai-pending .ot-ai-pending-detail {
  margin: 0;
  border-top: 1px solid #e5eaf1;
  background: #fff;
  padding: 12px 14px;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-disclosure-icon {
  color: #8190a4;
  font-size: 10px;
  transition: transform 180ms ease;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-disclosure-icon.is-expanded {
  transform: rotate(90deg);
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-height: 44px;
  padding: 6px 0;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row + .ot-ai-activity-row::before {
  content: "";
  position: absolute;
  top: -6px;
  bottom: 6px;
  left: 13px;
  width: 1px;
  background: #dce5f0;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-icon {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 9px;
  background: #edf4ff;
  color: #236bd5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  position: relative;
  z-index: 1;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row > .ot-ai-activity-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-title {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row strong {
  color: #344054;
  font-size: 12px;
  line-height: 17px;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row span:not(.ot-ai-activity-icon) {
  color: #697587;
  font-size: 12px;
  line-height: 18px;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-status,
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-meta {
  color: #8b97a8;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 10px;
  line-height: 16px;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-status {
  text-transform: lowercase;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-raw {
  margin-top: 5px;
  border: 1px solid #e2e8f0;
  border-radius: 7px;
  background: #f8fafc;
  overflow: hidden;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-raw summary {
  cursor: pointer;
  padding: 4px 7px;
  color: #526174;
  font-size: 10px;
  font-weight: 700;
  line-height: 16px;
  list-style-position: inside;
  user-select: none;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-raw summary:focus-visible {
  outline: 2px solid rgba(20, 110, 245, 0.28);
  outline-offset: -2px;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-raw-block {
  border-top: 1px solid #e2e8f0;
  padding: 5px 7px 6px;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-raw-block > span {
  display: block;
  margin-bottom: 3px;
  color: #7a8798;
  font-size: 10px;
  font-weight: 700;
  line-height: 14px;
  text-transform: uppercase;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-raw-block pre {
  max-height: 180px;
  margin: 0;
  overflow: auto;
  color: #243247;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 10px;
  line-height: 15px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row.is-active .ot-ai-activity-icon,
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-activity-row .ot-ai-activity-icon.is-active {
  background: #eaf8fc;
  color: #0784a8;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-content .ot-ai-completed-summary {
  padding: 3px 0 10px 30px;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-content .ot-ai-completed-summary-line {
  min-height: 42px;
  border: 0;
  border-bottom: 1px solid #e7ebf0;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 4px;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-content .ot-ai-completed-summary-line:hover {
  color: #354054;
}
.ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-content .ot-ai-completed-summary-line:focus-visible {
  border-radius: 8px;
  outline: 3px solid rgba(20, 110, 245, 0.18);
  outline-offset: 1px;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-completed-summary-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-completed-summary-label i {
  color: #16a076;
}
.ai-container.chat-dialog-container.standalone-chat-page .ot-ai-completed-detail {
  border-bottom: 1px solid #e7ebf0;
  background: #f8fafc;
  padding: 12px;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-composer-rich-wrapper {
  gap: 0;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-composer-rich-wrapper .chat-rich-editor .NgxEditor,
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-rich-editor .NgxEditor {
  min-height: 58px;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-composer-rich-wrapper .chat-rich-editor .NgxEditor__Content,
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-rich-editor .NgxEditor__Content {
  min-height: 58px;
  max-height: 220px;
  padding: 14px 15px 9px;
  font-size: 13px;
  line-height: 20px;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-composer-agent-options {
  min-width: 0;
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 7px;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-composer-agent-options .chat-agent-composer-control-group {
  min-width: 0;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-agent-composer-control-group {
  min-height: 36px;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-agent-composer-select {
  min-height: 36px;
  height: 36px;
  max-width: 156px;
  padding: 0 24px 0 10px;
  border-radius: 10px;
  font-size: 11px;
  line-height: 34px;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-agent-composer-select-reasoning {
  max-width: 76px;
  padding-right: 21px;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-actions {
  min-height: 60px;
  gap: 4px;
  padding: 7px 9px;
  border-top-color: #e9edf2;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-action-btn,
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-send-btn {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-send-btn {
  border-color: var(--chat-workspace-blue);
  background: var(--chat-workspace-blue);
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-send-btn img {
  width: 17px;
  height: 17px;
  filter: brightness(0) invert(1);
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-send-btn:disabled {
  border-color: #d9dee6;
  background: #edf0f4;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-send-btn:disabled img {
  filter: none;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-send-btn:not(:disabled):hover {
  background: #0d5ed7;
}
.ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-actions-divider {
  margin-left: 2px;
}
.ai-container.chat-dialog-container.standalone-chat-page .ai-box-workspace {
  width: 300px;
  max-width: 300px;
  height: 100%;
  flex: 0 0 300px;
  border-left: 1px solid var(--chat-workspace-border);
  background: #fff;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-header {
  min-height: 64px;
  border-bottom: 1px solid var(--chat-workspace-border);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px 10px 16px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-header > div {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-header h6 {
  margin: 0;
  color: var(--chat-workspace-ink);
  font-size: 15px;
  font-weight: 700;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-bottom: 1px solid var(--chat-workspace-border);
  padding: 0 10px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-tabs button {
  min-height: 46px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: #718096;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 650;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-tabs button span {
  color: #8b96a7;
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-tabs button.is-active {
  border-bottom-color: var(--chat-workspace-blue);
  color: #1f4f9b;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-tabs button:focus-visible {
  outline: 3px solid rgba(20, 110, 245, 0.18);
  outline-offset: -3px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-content {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding: 10px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 84px;
  color: #718096;
  font-size: 12px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-bookmark {
  width: 100%;
  min-height: 74px;
  margin-bottom: 6px;
  padding: 9px;
  border: 1px solid transparent;
  border-radius: 11px;
  background: transparent;
  color: inherit;
  display: flex;
  align-items: flex-start;
  gap: 9px;
  text-align: left;
  transition: border-color 160ms ease, background-color 160ms ease;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-bookmark:hover {
  border-color: #dce5f0;
  background: #f5f8fc;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-bookmark:focus-visible {
  outline: 3px solid rgba(20, 110, 245, 0.18);
  outline-offset: 1px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-bookmark-icon {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border-radius: 9px;
  background: #fff4d8;
  color: #a66d00;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-bookmark-snippet {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 15px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-bookmark-remove {
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  border-radius: 7px;
  color: #94a0b1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-bookmark-remove:hover {
  background: #fff0f0;
  color: #dc3545;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-item {
  width: 100%;
  min-height: 62px;
  margin-bottom: 6px;
  border: 1px solid transparent;
  border-radius: 11px;
  background: transparent;
  color: inherit;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px;
  text-align: left;
  text-decoration: none;
  transition: border-color 160ms ease, background-color 160ms ease;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-item:hover {
  border-color: #dce5f0;
  background: #f5f8fc;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-item:focus-visible {
  outline: 3px solid rgba(20, 110, 245, 0.18);
  outline-offset: 1px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-item-preview {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: 9px;
  background: #eef3f9;
  overflow: hidden;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-item-preview img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-file-preview {
  color: #2872d6;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-item-body {
  min-width: 0;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-item-body strong {
  overflow: hidden;
  color: #2d3748;
  font-size: 12px;
  font-weight: 650;
  line-height: 17px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-item-body > span {
  color: #7b8798;
  font-size: 10px;
  line-height: 15px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-item-action {
  flex: 0 0 auto;
  color: #929dac;
  font-size: 10px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-empty {
  min-height: 280px;
  color: #7b8798;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 18px;
  text-align: center;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-empty .agent-workspace-empty-icon {
  width: 46px;
  height: 46px;
  margin-bottom: 12px;
  border-radius: 14px;
  background: #eef5ff;
  color: #2772d6;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-empty strong {
  color: #3a4658;
  font-size: 13px;
}
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-empty p {
  margin: 6px 0 0;
  font-size: 11px;
  line-height: 17px;
}

@media (min-width: 992px) and (max-width: 1279.98px) {
  .ai-container.chat-dialog-container.standalone-chat-page .ai-box-workspace {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 30;
    width: min(320px, 42vw);
    max-width: min(320px, 42vw);
    box-shadow: -18px 0 42px rgba(22, 35, 55, 0.14);
  }
  .ai-container.chat-dialog-container.standalone-chat-page .chat-agent-composer-label {
    display: none;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-agent-composer-select {
    max-width: 140px;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-agent-composer-select-reasoning {
    max-width: 82px;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-agent-model-picker {
    width: min(128px, 100%);
    flex: 1 1 0;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-agent-model-toggle {
    padding-left: 8px;
    padding-right: 20px;
  }
}
@media (max-width: 991.98px) {
  .ai-container.chat-dialog-container.standalone-chat-page .ai-box-workspace {
    display: none;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-sidebar .ai-header.chat-sidebar-header {
    padding: 10px;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .chat-workspace-switcher-tab,
  .ai-container.chat-dialog-container.standalone-chat-page .chat-channel-filter {
    min-height: 44px;
  }
  .ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .wrap-ai-content .ai-content {
    padding: 14px 12px;
  }
  .ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .wrap-ai-content .ai-content .mes-item.mes-question {
    padding-left: 10%;
  }
  .ai-container.chat-dialog-container.standalone-chat-page.agent-workspace-mode .answer-box {
    padding: 6px 8px max(8px, env(safe-area-inset-bottom, 0px));
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-actions {
    min-height: 52px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-actions::-webkit-scrollbar {
    display: none;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-action-btn,
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-send-btn {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-send-btn {
    position: sticky;
    right: 0;
    box-shadow: -8px 0 12px #fff;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .chat-composer-character-count:not(.chat-composer-character-count-warning),
  .ai-container.chat-dialog-container.standalone-chat-page .chat-agent-composer-label {
    display: none;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-composer-agent-options {
    margin-left: 0;
    flex: 0 0 auto;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-composer-agent-options .chat-agent-composer-control-group {
    flex: 0 0 auto;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-agent-composer-select {
    width: 150px;
    max-width: 150px;
    min-height: 44px;
    flex: 0 0 150px;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .answer-box .wrap-input-question .chat-agent-composer-select-reasoning {
    width: 104px;
    max-width: 104px;
    flex-basis: 104px;
  }
  .ai-container.chat-dialog-container.standalone-chat-page .wrap-ai-content .ai-content .ot-ai-completed-summary {
    padding-left: 22px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ai-container.chat-dialog-container .ot-ai-disclosure-icon,
  .ai-container.chat-dialog-container .ot-ai-pending-dots span,
  .ai-container.chat-dialog-container .ot-ai-activity-row .fa-spin {
    animation: none !important;
    transition: none !important;
  }
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-search-title,
.ai-container.chat-dialog-container.standalone-chat-page .chat-search-title {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  gap: 8px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-search-title-actions,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-search-result-navigation,
.ai-container.chat-dialog-container.standalone-chat-page .chat-search-title-actions,
.ai-container.chat-dialog-container.standalone-chat-page .chat-search-result-navigation {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-search-result-position,
.ai-container.chat-dialog-container.standalone-chat-page .chat-search-result-position {
  color: #6c757d;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-search-result-nav-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-search-result-nav-btn {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #6c757d;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  font-size: 11px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-search-result-nav-btn:hover:not(:disabled),
.ai-container.chat-dialog-container.standalone-chat-page .chat-search-result-nav-btn:hover:not(:disabled) {
  background: #f1f3f5;
  color: #272b30;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-search-result-nav-btn:disabled,
.ai-container.chat-dialog-container.standalone-chat-page .chat-search-result-nav-btn:disabled {
  cursor: wait;
  opacity: 0.5;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-panel-back-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-panel-sidebar-toggle-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-new-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-sidebar-link-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-header-link-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-header-icon-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-search-close-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-search-submit-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .message-action-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-composer-mode-close,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-composer-action-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .chat-composer-send-btn,
.ai-container.chat-dialog-container.embedded-chat-panel .agent-workspace-close,
.ai-container.chat-dialog-container.standalone-chat-page .chat-panel-back-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-panel-sidebar-toggle-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-new-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-sidebar-link-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-header-link-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-header-icon-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-search-close-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-search-submit-btn,
.ai-container.chat-dialog-container.standalone-chat-page .message-action-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-composer-mode-close,
.ai-container.chat-dialog-container.standalone-chat-page .chat-composer-action-btn,
.ai-container.chat-dialog-container.standalone-chat-page .chat-composer-send-btn,
.ai-container.chat-dialog-container.standalone-chat-page .agent-workspace-close {
  border-radius: 5px;
}
.ai-container.chat-dialog-container.embedded-chat-panel .chat-composer-send-btn img,
.ai-container.chat-dialog-container.standalone-chat-page .chat-composer-send-btn img {
  width: 17px;
  height: 17px;
}

.ai-container.chat-dialog-container.embedded-conversation-unified .ai-sidebar {
  display: flex;
  flex-direction: column;
}
.ai-container.chat-dialog-container.embedded-conversation-unified .channel-collection {
  display: contents;
}

.chat-agent-model-picker {
  position: relative;
  min-width: 0;
  width: clamp(104px, 12vw, 138px);
  flex: 0 1 138px;
}

.chat-agent-model-toggle {
  width: 100%;
  min-width: 0;
  min-height: 36px;
  padding: 0 24px 0 10px;
  border: 1px solid #d7e0ec;
  border-radius: 9px;
  background: #fff;
  color: #334155;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  line-height: 15px;
  text-align: left;
}
.chat-agent-model-toggle::after {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-25%);
}
.chat-agent-model-toggle:hover:not(:disabled), .chat-agent-model-toggle:focus-visible {
  border-color: #7aa2f7;
  box-shadow: 0 0 0 3px rgba(20, 110, 245, 0.12);
}

.chat-agent-model-toggle-name {
  display: block;
  min-width: 0;
  max-width: 100%;
  width: 100%;
  overflow: hidden;
  font-size: 11px;
  font-weight: 700;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.chat-agent-model-toggle-cost {
  display: none;
}

.chat-agent-model-menu {
  box-sizing: border-box;
  width: min(520px, 100vw - 24px);
  max-width: calc(100vw - 24px);
  max-height: min(520px, 70vh);
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  padding: 8px;
  border: 1px solid #dce5f0;
  border-radius: 12px;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.18);
}

.chat-agent-model-menu-headings,
.chat-agent-model-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) repeat(3, minmax(54px, 62px)) 16px;
  align-items: center;
  column-gap: clamp(4px, 1vw, 8px);
}

.chat-agent-model-menu-headings {
  padding: 0 8px 4px;
  color: #6b7a90;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-align: right;
  text-transform: uppercase;
}
.chat-agent-model-menu-headings span:first-child {
  text-align: left;
}

.chat-agent-model-row {
  width: 100%;
  min-height: 44px;
  padding: 6px 8px;
  border-radius: 8px;
  color: #334155;
  text-align: right;
}
.chat-agent-model-row:hover, .chat-agent-model-row.is-selected {
  background: #eef5ff;
}
.chat-agent-model-row:focus-visible {
  outline: 3px solid rgba(20, 110, 245, 0.18);
  outline-offset: -2px;
}

.chat-agent-model-row-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
}

.chat-agent-model-row-name {
  max-width: 100%;
  overflow: hidden;
  font-size: 11px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.chat-agent-model-pricing {
  color: #4b607e;
  font-size: 11px;
  line-height: 1.35;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.chat-agent-model-selected {
  color: #0d6efd;
  font-size: 10px;
}

.chat-agent-model-spend {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin: 0 0 8px;
  padding: 10px 12px;
  border: 1px solid #e7edf5;
  border-radius: 8px;
  background: #f8fafc;
  color: #64748b;
  font-size: 12px;
  line-height: 1.35;
}
.chat-agent-model-spend span {
  color: #334155;
  font-size: 13px;
  font-weight: 700;
}
.chat-agent-model-spend .chat-agent-model-spend-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
.chat-agent-model-spend strong {
  color: #2f5fa4;
  font-size: 12px;
  font-variant-numeric: tabular-nums;
}
.chat-agent-model-spend small {
  color: #5f6f84;
  font-size: 12px;
}

.chat-agent-composer-control-group {
  min-width: 0;
}
.chat-agent-composer-control-group:first-child {
  flex: 1 1 auto;
}
.chat-agent-composer-control-group:last-child {
  flex: 0 1 auto;
}

.chat-agent-composer-label,
.chat-agent-composer-select {
  min-width: 0;
}

@media (max-width: 640px) {
  .chat-agent-model-menu {
    width: calc(100vw - 16px);
    max-width: calc(100vw - 16px);
    padding: 6px;
  }
  .chat-agent-model-menu-headings,
  .chat-agent-model-row {
    grid-template-columns: minmax(0, 1fr) repeat(3, minmax(44px, 52px)) 12px;
    column-gap: 3px;
  }
  .chat-agent-model-menu-headings {
    padding-inline: 6px;
    font-size: 9px;
    letter-spacing: 0.02em;
  }
  .chat-agent-model-row {
    padding-inline: 6px;
  }
  .ai-container.chat-dialog-container .answer-box .chat-agent-composer-label {
    display: none;
  }
  .ai-container.chat-dialog-container .answer-box .chat-composer-agent-options {
    gap: 4px;
  }
  .ai-container.chat-dialog-container .answer-box .chat-agent-model-picker {
    width: min(138px, 30vw);
    flex-basis: 138px;
  }
  .ai-container.chat-dialog-container .answer-box .chat-agent-model-toggle {
    padding-left: 8px;
    padding-right: 20px;
  }
  .ai-container.chat-dialog-container .answer-box .chat-agent-model-toggle-name {
    text-align: left;
  }
}
.hero-section {
  background-size: cover;
  background-position: center;
  height: 480px;
  color: white;
  display: flex;
  align-items: end;
  border-radius: 8px;
}
.hero-section.hero-o-section {
  position: relative;
}
.hero-section.hero-o-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  border-radius: 8px;
}
.hero-section.hero-o-section .hero-text {
  position: relative;
  z-index: 1;
}

.hero-text {
  padding: 2.5rem;
  border-radius: 8px;
  width: 100%;
}

.trending-news {
  margin-top: 0.5rem;
}

.news-item {
  border-bottom: 1px solid #dee2e6;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}

.news-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
}

.article-card {
  border: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  /* transition: transform 0.3s ease; */
}

.article-card:hover {
  /* transform: translateY(-5px); */
}

.article-image {
  height: 200px;
  object-fit: cover;
}

.location-dropdown .dropdown-menu {
  max-height: 300px;
  overflow-y: auto;
}

.article-nav-link {
  color: #6c757d !important;
  font-weight: 500;
  /* border-bottom: 2px solid #e0e0e0; */
  margin: 0 4px; /* Add spacing between underlines */
}

.article-nav-link.active {
  color: #0d6efd !important;
  border-bottom: 2px solid #0d6efd;
}

.article-nav-link.search-link,
.article-nav-link.ellipsis-toggle {
  border-bottom: none !important;
}

.trending-image {
  max-width: 180px;
  object-fit: cover;
  border-radius: 4px;
}

.search-page .search-section {
  background-color: #f8f9fa;
  padding: 2rem 0;
}
.search-page .search-filters {
  background-color: white;
  border-radius: 8px;
  padding: 1rem;
}
.search-page .region-select {
  min-width: 190px;
  flex: 0 0 auto;
}
.search-page .d-flex .input-group:has(.region-select) {
  flex: 0 0 auto;
}
@media (max-width: 767.98px) {
  .search-page .region-select {
    min-width: unset;
    width: 100%;
  }
}
.search-page .article-card {
  background-color: white;
  border-radius: 8px;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease;
}
.search-page .article-card:hover {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
.search-page .article-image {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 6px;
}
.search-page .article-title {
  font-size: 1.1rem;
  font-weight: 600;
  color: #333;
  text-decoration: none;
  line-height: 1.4;
}
.search-page .article-title:hover {
  color: #007bff;
}
.search-page .article-meta {
  color: #6c757d;
  font-size: 0.9rem;
}
.search-page .category-tag {
  background-color: #e9ecef;
  color: #495057;
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  font-size: 0.8rem;
  text-decoration: none;
}
.search-page .location-badge {
  color: #6c757d;
  font-size: 0.8rem;
}

.content-section img {
  width: 100% !important;
  height: auto;
}

.article-detail-header {
  position: sticky;
  top: 60px;
  background: white;
  z-index: 10;
  padding-bottom: 10px;
  padding-top: 0;
}

.row-article-detail {
  align-items: flex-start;
}
.row-article-detail .article-detail-sidebar {
  position: sticky;
  top: 60px;
  z-index: 10;
  background: white;
}

.ra-title {
  font-size: 14px;
  font-weight: 500;
}

/* === Article home (Figma-inspired) === */
:root {
  /* Figma tokens */
  --ot-black: #010101;
  --ot-gray: #696868;
  --ot-neutral-selected: #ebebeb;
  --ot-neutral-stroke-disabled: #e0e0e0;
  --ot-bl: #141416;
  /* Primary brand blue for active states */
  --ot-primary: #0d6efd; /* fallback to Bootstrap primary blue */
  /* spacing tokens (px) extracted from Figma */
  --ot-gap-xs: 8px;
  --ot-gap-sm: 12px;
  --ot-gap-md: 16px;
  --ot-gap-lg: 30px;
  --ot-gap-xl: 35px;
}

.container-article {
  max-width: 1160px;
}

.section-title {
  color: var(--ot-black);
  font-weight: 600;
  font-size: 28px;
  line-height: 38px;
}

/* Top-only divider utility for section separation */
/* Featured card */
.article-featured {
  background: #f1f1f1;
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.article-featured .featured-media {
  height: 391px;
}
.article-featured .featured-content {
  padding: 1.25rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1 1 auto;
}
.article-featured {
  /* Ensure main (non --sm) variant has stable minimum content area height so short summaries or empty excerpts don't visually collapse. */
}
.article-featured:not(.article-featured--sm) .featured-content {
  /* 200px content + existing vertical padding (1.25rem top + 1.5rem bottom) */
  min-height: calc(200px + 1.25rem + 1.5rem);
}
.article-featured .category-chip {
  /* Removed forced uppercase so categories use helper-based casing.
     Use the optional .category-chip--upper modifier if all-caps needed intentionally. */
  font-weight: 600;
  font-size: 14px;
  color: #1666c2;
}
.article-featured .category-chip--upper {
  text-transform: uppercase;
}
.article-featured .region-badge {
  opacity: 0.7;
  color: var(--ot-black);
  font-size: 12px;
}
.article-featured .featured-title {
  font-weight: 500;
  font-size: 24px;
  line-height: 30px;
  color: var(--ot-black);
}
.article-featured .featured-title--md {
  font-size: 24px;
  line-height: 30px;
}
.article-featured .featured-excerpt {
  color: var(--ot-gray);
  font-size: 16px;
  /* Multi-line clamp with ellipsis */
  display: -webkit-box;
  line-clamp: 8;
  -webkit-line-clamp: 8;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (max-width: 991.98px) {
  .article-featured .featured-excerpt {
    line-clamp: 4;
    -webkit-line-clamp: 4;
  }
}
.article-featured--sm {
  min-height: 430px;
}
.article-featured--sm .featured-media {
  height: 323px;
  border-radius: 12px;
}
.article-featured.skeleton .featured-media {
  background: #f8fafc;
}
.article-featured .placeholder {
  background-color: #f4f7fa !important;
}
.article-featured .placeholder-wave .placeholder {
  opacity: 0.9; /* animation removed (kept subtle opacity to avoid empty rule) */
}

/* (Former external override for main featured min-height consolidated inside .article-featured above.) */
/* The Latest list */
.latest-news .latest-list {
  margin-top: 0.75rem;
  padding-left: 20px;
}
.latest-news .section-title {
  padding-left: 20px;
}
.latest-news .latest-item {
  padding: 1rem 0;
  border-bottom: 1px solid var(--ot-neutral-selected);
  position: relative;
}
.latest-news .latest-item:last-child {
  border-bottom: 1px solid var(--ot-neutral-stroke-disabled);
}
.latest-news .latest-date {
  display: inline-flex;
  margin-right: 0;
  padding-right: 0;
}
.latest-news .icon-pin {
  display: inline-block;
  vertical-align: -1px;
}
.latest-news .latest-title a {
  font-weight: 500;
  font-size: 16px;
  line-height: 1.35;
  text-decoration: none;
}
.latest-news .latest-cat {
  /* Removed forced uppercase so Title Case logic in component is respected. Acronyms already delivered uppercase. */
  color: #1666c2;
  font-weight: 600;
  letter-spacing: 0.2px;
}

/* Post rows with right thumbnail */
.post-list {
  margin-top: 0;
}

.post-row {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 0;
  border-bottom: 1px solid var(--ot-neutral-selected);
}

.post-row:last-child {
  border-bottom: 1px solid var(--ot-neutral-stroke-disabled);
}

.post-row-media {
  flex: 0 0 232px;
  text-decoration: none;
}

.post-row-media .thumb {
  width: 232px;
  height: 130px;
  border-radius: 6px;
}

.post-row-text {
  flex: 1;
  min-width: 0;
}

.post-row-title a {
  font-weight: 500;
  color: var(--ot-black);
  text-decoration: none;
}

/* Category columns */
.category-column {
  margin-top: 0;
}

.category-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}
.category-header .category-name {
  color: #1666c2;
  font-weight: 600;
  font-size: 14px;
  margin-top: 0;
}

.category-card {
  padding: 1rem 0;
  border-bottom: 1px solid var(--ot-neutral-selected);
}

.category-card-media {
  width: 100%;
  height: 166px;
  border-radius: 8px;
}

.category-card-title {
  margin-top: 0.5rem;
  font-weight: 500;
  font-size: 16px;
  color: var(--ot-black);
}

/* Related list/cards visuals */
.article-card-media {
  width: 100%;
  height: 166px;
  border-radius: 12px;
  background-color: #f1f1f1;
}

/* Remove shadows for cards in article containers (e.g., Related Articles) */
.container-article .article-card {
  box-shadow: none;
}

/* Utilities */
.clickable {
  cursor: pointer;
}

/* Global category label: blue, uppercase, bold, no background */
.category-label {
  color: #1666c2;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.2px;
  text-decoration: none;
  /* Removed global uppercase so component helper (titleCaseCategory) controls casing.
     If a section still needs all-caps, add class "uppercase" or "category-label--uppercase". */
}

/* Optional uppercase variants (use explicitly where desired) */
.category-label.uppercase,
.category-label--uppercase {
  text-transform: uppercase;
}

.category-label:hover {
  text-decoration: underline;
}

/* Categories section – compact rows and clamped titles */
.categories-section {
  padding-top: 0;
  padding-bottom: 0;
  /* Prevent category labels row from wrapping; let extra be shown as ellipsis token */
}
.categories-section .text-nowrap {
  white-space: nowrap;
}
.categories-section {
  /* Ensure article cards within categories have stable heights */
}
.categories-section .article-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.categories-section .article-card .card-body {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  flex: 1 1 auto;
}
.categories-section {
  /* Clamp the card title to two lines to avoid stretching */
}
.categories-section .card-title a {
  font-size: 16px;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  /* Reserve space so shorter titles don’t shrink overall card height */
  min-height: 2.7em;
}
.categories-section .post-row {
  gap: 12px;
  align-items: center;
  padding: 0.75rem 0; /* slightly tighter */
}
.categories-section {
  /* Do not show a bottom border on the last (3rd) item in a category card list */
}
.categories-section .category-column .post-row:last-of-type {
  border-bottom: 0;
}
.categories-section {
  /* Smaller thumbs for the two items under the featured card */
}
.categories-section .post-row-media {
  flex: 0 0 120px;
}
.categories-section .post-row-media .thumb {
  width: 120px;
  height: 68px;
  border-radius: 8px;
}
.categories-section {
  /* Smaller, clamped titles with ellipsis */
}
.categories-section .post-row-title a {
  font-size: 13px;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.categories-section .category-card-media {
  height: 200px;
}
@media (max-width: 991.98px) {
  .categories-section .post-row-media {
    flex-basis: 110px;
  }
  .categories-section .post-row-media .thumb {
    width: 110px;
    height: 62px;
  }
  .categories-section .post-row-title a {
    font-size: 12.5px;
  }
}

/* Article subheader */
.article-subhead .date-line {
  color: var(--ot-black);
  font-weight: 500;
}
.article-subhead .paper-line {
  color: var(--ot-gray);
}
.article-subhead {
  /* Stick the date bar under the sticky header */
}
.article-subhead.sticky-subhead {
  position: sticky;
  /* Keep directly beneath the sticky header (Bootstrap sticky-top ~56px) */
  top: 56px;
  z-index: 1019; /* just under navbar's 1020 */
  background: #fff;
  padding-top: 16px; /* breathing room under header */
  padding-bottom: 16px;
}
.article-subhead .region-inline-filter {
  gap: 12px;
}
.article-subhead .region-inline-filter svg {
  color: var(--ot-gray);
}
.article-subhead .region-inline-filter .region-item {
  background: none;
  border: 0;
  /* border-bottom: 2px solid #6c757d; */
  padding: 0;
  font-size: 14px;
  font-weight: 500;
  color: #6c757d;
  cursor: pointer;
}
.article-subhead .region-inline-filter .region-item.active {
  color: var(--ot-primary, #0d6efd) !important;
  border-bottom: 2px solid var(--ot-primary, #0d6efd) !important;
}
.article-subhead .region-inline-filter {
  /* vertical dividers between items */
}
.article-subhead .region-inline-filter .region-item + .region-item {
  position: relative;
  margin-left: 14px;
}
.article-subhead .region-inline-filter .region-item + .region-item::before {
  content: "";
  position: absolute;
  left: -10px;
  top: 50%;
  transform: translateY(-50%);
  height: 18px;
  width: 1px;
  background: var(--ot-neutral-stroke-disabled);
}

.section-real-estate {
  position: relative;
  /* Primary category label: match category section weight and preserve original casing */
}
.section-real-estate .section-label {
  font-weight: 600;
}
.section-real-estate .with-divider {
  position: relative;
  padding-left: 24px;
}
.section-real-estate .with-divider .v-divider {
  position: absolute;
  left: 0;
  top: 12px;
  bottom: 12px;
  width: 1px;
  /* Match color with other dividers (see .section-line) */
  background: var(--ot-neutral-stroke-disabled);
}
@media (min-width: 992px) {
  .section-real-estate .with-divider {
    padding-left: 56px;
  }
  .section-real-estate .with-divider .v-divider {
    left: 20px;
  }
}
.section-real-estate .post-row {
  align-items: flex-start;
  gap: 20px;
  padding-top: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--ot-neutral-stroke-disabled);
}
.section-real-estate .post-row-media .thumb {
  border-radius: 8px;
}
.section-real-estate .post-list .post-row:first-child {
  padding-top: 0;
}
.section-real-estate .post-meta {
  padding-top: 15px;
  margin-bottom: 10px;
}
.section-real-estate .post-row-title a {
  font-size: 18px;
  line-height: 1.37;
}
.section-real-estate {
  /* Match category-card meta (date/location) font sizing */
}
.section-real-estate .post-row .text-muted {
  font-size: 12px;
  color: var(--ot-gray) !important;
}
.section-real-estate .post-meta {
  font-size: 12px;
}
.section-real-estate {
  /* Featured block meta (left column): date and location */
}
.section-real-estate .article-featured--sm .featured-content small,
.section-real-estate .article-featured--sm .featured-content .small {
  font-size: 12px;
  color: var(--ot-gray);
}
.section-real-estate .article-featured--sm {
  background: transparent;
}
.section-real-estate .article-featured--sm .featured-media {
  background-color: #f1f1f1;
}
.section-real-estate .article-featured--sm .featured-content {
  background: #ffffff;
  border-radius: 0 0 12px 12px;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  padding: 21px 0px;
}
.section-real-estate .article-featured--sm .featured-content > .d-flex {
  margin-bottom: 21px;
}

/* Section divider */
.section-line {
  height: 1px;
  background: var(--ot-neutral-stroke-disabled);
  margin: var(--ot-gap-xl) 0 var(--ot-gap-lg);
}

.article-pagination {
  margin-top: 35px !important;
  margin-bottom: 10px !important;
}

app-article-container footer.container-article > .mt-4 {
  margin-top: 0 !important;
}

.section-real-estate > .section-line {
  margin-top: 30px;
  margin-bottom: 25px;
}

.article-featured .featured-media,
.post-row-media .thumb,
.category-card-media,
.article-card-media {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.article-detail-body .article-title {
  font-size: 32px;
  font-weight: 700;
  color: var(--ot-black);
  line-height: normal;
}
.article-detail-body .article-summary {
  font-size: 14px;
  color: var(--ot-gray);
  transition: max-height 0.3s ease-out, opacity 0.3s ease-out, margin 0.3s ease-out;
  max-height: 200px; /* Adjust as needed */
  opacity: 1;
  margin-top: 1rem;
}
.article-detail-body .article-summary.hidden {
  max-height: 0;
  opacity: 0;
  margin-top: 0;
  overflow: hidden;
}
.article-detail-body .article-meta .meta-date {
  color: var(--ot-gray);
  font-size: 1rem;
  font-weight: 500;
}
.article-detail-body .article-meta .meta-category {
  /* Removed forced uppercase to allow dynamic Title Case / acronym preservation */
  font-weight: 600;
  font-size: 14px;
  color: #1666c2;
}
.article-detail-body .article-main-image {
  width: 100%;
  height: 432px;
  background-size: cover;
  background-position: center;
  border-radius: 12px;
}
.article-detail-body .image-caption {
  color: #7e7e7e;
  font-size: 12px;
  text-align: right;
}
.article-detail-body .content-section h2, .article-detail-body .content-section .h2 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 0.5rem;
  margin-top: 1.5rem;
}
.article-detail-body .content-section p, .article-detail-body .content-section ul {
  font-size: 14px;
  line-height: 24px;
  color: #090a0c;
}
.article-detail-body .content-section ul {
  padding-left: 1.5rem;
}

.article-sidebar {
  position: sticky;
  top: 60px;
  height: calc(100vh - 60px);
  overflow-y: auto;
}
.article-sidebar .sidebar-section {
  margin-bottom: 38px;
}
.article-sidebar .sidebar-section .section-title {
  font-size: 14px;
  color: var(--ot-gray);
  margin-bottom: 0.75rem;
  line-height: normal;
}
.article-sidebar .sidebar-section .section-content h5 {
  font-size: 14px;
  font-weight: 400;
  color: #090a0c;
  margin-bottom: 0.75rem;
}
.article-sidebar .sidebar-section .section-content .author-name {
  font-weight: 500;
  font-size: 18px;
  color: var(--ot-black);
  line-height: 24px;
  letter-spacing: -0.28px;
}
.article-sidebar .toc-list {
  list-style: none;
  padding-left: 0;
}
.article-sidebar .toc-list li {
  margin-bottom: 0.75rem;
}
.article-sidebar .toc-list li a {
  text-decoration: none;
  font-size: 14px;
  color: #090a0c;
}
.article-sidebar .toc-list li a.active {
  color: #266DF0;
  font-weight: 600;
}
.article-sidebar .share-buttons {
  display: flex;
  gap: 0.75rem;
}
.article-sidebar .share-buttons .share-btn {
  width: 40px;
  height: 40px;
  background-color: #ebebeb;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: #000;
}
.article-sidebar .share-buttons .share-btn i {
  font-size: 16px;
}
.article-sidebar .stats-section {
  border-top: 1px solid #f0f0f0;
  padding-top: 0.75rem;
  margin-top: 2rem;
}
.article-sidebar .stats-section .stat {
  font-size: 12px;
  color: #212f3f;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.article-sidebar .stats-section .stat .count {
  color: #a6acb2;
}
.article-sidebar .sidebar-actions {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}
.article-sidebar .sidebar-actions a {
  color: #212f3f;
  font-size: 20px;
}

.fim-top-button {
  background: #28a745;
  font-weight: 600;
  color: #FFFFFF;
  box-shadow: none;
}
.fim-top-button:hover {
  background: rgb(30.1449275362, 125.8550724638, 52);
  color: #FFFFFF;
}

.fim-hero-section {
  height: 45vh;
  display: flex;
  align-items: center;
  position: relative;
  background-size: cover;
  background-position: center;
}

.fim-hero-overlay {
  width: 100%;
}

.fim-hero-title {
  font-size: 2.65rem;
  line-height: 1.2;
  font-weight: 700;
}

.fim-hero-subtitle {
  font-size: 1.15rem;
  font-weight: 600;
}

@media (min-width: 1400px) {
  .fim-hero-title {
    font-size: 2.65rem;
  }
}
@media (min-width: 992px) {
  .col-lg-20p {
    width: 20%;
  }
}
.service-card {
  border: 1px solid #ddd;
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.2s;
  min-height: 60px;
  max-height: 200px;
  display: flex;
  align-items: center;
}

.service-card:hover {
  transform: translateY(-5px);
}

.service-card img {
  height: 150px;
  object-fit: cover;
}

.service-title {
  font-size: 0.9rem;
  font-weight: 600;
  padding: 0.75rem;
  background: white;
}

.service-list {
  list-style: none;
  padding: 0;
}
.service-list li {
  position: relative;
  padding-left: 1.75rem;
  margin-bottom: 8px;
}
.service-list li::before {
  content: "›";
  position: absolute;
  left: 0.75rem;
  color: #198754;
  font-weight: bold;
}

.stats-item i {
  margin-right: 0.5rem;
  color: #28a745;
}

.newsletter-section {
  padding: 3rem 0;
}

.footer-link {
  color: #6c757d;
  text-decoration: none;
  margin-bottom: 1rem;
  display: block;
}

.footer-link:hover {
  color: #495057;
}

.social-icon {
  font-size: 24px;
  color: #266DF0;
  text-decoration: none;
}

.autocomplete-control {
  position: relative;
}
.autocomplete-control .clear-icon {
  position: absolute;
  right: 15px;
  top: 30%;
  transform: translateY(-50%);
  color: #6c757d;
}
.autocomplete-control .clear-icon {
  cursor: pointer;
  color: #dc3545;
  transition: color 0.2s ease;
}
.autocomplete-control .clear-icon:hover {
  color: #c82333;
}

.autocomplete-results {
  position: absolute;
  left: 0;
  right: 0;
  max-height: 70vh;
  overflow-y: auto;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  background: #f8f9fa;
  /* Custom scrollbar */
}
.autocomplete-results::-webkit-scrollbar {
  width: 8px;
}
.autocomplete-results::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}
.autocomplete-results::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 4px;
}
.autocomplete-results::-webkit-scrollbar-thumb:hover {
  background: #a8a8a8;
}
.autocomplete-results .result-item {
  padding: 15px;
  border-bottom: 1px solid #e0e0e0;
  background: white;
  margin: 8px;
  border-radius: 6px;
  transition: all 0.2s ease;
  cursor: pointer;
}
.autocomplete-results .result-item:hover {
  background: #f0f8ff;
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.autocomplete-results .result-item:last-child {
  border-bottom: none;
}
.autocomplete-results .result-title {
  font-weight: 600;
  color: #2c3e50;
  margin-bottom: 8px;
}
.autocomplete-results .result-description {
  color: #6c757d;
  font-size: 0.9em;
  line-height: 1.4;
}
.autocomplete-results .result-meta {
  font-size: 0.8em;
  color: #999;
  margin-top: 8px;
  display: flex;
  justify-content: space-between;
}
.autocomplete-results .no-results {
  text-align: center;
  padding: 40px 20px;
  color: #6c757d;
}
.autocomplete-results .loading {
  text-align: center;
  padding: 20px;
}

.site--fim .ot-header {
  padding: 0;
  background: #fff;
  top: 55px;
}
.site--fim .ot-sub-header {
  top: 105px;
}
.site--fim .ot-content {
  border-top: none;
  position: relative;
  top: 0;
}
.site--fim .ot-content .ot-content-right {
  height: 100%;
  overflow: visible;
}
.site--fim .ot-content .ot-content-right .ot-section-menu {
  top: 105px;
}
.site--fim .ot-content .ot-content-left {
  height: 100%;
  overflow: visible;
}
.site--fim .ot-content .ot-content-left .ot-section-menu {
  top: 105px;
}
@media (max-width: 993px) {
  .site--fim .ot-header {
    padding-bottom: 20px;
  }
  .site--fim .ot-content {
    top: 0;
  }
  .site--fim .wrap-ot-content-form {
    height: auto;
    padding-bottom: 20px;
  }
}
.site--fim .nav-link {
  border-bottom: none !important;
  margin: 0 !important;
}

.wrapper-job-momo .btn-recruiter,
.wrapper-job-momo .btn-login,
.wrapper-job-momo .btn-register {
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
  padding: 8.5px;
  min-width: 100px;
}
.wrapper-job-momo .btn-recruiter {
  background-color: #03ae03;
  color: #fff;
}
.wrapper-job-momo .text-truncate-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.wrapper-job-momo .job-carousel {
  overflow-x: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}
.wrapper-job-momo .job-carousel::-webkit-scrollbar {
  height: 8px;
}
.wrapper-job-momo .job-carousel::-webkit-scrollbar-track {
  background: #f1f1f1;
}
.wrapper-job-momo .job-carousel::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}
.wrapper-job-momo .job-carousel .job-item {
  display: inline-block;
  width: 20%;
  white-space: normal;
  vertical-align: top;
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
  overflow: hidden;
}
.wrapper-job-momo .job-carousel .job-item-img {
  height: 140px;
  object-fit: cover;
}
.wrapper-job-momo .job-carousel .business-logo {
  width: 64px;
  height: 64px;
  background: #fff;
  border-radius: 8px;
  position: absolute;
  bottom: 50%;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 4px solid #eee;
}
.wrapper-job-momo .job-carousel .business-logo img {
  max-width: 56px;
}
.wrapper-job-momo .job-carousel .job-item-title {
  height: 34px;
}
.wrapper-job-momo .job-listing .job-listing-logo {
  width: 115px;
  height: 115px;
  object-fit: cover;
}
.wrapper-job-momo .job-listing .btn-icon {
  background: none;
  border: none;
  color: #6c757d;
  cursor: pointer;
  padding: 4px;
}
.wrapper-job-momo .job-listing .btn-icon:hover {
  color: #495057;
}
.wrapper-job-momo .job-info .job-card {
  background: white;
}
.wrapper-job-momo .job-info .company-card {
  background: white;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  border: 1px solid #dddddd;
}
.wrapper-job-momo .job-info .company-banner {
  max-height: 190px;
  overflow: hidden;
  border-radius: 12px 12px 0 0;
  position: relative;
}
.wrapper-job-momo .job-info .company-banner .job-info-img {
  object-fit: contain;
  width: 100%;
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}
.wrapper-job-momo .job-info .company-logo {
  width: 100px;
  height: 100px;
  background: #fff;
  border-radius: 8px;
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 4px solid #eee;
}
.wrapper-job-momo .job-info .company-logo img {
  max-width: 70px;
}
.wrapper-job-momo .job-info .btn-apply {
  background-color: #0d6efd;
  color: white;
  font-weight: 600;
  padding: 12px;
  border-radius: 8px;
  border: none;
  width: 100%;
}
.wrapper-job-momo .job-info .btn-apply:hover {
  background-color: #0b5ed7;
}
.wrapper-job-momo .job-info .salary-badge {
  color: #0d6efd;
  font-weight: 600;
  font-size: 0.95rem;
}
.wrapper-job-momo .job-info .info-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.9rem;
  color: #6c757d;
}
.wrapper-job-momo .job-info .job-info-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
.wrapper-job-momo .job-info .info-box {
  display: flex;
  gap: 12px;
}
.wrapper-job-momo .job-info .info-box i {
  color: #6c757d;
  font-size: 1.1rem;
}
.wrapper-job-momo .job-info .similar-job-card {
  background: white;
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 12px;
  display: flex;
  gap: 15px;
  align-items: center;
  border: 1px solid #e9ecef;
  transition: all 0.2s;
}
.wrapper-job-momo .job-info .similar-job-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
.wrapper-job-momo .job-info .job-logo {
  width: 60px;
  height: 60px;
  background: #1a1a2e;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.wrapper-job-momo .job-info .company-info-item {
  display: flex;
  gap: 8px;
  padding: 8px 0;
}
.wrapper-job-momo .job-info .company-info-item i {
  color: #6c757d;
}
.wrapper-job-momo .job-info .company-name {
  font-weight: 500;
  font-size: 20px;
}
.wrapper-job-momo .job-info .section-title {
  font-size: 1.1rem;
  font-weight: 600;
  margin-bottom: 15px;
}

.wrapper-cpl {
  --primary-color-cpl: #1a7bea;
  --text-dark-cpl: #1a1a1a;
  --text-gray-cpl: #6c757d;
  --border-color-cpl: #e9ecef;
}
.wrapper-cpl .text-primary {
  color: var(--primary-color-cpl);
}
.wrapper-cpl .navbar-brand {
  font-weight: 700;
  font-size: 1.2rem;
}
.wrapper-cpl .breadcrumb-cpl {
  background: transparent;
  padding: 1.5rem 0;
  font-size: 0.875rem;
  margin-bottom: 0;
}
.wrapper-cpl .ad-banner {
  border: 1px solid #eaeaea;
  text-align: center;
  margin: 20px auto;
  max-width: 728px;
  display: block;
}
.wrapper-cpl .hero-section-cpl {
  margin-bottom: 30px;
}
.wrapper-cpl .hero-section-cpl h1 {
  font-weight: 700;
  margin-bottom: 10px;
}
.wrapper-cpl .hero-section-cpl p {
  color: #6c757d;
  margin-bottom: 30px;
}
.wrapper-cpl .category-card {
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: 8px;
  padding: 20px 20px 0 20px;
  margin-bottom: 20px;
  height: 100%;
}
.wrapper-cpl .category-card h5 {
  font-weight: 600;
  margin-bottom: 15px;
  font-size: 1rem;
  border-bottom: 1px solid #eee;
  padding-bottom: 15px;
}
.wrapper-cpl .category-card a {
  display: block;
  color: #495057;
  text-decoration: none;
  padding: 6px 0;
  font-size: 0.9rem;
}
.wrapper-cpl .category-card a:hover {
  color: var(--primary-color-cpl);
}
.wrapper-cpl {
  /* lg to xl */
}
@media (min-width: 992px) {
  .wrapper-cpl .cpl-sidebar--fixed {
    position: sticky;
    top: 60px;
    overflow-y: auto;
    height: calc(100vh - 170px);
  }
}
.wrapper-cpl .location-sidebar {
  background: #fff;
  border: 1px solid #e9ecef;
  padding: 15px;
}
.wrapper-cpl .location-value {
  font-size: 0.92rem;
}
.wrapper-cpl .location-item {
  display: flex;
  justify-content: space-between;
  padding: 10px 0;
  border-bottom: 1px solid #f1f3f5;
  color: var(--text-dark-cpl);
  cursor: pointer;
}
.wrapper-cpl .location-item .item-area {
  font-weight: 500;
  font-size: 1.05rem;
}
.wrapper-cpl .location-item:hover {
  background: #f8f9fa;
}
.wrapper-cpl .location-count {
  color: #adb5bd;
  font-size: 0.9rem;
}
.wrapper-cpl .news-card {
  border: 1px solid #e9ecef;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 20px;
  background: #fff;
}
.wrapper-cpl .news-card img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}
.wrapper-cpl .news-card-body {
  padding: 20px;
}
.wrapper-cpl .news-meta {
  color: var(--primary-color-cpl);
  font-size: 0.85rem;
  margin-bottom: 10px;
}
.wrapper-cpl .news-card h5 {
  font-weight: 600;
  font-size: 1rem;
  margin-bottom: 10px;
}
.wrapper-cpl .news-source {
  color: #6c757d;
  font-size: 0.85rem;
}
.wrapper-cpl .section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 40px 0 20px 0;
}
.wrapper-cpl .cpl-info .tab-navigation {
  margin-bottom: 2rem;
  padding: 5px;
  border-radius: 15px;
  background: #f4f4f4;
  display: flex;
}
.wrapper-cpl .cpl-info .tab-btn {
  border: none;
  background: transparent;
  padding: 1rem 2rem;
  color: var(--text-gray-cpl);
  font-weight: 500;
  position: relative;
  flex: 1 0 0;
  border-radius: 12px;
}
.wrapper-cpl .cpl-info .tab-btn.active {
  color: var(--text-dark-cpl);
  background: #fff;
}
.wrapper-cpl .cpl-info .verified-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: #e7f3ff;
  color: var(--primary-color-cpl);
  padding: 0.25rem 0.75rem;
  border-radius: 20px;
  font-size: 0.875rem;
  font-weight: 500;
}
.wrapper-cpl .cpl-info .contact-card {
  position: sticky;
  top: 60px;
}
.wrapper-cpl .cpl-info .contact-card .card {
  border-radius: 8px;
  border: 1px solid var(--border-color-cpl);
}
.wrapper-cpl .cpl-info .info-item {
  display: flex;
  gap: 0.5rem;
  font-size: 0.875rem;
  margin-bottom: 0.5rem;
  align-items: baseline;
}
.wrapper-cpl .cpl-info .info-item i {
  color: var(--primary-color-cpl);
}
.wrapper-cpl .cpl-info .status-indicator {
  width: 8px;
  height: 8px;
  background: #28a745;
  border-radius: 50%;
}
.wrapper-cpl .cpl-info .form-control,
.wrapper-cpl .cpl-info .form-control:focus {
  border: 1px solid var(--border-color-cpl);
  padding: 0.75rem;
}
.wrapper-cpl .cpl-info .btn-request {
  background: var(--primary-color-cpl);
  color: white;
  width: 100%;
  padding: 0.75rem;
  border: none;
  border-radius: 6px;
  font-weight: 500;
}
.wrapper-cpl .cpl-info .btn-request:hover {
  background: var(--primary-color-cpl);
  color: white;
}
.wrapper-cpl .cpl-info .service-list {
  list-style: none;
  padding: 0;
}
.wrapper-cpl .cpl-info .service-list li {
  padding: 0.5rem 0;
  position: relative;
  padding-left: 1.25rem;
}
.wrapper-cpl .cpl-info .service-list li::before {
  content: "■";
  color: var(--primary-color-cpl);
  margin-left: -0.75rem;
  margin-top: -1px;
}
.wrapper-cpl .cpl-info .event-card {
  border: 1px solid var(--border-color-cpl);
  border-radius: 8px;
  padding: 1.5rem;
  margin-bottom: 1rem;
}
.wrapper-cpl .cpl-info .event-tag {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
  background: #f0f4ff;
  position: relative;
  color: var(--primary-color-cpl);
  padding: 10px 30px;
  border-radius: 20px;
}
.wrapper-cpl .cpl-info .event-tag::before {
  content: "●";
  color: var(--primary-color-cpl);
  display: inline-block;
  margin-right: 8px;
}
.wrapper-cpl .cpl-info .btn-register {
  background: var(--primary-color-cpl);
  color: white;
  border: none;
  padding: 0.5rem 1.5rem;
  border-radius: 6px;
  font-weight: 500;
}
.wrapper-cpl .cpl-info .job-card {
  border: 1px solid var(--border-color-cpl);
  border-radius: 8px;
  padding: 1.5rem;
  margin-bottom: 1rem;
}
.wrapper-cpl .cpl-info .btn-apply {
  background: var(--primary-color-cpl);
  color: white;
  border: none;
  padding: 0.5rem 2rem;
  border-radius: 6px;
  font-weight: 500;
}
.wrapper-cpl .cpl-info .location-section {
  padding: 1.5rem;
  margin-top: 1rem;
}
.wrapper-cpl .cpl-info .location-icon {
  font-size: 2rem;
  color: var(--text-gray-cpl);
  margin-bottom: 0.5rem;
}
.wrapper-cpl .cpl-info .share-btn {
  background: var(--primary-color-cpl);
  color: white;
  border: none;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wrapper-cpl .cpl-category .filter-section select {
  padding: 0.75rem;
  border: 1px solid #ddd;
  border-radius: 4px;
}
.wrapper-cpl .cpl-category .card {
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  margin-bottom: 2rem;
}
.wrapper-cpl .cpl-category .card-img-top {
  width: 150px;
  object-fit: cover;
  border-radius: 8px 8px 0 0;
  margin: 10px auto;
  border: 1px solid #eee;
}
.wrapper-cpl .cpl-category .btn-call {
  background-color: var(--primary-color-cpl);
  color: white;
  width: 100%;
  padding: 0.75rem;
  border: none;
  border-radius: 4px;
  font-weight: 500;
}
.wrapper-cpl .cpl-category .btn-call:hover {
  background-color: var(--primary-color-cpl);
}
.wrapper-cpl .cpl-category .info-item {
  display: flex;
  align-items: center;
  padding: 0.5rem 0;
  font-weight: 600;
  overflow: hidden;
}
.wrapper-cpl .cpl-category .info-item i {
  margin-right: 0.5rem;
  color: var(--primary-color-cpl);
  font-weight: 500;
}
.wrapper-cpl .cpl-category .info-title {
  font-weight: 600;
  color: #666;
}
.wrapper-cpl .cpl-category .review-score {
  font-size: 1.5rem;
  font-weight: 700;
  color: #333;
}
.wrapper-cpl .cpl-category .service-list-cpl {
  list-style: none;
  padding: 0;
}
.wrapper-cpl .cpl-category .service-list-cpl li {
  padding: 0.25rem 0;
  font-size: 0.9rem;
}
.wrapper-cpl .cpl-category .b2b-link {
  color: var(--primary-color-cpl);
  text-decoration: none;
  font-weight: 500;
}
.wrapper-cpl .cpl-category .section-title {
  font-size: 1.75rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}
.wrapper-cpl .cpl-category .section-subtitle {
  color: #666;
  margin-bottom: 2rem;
}
.wrapper-cpl .cpl-category ul.other-category {
  padding-left: 0;
  list-style: none;
}
.wrapper-cpl .cpl-category ul.other-category li::before {
  content: "●";
  color: var(--primary-color-cpl);
  display: inline-block;
  margin-right: 8px;
}

/* ─── List View Standard — Page list component ─── */
/* Applied via ViewEncapsulation.None so it can style host + parent elements */
/* ─── Parent containers: make full-height flex layout ─── */
/* Ensures toolbar stays top, table scrolls, pager stays bottom */
.main-container:has(.page-list) {
  display: flex !important;
  flex-direction: column;
  height: 100vh;
  overflow: hidden;
  width: 100% !important;
  max-width: 100vw !important;
  box-sizing: border-box !important;
  min-width: 0;
}
.main-container:has(.page-list) > div {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  width: 100%;
  box-sizing: border-box;
}
.main-container:has(.page-list) .wrap-main-page {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  width: 100%;
  align-items: stretch !important;
  box-sizing: border-box;
}
.main-container:has(.page-list) .wrap-main-page > div {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  width: 100%;
  box-sizing: border-box;
}
.main-container:has(.page-list) .portal-main-content:has(.page-list) {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  width: 100%;
  box-sizing: border-box;
}
.main-container:has(.page-list) .portal-main-content:has(.page-list) > :not(router-outlet):not(app-ad-render) {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  width: 100%;
  box-sizing: border-box;
}

/* ─── Host: take full flex space ─── */
.page-list {
  display: flex;
  flex-direction: column;
  flex: 1;
  overflow: hidden;
  min-width: 0;
  min-height: 0;
  width: 100%;
  align-self: stretch;
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 13px;
  color: var(--text);
  -webkit-font-smoothing: antialiased;
  line-height: 20px;
}

/* ─── Bulk bar ─── */
.bulk-bar {
  display: none;
  height: 40px;
  align-items: center;
  gap: 8px;
  padding: 0 24px;
  background: var(--brand-bg);
  border-bottom: 1px solid var(--brand-bd);
  flex-shrink: 0;
}

.bulk-bar.show {
  display: flex;
}

.bulk-count {
  font-size: 12px;
  font-weight: 600;
  color: var(--brand);
}

.bulk-sp {
  flex: 1;
}

.bbtn {
  height: 26px;
  padding: 0 10px;
  border-radius: 4px;
  border: 1px solid var(--border-strong);
  background: var(--surface);
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  color: var(--t2);
  transition: all 80ms var(--ease);
}

.bbtn:hover {
  background: var(--raised);
}

.bbtn.del {
  color: var(--red);
  border-color: #fecaca;
}

.bbtn.del:hover {
  background: var(--red-bg);
}

/* ─── Breadcrumb bar ─── */
.toolbar-head {
  margin-top: 10px;
  display: flex;
  align-items: center;
  padding: 0 16px;
  background: var(--surface);
  flex-shrink: 0;
}

.gbar-bc {
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 600;
  min-width: 0;
}

.bc-s {
  color: var(--text);
  cursor: pointer;
  transition: color 80ms;
  white-space: nowrap;
}

.bc-s:hover {
  opacity: 0.8;
}

.bc-d {
  color: var(--t4);
  margin: 0 8px;
  font-size: 14px;
}

.bc-cur {
  color: var(--text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.bc-eq {
  color: var(--text);
  font-weight: 600;
  white-space: nowrap;
}

.bc-tail {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ─── Toolbar ─── */
.toolbar {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 16px;
  background: var(--surface);
  flex-shrink: 0;
}

.toolbar-l,
.toolbar-r {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.tag-filter-inline {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 220px;
  max-width: 360px;
}

.tag-filter-inline app-organization-tag-multiple-form-field {
  display: block;
  min-width: 0;
}

/* Search */
.s-wrap {
  position: relative;
  flex: 0 0 260px;
}

.s-wrap > svg {
  position: absolute;
  left: 9px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--t3);
  pointer-events: none;
}

.s-inp {
  width: 100%;
  height: 32px;
  padding: 0 28px 0 30px;
  border: 1px solid var(--border-strong);
  border-radius: 5px;
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 12px;
  color: var(--text);
  background: var(--surface);
  outline: none;
  transition: border-color 120ms var(--ease), box-shadow 120ms;
}

.s-inp:focus {
  border-color: var(--brand);
  box-shadow: 0 0 0 3px rgba(10, 78, 244, 0.08);
}

.s-inp::placeholder {
  color: var(--t4);
}

.s-clear {
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  background: none;
  cursor: pointer;
  color: var(--t3);
  padding: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
}

.s-clear:hover {
  background: var(--raised);
  color: var(--text);
}

/* Toolbar buttons */
.tbtn {
  height: 32px;
  width: 32px;
  border: 1px solid var(--border-strong);
  border-radius: 5px;
  background: var(--surface);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--t3);
  transition: all 80ms var(--ease);
}

.tbtn:hover {
  background: var(--raised);
  color: var(--t2);
}

.tbtn-inline {
  border: none;
  background: none;
  cursor: pointer;
  color: var(--t3);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2px;
  border-radius: 4px;
  transition: all 80ms var(--ease);
}

.tbtn-inline:hover {
  background: var(--raised);
  color: var(--text);
}

/* View toggle */
.vt {
  display: flex;
  border: 1px solid var(--border-strong);
  border-radius: 5px;
  overflow: hidden;
}

.vt-b {
  height: 32px;
  min-width: 32px;
  padding: 0 8px;
  border: none;
  background: var(--surface);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--t3);
  transition: all 80ms var(--ease);
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 12px;
  font-weight: 500;
  white-space: nowrap;
}

.vt-b + .vt-b {
  border-left: 1px solid var(--border);
}

.vt-b:hover {
  background: var(--raised);
  color: var(--t2);
}

.vt-b.on {
  background: var(--brand-bg);
  color: var(--brand);
}

/* IE button */
.ie-btn {
  height: 32px;
  padding: 0 11px;
  border: 1px solid var(--border-strong);
  border-radius: 5px;
  background: var(--surface);
  cursor: pointer;
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 12px;
  font-weight: 500;
  color: var(--t2);
  display: flex;
  align-items: center;
  gap: 5px;
  transition: all 80ms var(--ease);
  white-space: nowrap;
  text-decoration: none;
}

.ie-btn:hover {
  background: var(--raised);
  color: var(--text);
}

select.ie-btn {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 16 16' fill='none' stroke='%23a3a3a3' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  padding-right: 24px;
}

.saved-view-select {
  min-width: 160px;
  cursor: pointer;
}

/* Add button */
.add-btn {
  height: 32px;
  padding: 0 13px;
  border-radius: 5px;
  border: none;
  background: var(--brand);
  color: #fff;
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 5px;
  transition: all 80ms var(--ease);
  box-shadow: 0 1px 3px rgba(10, 78, 244, 0.25);
}

.add-btn:hover {
  background: var(--brand-dk);
  box-shadow: 0 2px 6px rgba(10, 78, 244, 0.3);
}

.add-btn:active {
  transform: scale(0.98);
}

/* ─── Filter pills ─── */
.filter-pills {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 8px 24px;
  flex-wrap: wrap;
  flex-shrink: 0;
}

.contact-alphabet {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 0 24px 8px;
  flex-wrap: wrap;
  flex-shrink: 0;
}

.contact-alphabet button {
  min-width: 24px;
  height: 24px;
  padding: 0 5px;
  border: 1px solid transparent;
  border-radius: 5px;
  background: transparent;
  color: var(--t2);
  font-size: 11px;
  font-weight: 600;
  line-height: 22px;
  cursor: pointer;
  transition: background 80ms var(--ease), color 80ms var(--ease), border-color 80ms var(--ease);
}

.contact-alphabet button:hover,
.contact-alphabet button:focus-visible {
  color: var(--brand);
  border-color: var(--brand-bd);
  background: var(--brand-bg);
  outline: none;
}

.contact-alphabet button.on {
  color: var(--brand);
  border-color: var(--brand-bd);
  background: var(--brand-bg);
}

.contact-alphabet-all {
  margin-right: 3px;
  padding-inline: 8px !important;
  border-color: var(--border) !important;
}

.fp {
  height: 24px;
  padding: 0 10px;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: var(--surface);
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 12px;
  color: var(--t2);
  cursor: default;
  display: flex;
  align-items: center;
  gap: 4px;
  transition: all 80ms var(--ease);
  white-space: nowrap;
}

.fp.on {
  background: var(--brand-bg);
  color: var(--brand);
  border-color: var(--brand-bd);
}

.fp-x {
  cursor: pointer;
  opacity: 0.6;
  font-size: 10px;
  margin-left: 2px;
}

.fp-x:hover {
  opacity: 1;
}

.fp-value {
  font-weight: 600;
}

/* ─── Map view ─── */
.map-view {
  padding: 16px 24px;
}

#page-list-map-canvas {
  width: 100%;
  height: 600px;
  border-radius: 8px;
}

.map-state {
  text-align: center;
  color: var(--t3);
  padding: 24px;
}

/* ─── Bulk actions ─── */
.bulk-spinner {
  margin-right: 4px;
}

/* ─── TABLE ─── */
.tw {
  flex: 1;
  overflow-y: auto;
  overflow-x: auto;
  background: var(--surface);
  min-height: 0;
}

.page-list table {
  border-collapse: collapse;
  table-layout: fixed;
  min-width: 100%;
}

.page-list table.crm-list-table {
  width: 100%;
}

.page-list .crm-list-table thead th,
.page-list .crm-list-table thead th * {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.page-list .crm-list-table .cell-wrap {
  display: block;
  -webkit-line-clamp: unset;
  line-clamp: unset;
  -webkit-box-orient: initial;
  overflow: visible;
  text-overflow: clip;
  max-height: none;
}

.page-list .crm-list-table .cell-wrap,
.page-list .crm-list-table .cell-wrap * {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  word-break: break-word;
  -webkit-line-clamp: unset;
  line-clamp: unset;
  max-height: none;
}
.page-list .crm-list-table app-tag,
.page-list .crm-list-table app-tag * {
  max-width: 100%;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.page-list thead th {
  position: sticky;
  top: 0;
  z-index: 4;
  padding: 0 10px;
  height: 34px;
  font-size: 12px;
  font-weight: 600;
  color: var(--t3);
  text-align: left;
  background: var(--raised);
  border-bottom: 1px solid var(--border-strong);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  user-select: none;
  cursor: pointer;
  transition: color 80ms;
}

.page-list thead th:hover {
  color: var(--t2);
}

.page-list thead th.sorted {
  color: var(--text);
}

.page-list thead th:first-child {
  padding-left: 14px;
}

.sa {
  opacity: 0.35;
  font-size: 10px;
  margin-left: 2px;
}

.page-list thead th.sorted .sa {
  opacity: 1;
  color: var(--brand);
}

.select-col {
  width: 90px;
}

.select-col.favorite-select-col {
  width: 64px;
}

.avatar-col {
  width: 46px;
  text-align: center;
}

.page-list .crm-list-table .notes-column {
  width: 200px;
}

.page-list td.avatar-col .cavatar {
  margin: 0 auto;
}

.select-head {
  display: flex;
  align-items: center;
  gap: 5px;
}

.page-list-check {
  width: 13px;
  height: 13px;
  accent-color: var(--brand);
  cursor: pointer;
}

.row-check {
  flex-shrink: 0;
}

.page-list tbody tr {
  border-bottom: 1px solid var(--border);
  cursor: pointer;
  transition: background 60ms;
}

.page-list tbody tr:last-child {
  border-bottom: none;
}

.page-list tbody tr:hover {
  background: #f8f9fb;
}

.page-list tbody tr:hover .ra {
  opacity: 1;
}

.page-list tbody tr.sel {
  background: var(--brand-bg);
}

.page-list td {
  padding: 12px 10px;
  font-size: 13px;
  color: var(--text);
  vertical-align: middle;
  line-height: 1.4;
  border-bottom: 1px solid var(--border);
}

.cell-wrap {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  word-break: break-word;
  max-height: 4.2em;
}

.page-list td:first-child {
  padding-left: 14px;
}

td.num {
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
  color: var(--t3);
  width: 42px;
  text-align: center;
}

/* Row controls */
.rctrl {
  display: flex;
  align-items: center;
  gap: 5px;
}

.fav {
  width: 20px;
  height: 20px;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--t4);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: color 80ms;
  flex-shrink: 0;
  border-radius: 4px;
}

.fav:hover {
  color: #d97706;
  background: var(--hover);
}

.fav.on {
  color: #d97706;
}

.cavatar {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: border-color 80ms;
  overflow: hidden;
  background: rgba(38, 109, 240, 0.06);
}

.cavatar-initials {
  color: var(--text);
  font-size: 11px;
  font-weight: 600;
}

.cavatar-red {
  background: #f44336;
  color: #fff;
}

.cavatar-pink {
  background: #e91e63;
  color: #fff;
}

.cavatar-purple {
  background: #9c27b0;
  color: #fff;
}

.cavatar-indigo {
  background: #3f51b5;
  color: #fff;
}

.cavatar-blue {
  background: #03a9f4;
  color: #222;
}

.cavatar-teal {
  background: #009688;
  color: #fff;
}

.cavatar-green {
  background: #8bc34a;
  color: #222;
}

.cavatar-yellow {
  background: #ffeb3b;
  color: #222;
}

.cavatar-orange {
  background: #ff9800;
  color: #222;
}

.cavatar-brown {
  background: #795548;
  color: #fff;
}

.cavatar-img {
  border-radius: 50%;
  object-fit: cover;
}

.page-list tbody tr:hover .cavatar {
  border-color: var(--border-strong);
}

.muted-placeholder {
  color: var(--t4);
}

.empty-row {
  text-align: center;
  padding: 40px 0;
  color: var(--t3);
}

/* Row actions (always visible) */
.ra {
  display: flex;
  gap: 4px;
  align-items: center;
}

.ra-b {
  width: 32px;
  height: 32px;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--surface);
  cursor: pointer;
  color: var(--t2);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 80ms var(--ease);
}

.ra-b svg {
  width: 14px !important;
  height: 14px !important;
}

.ra-b:hover {
  background: var(--raised);
  color: var(--text);
  border-color: var(--border-strong);
}

.ra-b.del:hover {
  background: var(--red-bg);
  color: var(--red);
  border-color: #fecaca;
}

/* ─── PAGER ─── */
.pager {
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 24px;
  gap: 12px;
  background: var(--surface);
  border-top: 1px solid var(--border);
  flex-shrink: 0;
}

.pinfo {
  font-size: 12px;
  color: var(--t3);
}

.pp {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  color: var(--t3);
}

.pp select {
  height: 26px;
  padding: 0 6px;
  border: 1px solid var(--border-strong);
  border-radius: 4px;
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 12px;
  color: var(--text);
  background: var(--surface);
  cursor: pointer;
  outline: none;
  transition: border-color 80ms;
}

.pp select:focus {
  border-color: var(--brand);
}

.pnav {
  display: flex;
  align-items: center;
  gap: 3px;
}

.pbtn {
  height: 26px;
  padding: 0 9px;
  border: 1px solid var(--border-strong);
  border-radius: 4px;
  background: var(--surface);
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 12px;
  color: var(--t2);
  cursor: pointer;
  transition: all 80ms;
  display: flex;
  align-items: center;
}

.pbtn:hover {
  background: var(--raised);
}

.pbtn.off {
  opacity: 0.35;
  pointer-events: none;
}

.pnum {
  width: 26px;
  height: 26px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: all 80ms;
  color: var(--t2);
}

.pnum:hover {
  background: var(--raised);
}

.pnum.on {
  background: var(--brand);
  color: #fff;
}

.page-gap {
  font-size: 12px;
  color: var(--t3);
  padding: 0 2px;
}

/* ─── Badges ─── */
.badge {
  display: inline-flex;
  align-items: center;
  font-size: 12px;
  font-weight: 500;
  padding: 3px 9px;
  border-radius: 4px;
  white-space: nowrap;
}

.badge.brand {
  background: var(--brand-bg);
  color: var(--brand);
}

.badge.green {
  background: var(--green-bg);
  color: var(--green);
}

.badge.amber {
  background: var(--amber-bg);
  color: var(--amber);
}

.badge.red {
  background: var(--red-bg);
  color: var(--red);
}

.badge.neutral {
  background: var(--raised);
  color: var(--t2);
  border: 1px solid var(--border);
}

/* ─── Override page-header and bottom-pagination that were used before ─── */
.page-list .page-header {
  display: none !important;
}

.page-list .page-content {
  display: none !important;
}

.page-list .bottom-pagination {
  display: none !important;
}

@media (min-width: 1500px) {
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active > .portal-main-content.chat-panel-visible {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto !important;
    width: calc(100% - 480px) !important;
    max-width: calc(100% - 480px);
    overflow: visible;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active > .col-sb-chat {
    display: block !important;
    flex: 0 0 480px !important;
    width: 480px !important;
    min-width: 480px;
    max-width: 480px;
    box-sizing: border-box;
    overflow: hidden;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active:has(.chat-search-panel-open) > .portal-main-content.chat-panel-visible {
    width: calc(100% - 760px) !important;
    max-width: calc(100% - 760px);
    overflow: visible;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active:has(.chat-search-panel-open) > .col-sb-chat {
    flex: 0 0 760px !important;
    width: 760px !important;
    min-width: 760px;
    max-width: 760px;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active:has(.chat-search-panel-open) .chat-search-panel-open .ai-box-right,
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active:has(.chat-search-panel-open) .chat-search-panel-open .ai-box-search {
    flex: 0 0 292px;
    max-width: 292px;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active .page-list {
    min-width: 0;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active .page-list .toolbar {
    height: auto;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 12px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active .page-list .toolbar-l,
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active .page-list .toolbar-r {
    width: 100%;
    flex-wrap: wrap;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active .page-list .toolbar-l {
    flex: 1 1 320px;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active .page-list .toolbar-r {
    flex: 1 1 100%;
    justify-content: flex-start;
    gap: 8px;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active .page-list .toolbar-r > * {
    flex: 0 0 auto;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active .page-list .s-wrap {
    flex: 1 1 220px;
    min-width: 0;
    max-width: 320px;
  }
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active .page-list .filter-pills,
  .main-container:has(.page-list) .wrap-main-page.chat-panel-active .page-list .pager {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.directories-container .directory-services {
  list-style: none;
  padding: 0;
  margin-bottom: 0;
}
.directories-container .directory-services li {
  position: relative;
  padding-left: 1.75rem;
  margin-bottom: 3px;
}
.directories-container .directory-services li::before {
  content: "›";
  position: absolute;
  left: 0.75rem;
  color: #266DF0;
  font-weight: bold;
}

.new-user-welcome {
  margin-top: 12rem;
}

/* Variables */
/* ─── Override NgbModal container when it wraps our dialog ─── */
app-contact-act-dialog,
app-job-request-act-dialog,
app-contact-act-address,
app-contact-act-related,
app-contact-act-related-account,
app-contact-act-related-property,
app-account-act-address,
app-account-act-related,
app-account-act-related-contact,
app-account-act-related-property,
app-property-act-related-contact,
app-property-act-related-account,
app-account-setting-profile-property-act-dialog,
app-property-act-owner,
app-property-act-manager,
app-property-act-unit,
app-property-act-unit-type,
app-property-act-address,
app-lease-act-dialog,
app-note-dialog,
app-admin-food-allergy-act-dialog,
app-admin-food-dish-act-dialog,
app-admin-food-ingredient-act-dialog,
app-admin-food-restaurant-act-dialog,
app-admin-flights-airline-act-dialog,
app-admin-flights-seat-act-dialog,
app-admin-flights-departure-act-dialog,
app-admin-stay-sunlight-act-dialog,
app-admin-stay-floor-act-dialog {
  display: flex;
  flex-direction: column;
  height: 100%;
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 13px;
  color: var(--text);
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
}

/* Remove the default padding-bottom that scrollable modal adds */
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-contact-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-job-request-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-contact-act-address),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-contact-act-related),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-contact-act-related-account),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-contact-act-related-property),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-account-act-address),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-account-act-related),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-account-act-related-contact),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-account-act-related-property),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-property-act-related-contact),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-property-act-related-account),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-account-setting-profile-property-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-property-act-owner),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-property-act-manager),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-property-act-unit),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-property-act-unit-type),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-property-act-address),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-lease-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-note-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-admin-food-allergy-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-admin-food-dish-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-admin-food-ingredient-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-admin-food-restaurant-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-admin-flights-airline-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-admin-flights-seat-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-admin-flights-departure-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-admin-stay-sunlight-act-dialog),
ngb-modal-window .modal-dialog-scrollable .modal-content:has(app-admin-stay-floor-act-dialog) {
  padding-bottom: 0;
  background: #fff;
}

/* Hide the auto-positioned footer from scrollable modal */
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-contact-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-contact-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-job-request-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-job-request-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-contact-act-address),
ngb-modal-window .modal-dialog-scrollable app-contact-act-address ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-contact-act-related),
ngb-modal-window .modal-dialog-scrollable app-contact-act-related ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-contact-act-related-account),
ngb-modal-window .modal-dialog-scrollable app-contact-act-related-account ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-contact-act-related-property),
ngb-modal-window .modal-dialog-scrollable app-contact-act-related-property ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-account-act-address),
ngb-modal-window .modal-dialog-scrollable app-account-act-address ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-account-act-related),
ngb-modal-window .modal-dialog-scrollable app-account-act-related ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-account-act-related-contact),
ngb-modal-window .modal-dialog-scrollable app-account-act-related-contact ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-account-act-related-property),
ngb-modal-window .modal-dialog-scrollable app-account-act-related-property ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-property-act-related-contact),
ngb-modal-window .modal-dialog-scrollable app-property-act-related-contact ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-property-act-related-account),
ngb-modal-window .modal-dialog-scrollable app-property-act-related-account ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-account-setting-profile-property-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-account-setting-profile-property-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-property-act-owner),
ngb-modal-window .modal-dialog-scrollable app-property-act-owner ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-property-act-manager),
ngb-modal-window .modal-dialog-scrollable app-property-act-manager ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-property-act-unit),
ngb-modal-window .modal-dialog-scrollable app-property-act-unit ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-property-act-unit-type),
ngb-modal-window .modal-dialog-scrollable app-property-act-unit-type ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-property-act-address),
ngb-modal-window .modal-dialog-scrollable app-property-act-address ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-lease-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-lease-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-note-dialog),
ngb-modal-window .modal-dialog-scrollable app-note-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-admin-food-allergy-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-admin-food-allergy-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-admin-food-dish-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-admin-food-dish-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-admin-food-ingredient-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-admin-food-ingredient-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-admin-food-restaurant-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-admin-food-restaurant-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-admin-flights-airline-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-admin-flights-airline-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-admin-flights-seat-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-admin-flights-seat-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-admin-flights-departure-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-admin-flights-departure-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-admin-stay-sunlight-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-admin-stay-sunlight-act-dialog ~ .modal-footer,
ngb-modal-window .modal-dialog-scrollable .modal-footer:has(+ app-admin-stay-floor-act-dialog),
ngb-modal-window .modal-dialog-scrollable app-admin-stay-floor-act-dialog ~ .modal-footer {
  display: none;
}

/* ─── SP Header ─── */
.sp-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  height: 56px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}

.sp-head-l {
  display: flex;
  align-items: center;
  gap: 10px;
}

.sp-title {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: -0.2px;
  color: var(--text);
}

.sp-badge {
  font-size: 12px;
  font-weight: 500;
  padding: 2px 8px;
  border-radius: 4px;
  background: var(--brand-bg);
  color: var(--brand);
}

.sp-head-r {
  display: flex;
  align-items: center;
  gap: 4px;
}

.sp-icon {
  width: 32px;
  height: 32px;
  border: none;
  background: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--t3);
  border-radius: 6px;
  transition: all 80ms var(--ease);
}

.sp-icon:hover {
  background: var(--raised);
  color: var(--t2);
}

.sp-close {
  width: 32px;
  height: 32px;
  border: none;
  background: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--t3);
  border-radius: 6px;
  transition: all 80ms var(--ease);
  margin-left: 4px;
}

.sp-close:hover {
  background: var(--red-bg);
  color: var(--red);
}

/* ─── Nav pills ─── */
.sp-anav {
  display: flex;
  align-items: center;
  padding: 0 8px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
  overflow-x: auto;
  gap: 0;
  background: #fff;
}

.sp-anav::-webkit-scrollbar {
  height: 0;
}

.sp-pill {
  height: 36px;
  border: none;
  background: none;
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: var(--t3);
  cursor: pointer;
  padding: 0 16px;
  position: relative;
  transition: color 80ms;
  white-space: nowrap;
  flex-shrink: 0;
}

.sp-pill:hover {
  color: var(--t2);
}

.sp-pill.on {
  color: var(--brand);
}

.sp-pill.on::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 8px;
  right: 8px;
  height: 2px;
  background: var(--brand);
  border-radius: 1px;
}

/* ─── Scrollable body ─── */
.sp-body {
  flex: 1;
  overflow-y: auto;
  padding: 0;
}

/* ─── Footer ─── */
.sp-foot {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  height: 56px;
  border-top: 1px solid var(--border);
  flex-shrink: 0;
  gap: 12px;
  background: #fff;
  position: relative;
}

.sp-foot-l {
  display: flex;
  align-items: center;
  gap: 8px;
  position: absolute;
  left: 24px;
}

.sp-foot-r {
  display: flex;
  align-items: center;
  gap: 8px;
}

/* ─── Buttons ─── */
.sp-btn {
  height: 34px;
  padding: 0 16px;
  border-radius: 6px;
  border: 1px solid var(--border-strong);
  background: #fff;
  color: var(--text);
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: all 100ms var(--ease);
  white-space: nowrap;
}

.sp-btn.icon-only {
  width: 34px;
  min-width: 34px;
  padding: 0;
  justify-content: center;
}

.sp-btn:hover {
  background: var(--raised);
  border-color: #bbb;
}

.sp-btn:active {
  transform: scale(0.98);
}

.sp-btn.primary {
  background: var(--brand);
  color: #fff;
  border-color: var(--brand);
  box-shadow: 0 1px 3px rgba(10, 78, 244, 0.25);
}

.sp-btn.primary:hover {
  background: var(--brand-dk);
  box-shadow: 0 2px 6px rgba(10, 78, 244, 0.3);
}

.sp-btn.primary:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.sp-btn.danger {
  color: var(--red);
  border-color: #fecaca;
}

.sp-btn.danger:hover {
  background: var(--red-bg);
}

/* ─── Form sections ─── */
.fs {
  padding: 20px 16px;
  border-bottom: 1px solid var(--border);
}

.fs:last-child {
  border-bottom: none;
  padding-bottom: 32px;
}

.fs-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}

.fs-title {
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
  display: flex;
  align-items: center;
  gap: 8px;
}
.fs-title svg {
  color: var(--t3);
  width: 15px;
  height: 15px;
}
.fs-title img {
  width: 15px;
  height: 15px;
  object-fit: contain;
  flex: 0 0 15px;
}

.fs-count {
  font-size: 12px;
  font-family: "JetBrains Mono", monospace;
  color: var(--t3);
  background: var(--raised);
  border: 1px solid var(--border);
  border-radius: 3px;
  padding: 1px 7px;
}

.fs-add {
  font-size: 12px;
  color: var(--brand);
  font-weight: 500;
  cursor: pointer;
  background: none;
  border: none;
  font-family: Jost, "Jost Fallback", sans-serif;
  padding: 2px 8px;
  border-radius: 4px;
  transition: all 80ms var(--ease);
  display: flex;
  align-items: center;
  gap: 3px;
}

.fs-add:hover {
  background: var(--brand-bg);
}

/* ─── Field grid ─── */
.fg {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 16px;
}

.fg.full {
  grid-template-columns: 1fr;
}

.fg.thirds {
  grid-template-columns: 1fr 1fr 1fr;
}

/* ─── Field ─── */
.field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.field-lbl {
  font-size: 12px;
  font-weight: 500;
  color: var(--t3);
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 0;
}

.field-lbl .req {
  color: var(--red);
  font-size: 13px;
}

.field-lbl .hint {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--raised);
  color: var(--t4);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 600;
  cursor: help;
  border: 1px solid var(--border);
}

/* ─── Input ─── */
.inp {
  height: 34px;
  padding: 0 10px;
  border: 1px solid var(--border-strong);
  border-radius: 5px;
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 13px;
  color: var(--text);
  background: #fff;
  outline: none;
  transition: border-color 120ms var(--ease), box-shadow 120ms;
  width: 100%;
}

.inp:focus {
  border-color: var(--brand);
  box-shadow: 0 0 0 3px rgba(10, 78, 244, 0.08);
}

.inp::placeholder {
  color: var(--t4);
}

.inp.mono {
  font-family: "JetBrains Mono", monospace;
}

select.inp {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 16 16' fill='none' stroke='%23a3a3a3' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  padding-right: 28px;
  cursor: pointer;
}

textarea.inp {
  height: auto;
  min-height: 72px;
  padding: 8px 10px;
  resize: vertical;
  line-height: 1.5;
}

/* ─── Avatar upload ─── */
.avatar-upload {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 4px 0;
}

/* ─── Tag input ─── */
.tag-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  padding: 6px 8px;
  min-height: 34px;
  border: 1px solid var(--border-strong);
  border-radius: 5px;
  cursor: text;
  transition: border-color 120ms var(--ease);
}

.tag-wrap:focus-within {
  border-color: var(--brand);
  box-shadow: 0 0 0 3px rgba(10, 78, 244, 0.08);
}

.tag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 2px 8px;
  border-radius: 12px;
  background: var(--brand-bg);
  color: var(--brand);
  font-size: 12px;
  font-weight: 500;
}

.tag-x {
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 80ms;
}

.tag-x:hover {
  opacity: 1;
}

/* ─── Repeater rows (Email/Phone) ─── */
.rep {
  border: 1px solid var(--border);
  border-radius: 6px;
  margin-bottom: 8px;
}

.rep-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-bottom: 1px solid var(--border);
  transition: background 80ms;
}

.rep-row:first-child {
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}

.rep-row:last-child {
  border-bottom: none;
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
}

.rep-row:hover {
  background: var(--hover);
}

.rep-drag {
  width: 16px;
  height: 16px;
  color: var(--t4);
  cursor: grab;
  flex-shrink: 0;
  transition: color 80ms;
}

.rep-row:hover .rep-drag {
  color: var(--t3);
}

.rep-inp {
  flex: 1;
}

.rep-type {
  width: 80px;
  flex-shrink: 0;
}

.rep-label {
  font-size: 12px;
  font-weight: 500;
  color: var(--brand);
  width: 56px;
  text-align: right;
  flex-shrink: 0;
}

.rep-del {
  width: 24px;
  height: 24px;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--t4);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  flex-shrink: 0;
  transition: all 80ms var(--ease);
  padding: 0;
}

.rep-del:hover {
  background: var(--red-bg);
  color: var(--red);
}

.rep-add {
  font-size: 13px;
  color: var(--brand);
  font-weight: 500;
  cursor: pointer;
  padding: 6px 0;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: none;
  border: none;
  font-family: Jost, "Jost Fallback", sans-serif;
  transition: opacity 80ms;
}

.rep-add:hover {
  opacity: 0.75;
}

/* ─── Priority chips ─── */
.prio-list {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.prio-chip {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  border: 1px solid var(--border);
  border-radius: 16px;
  font-size: 12px;
  font-weight: 500;
  color: var(--t2);
  cursor: grab;
  background: #fff;
  transition: all 80ms var(--ease);
}

.prio-chip:hover {
  border-color: var(--brand-bd);
  background: var(--brand-bg);
}

.prio-num {
  font-size: 11px;
  font-family: "JetBrains Mono", monospace;
  color: var(--t3);
  font-weight: 400;
}

/* ─── Table ─── */
.table-wrap {
  border: 1px solid var(--border);
  border-radius: 6px;
  overflow: hidden;
}

.t {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 0;
}

.t thead th {
  padding: 0 12px;
  height: 36px;
  font-size: 12px;
  font-weight: 600;
  color: var(--t3);
  text-align: left;
  border-bottom: 1px solid var(--border);
  background: var(--hover);
  white-space: nowrap;
}

.t thead th:first-child,
.t tbody td:first-child {
  padding-left: 16px;
}

.t tbody tr {
  border-bottom: 1px solid var(--border);
  transition: background 60ms;
}

.t tbody tr:last-child {
  border-bottom: none;
}

.t tbody tr:hover {
  background: var(--hover);
}

.t td {
  padding: 0 12px;
  height: 40px;
  font-size: 13px;
  color: var(--text);
  vertical-align: middle;
}

.mono-text {
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
  color: var(--t2);
}

.muted {
  color: var(--t3);
}

.sp-link {
  color: var(--brand);
  cursor: pointer;
  text-decoration: none;
}

.sp-link:hover {
  text-decoration: underline;
}

/* ─── Override form elements inside .sp-body ─── */
.form-control,
.form-select {
  height: 34px;
  padding: 0 10px;
  border: 1px solid var(--border-strong);
  border-radius: 5px;
  font-family: Jost, "Jost Fallback", sans-serif;
  font-size: 13px;
  color: var(--text);
  background: #fff;
}
.form-control:focus,
.form-select:focus {
  border-color: var(--brand);
  box-shadow: 0 0 0 3px rgba(10, 78, 244, 0.08);
}
.form-control::placeholder,
.form-select::placeholder {
  color: var(--t4);
}

.form-label {
  font-size: 12px;
  font-weight: 500;
  color: var(--t3);
  margin-bottom: 4px;
}

.sp-body {
  /* Override bootstrap table inside sp-body */
}
.sp-body .table {
  margin-bottom: 0;
}
.sp-body .table > thead > tr > th {
  padding: 0 12px;
  height: 36px;
  font-size: 12px;
  font-weight: 600;
  color: var(--t3);
  background: var(--hover);
  border-bottom: 1px solid var(--border);
}
.sp-body .table > tbody > tr > td {
  padding: 0 12px;
  height: 40px;
  font-size: 13px;
  vertical-align: middle;
}
.sp-body .table > tbody > tr:hover {
  background: var(--hover);
}
.sp-body {
  /* Override light-grey-box sections */
}
.sp-body .light-grey-box {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 20px 24px !important;
  border-bottom: 1px solid var(--border) !important;
}
.sp-body .light-grey-box h5 {
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.sp-body .light-grey-box h5 i, .sp-body .light-grey-box h5 img {
  color: var(--t3);
  width: 15px;
  height: 15px;
}
.sp-body .form-primary .row {
  margin: 0;
}
.sp-body app-admin-food-allergy-act-form .admin-food-allergy-fs.light-grey-box,
.sp-body app-admin-food-dish-act-form .admin-food-dish-fs.light-grey-box,
.sp-body app-admin-food-ingredient-act-form .admin-food-ingredient-fs.light-grey-box,
.sp-body app-admin-food-restaurant-act-form .admin-food-restaurant-fs.light-grey-box,
.sp-body app-admin-flights-airline-act-form .admin-flights-airline-fs.light-grey-box,
.sp-body app-admin-flights-seat-act-form .admin-flights-seat-fs.light-grey-box,
.sp-body app-admin-flights-departure-act-form .admin-flights-departure-fs.light-grey-box,
.sp-body app-admin-stay-sunlight-act-form .admin-stay-sunlight-fs.light-grey-box,
.sp-body app-admin-stay-floor-act-form .admin-stay-floor-fs.light-grey-box {
  background: #fff !important;
}
.sp-body {
  /* Style ng-select inside sp-body */
}
.sp-body .ng-select .ng-select-container {
  height: 34px;
  min-height: 34px;
  border: 1px solid var(--border-strong);
  border-radius: 5px;
  font-size: 13px;
}
.sp-body .ng-select .ng-select-container:hover {
  box-shadow: none;
}
.sp-body .ng-select .ng-select-container .ng-value-container {
  padding-left: 10px;
}
.sp-body .ng-select.ng-select-focused .ng-select-container {
  border-color: var(--brand);
  box-shadow: 0 0 0 3px rgba(10, 78, 244, 0.08);
}

@media (max-width: 1300px) {
  .list-of-forums li {
    width: 33.33%;
  }
}
@media (max-width: 1200px) {
  header .public-search {
    position: static;
    transform: none;
  }
  .signin-up {
    margin: 0;
  }
  .contact-main-content {
    flex-wrap: wrap;
  }
  .contact-main-content.contact-2-columns .contact-column-1 {
    order: 2;
    width: 49%;
    flex: 1 1 auto;
    margin-top: 15px;
    margin-right: 2%;
  }
  .contact-main-content.contact-2-columns .contact-column-3 {
    order: 3;
    width: 49%;
    flex: 1 1 auto;
    margin-top: 15px;
  }
  .contact-main-content .contact-column-1 {
    order: 2;
    width: 49%;
    flex: 1 1 auto;
    margin-top: 15px;
    margin-right: 2%;
  }
  .contact-main-content .contact-column-2 {
    order: 1;
    margin: 0;
    width: 100%;
    flex: 1 1 auto;
  }
  .contact-main-content .contact-column-3 {
    order: 3;
    width: 49%;
    flex: 1 1 auto;
    margin-top: 15px;
  }
}
@media (max-width: 1100px) {
  .ops-new-org {
    display: table !important;
  }
  .ph-right {
    display: flex;
    align-items: center;
  }
  .ph-right .up-button {
    margin: 0 0 0 15px;
  }
  .page-header,
  .page-sub-header,
  .ot-sub-header {
    position: relative;
    top: 0;
  }
  .page-header.not-tag-detail,
  .page-sub-header.not-tag-detail,
  .ot-sub-header.not-tag-detail {
    top: 0;
  }
  .page-header h1,
  .page-sub-header h1,
  .ot-sub-header h1 {
    font-size: 20px;
  }
  .ot-content.dl-page {
    padding: 0 0 0 12px;
  }
}
@media (min-width: 993px) {
  .page-container .main-container.openedMenu {
    padding-left: 80px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .page-container .main-container.openedMenu .ot-content {
    width: calc(100% - 80px);
  }
  .page-container .wrap-navs.active {
    width: 80px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .page-container .wrap-navs.active li ul.sub-menu {
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    max-height: 0px !important;
  }
  .page-container .wrap-navs.active .small-logo img {
    width: 42px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .page-container .wrap-navs.active .full-logo img {
    width: 0px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .page-container .wrap-navs.active .nav-button button {
    padding: 0 16px;
    height: 40px;
    line-height: 40px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .page-container .wrap-navs.active .main-navigation .main-menu > li > a svg {
    left: 25px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .page-container .wrap-navs.active .main-navigation .main-menu > li > a span.text {
    width: 0px !important;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .page-container .wrap-navs.active .main-navigation .main-menu > li > a i {
    right: -30px !important;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .page-container .wrap-navs.active .footer-copytext {
    display: none;
  }
}
@media (max-width: 993px) {
  .wrap-ot-content .toggle-left-side {
    display: none;
  }
  .wrap-ot-content.has-toggle-icon .ct-right-title {
    padding-left: 0;
  }
  .ot-header .ot-header-right {
    margin-top: 10px;
  }
  .ot-header .ot-header-right .wrap-btns-header {
    display: table;
  }
  .ot-header .ot-header-right .wrap-btns-header .more-property {
    margin-bottom: 10px;
  }
  .detail-main-tab {
    position: relative;
    top: auto;
  }
  .ot-content {
    position: relative;
    top: 0 !important;
  }
  .ot-content.ot-content-two-nav {
    position: relative;
    top: 0;
  }
  .ot-content .ot-content-left {
    height: auto !important;
  }
  .ot-content .ot-content-right {
    height: auto !important;
  }
  .ot-content .ot-content-right .ot-kanban-progress {
    overflow: auto;
  }
  .ot-content .ot-section-menu {
    display: none;
  }
  body .modal .modal-dialog .modal-content .ot-header {
    padding-right: 15px;
  }
  .kanban-detail-act-dialog .ot-content {
    top: 0;
  }
  .kanban-detail-act-dialog .ot-content .ot-content-left,
  .kanban-detail-act-dialog .ot-content .ot-content-right {
    height: auto !important;
  }
  .small-container {
    padding: 0 15px;
  }
  .forum-detail::before {
    display: none;
  }
  .forum-detail .sticky-column {
    position: static;
    margin-bottom: 20px;
  }
  .forum-detail .wrap-comment {
    overflow: auto;
  }
  .post-detail-page .post-bar.post-bar-first {
    flex-direction: column;
  }
  .post-detail-page .post-bar.post-bar-first .bar-left {
    width: 100%;
    margin-bottom: 5px;
  }
  .post-detail-page .post-bar.post-bar-first .bar-right {
    width: 100%;
  }
  .bar-right ul li {
    margin-left: 8px !important;
  }
  .bar-right ul li:first-child {
    margin-left: 0 !important;
  }
  .bar-right ul li span {
    display: none;
  }
  .page-container .wrap-navs .sidebar .fix-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    flex-wrap: wrap;
  }
  .page-container .wrap-navs .sidebar .fix-bar .s-organization {
    padding-left: 0;
    padding-right: 0;
    padding-top: 10px;
    width: 100%;
  }
  .page-container .wrap-navs .sidebar .fix-bar .main-logo {
    margin-bottom: 0;
  }
  .page-container .wrap-navs .sidebar .fix-bar .main-logo .full-logo {
    display: none;
  }
  .page-container .wrap-navs .sidebar .fix-bar .main-logo .small-logo {
    display: block;
  }
  .page-container .wrap-navs .sidebar .fix-bar .main-logo .small-logo img {
    width: 60px;
  }
  .bkp-content .step-container .list-service .s-box {
    display: table;
    width: 100%;
  }
  .bkp-content .step-container .list-service .s-box .s-left {
    flex-wrap: wrap;
  }
  .bkp-content .step-container .list-service.list-org-users .s-box {
    width: 100%;
  }
  .bkp-header.bkp-header-personal {
    padding: 20px 16px;
  }
  .booking-host-profile {
    flex-direction: column;
    gap: 12px;
    text-align: center;
  }
  .booking-host-profile .booking-team-member-avatar--host {
    width: 76px;
    height: 76px;
    font-size: 24px;
    line-height: 76px;
  }
  .page-calendar {
    position: relative !important;
    top: auto;
    width: 100%;
  }
  .page-calendar .calendar-wrap {
    display: block;
    width: 100%;
  }
  .page-calendar .calendar-wrap .left-calendar {
    width: 100%;
  }
  .page-calendar .calendar-wrap .right-calendar {
    width: 100%;
  }
  .contact-main-content .contact-column-1 {
    order: 1;
    width: 100%;
    margin-top: 0;
    margin-right: 0%;
  }
  .contact-main-content .contact-column-2 {
    order: 2;
    margin: 0;
    width: 100%;
    margin-top: 15px;
  }
  .contact-main-content .contact-column-3 {
    order: 3;
    width: 100%;
  }
  .contact-action .light-grey-box {
    position: relative;
  }
  .contact-action .light-grey-box .gc {
    position: absolute;
    width: 100%;
    top: -50px;
    left: 0;
  }
  .form-action .group-controls {
    position: relative;
  }
  .form-action .group-controls .gc {
    position: absolute;
    width: 100%;
    top: -50px;
    left: 0;
  }
  .contact-action .light-grey-box .gc {
    top: -60px;
  }
  .btns-sales .wrap-btns {
    flex-wrap: wrap;
  }
  .btns-sales .wrap-btns .btn-item {
    margin-right: 10px;
    margin-bottom: 8px;
  }
  .page-container .main-container {
    padding-bottom: 120px;
    padding-left: 0 !important;
  }
  .page-container .main-container:has(app-unified-messages-inbox) {
    padding-bottom: 0;
  }
  .page-container .main-container .ot-content {
    width: 100%;
  }
  .page-container .main-container header {
    padding: 3px 0;
  }
  .page-container .main-container header .headerwrapper .left-content .main-logo img {
    width: 50px;
  }
  .page-container .main-container header .headerwrapper .right-content .icon-top {
    width: 38px;
    height: 38px;
  }
  .page-container .main-container header .headerwrapper .right-content .icon-top.setting, .page-container .main-container header .headerwrapper .right-content .icon-top.wishlist {
    width: 30px;
  }
  .page-container .main-container header .headerwrapper .right-content .user-setting .avatar {
    width: 38px;
    height: 38px;
    margin-right: 0;
  }
  .page-container .wrap-navs {
    left: -224px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    height: 100%;
  }
  .page-container .wrap-navs.active {
    left: 0;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .page-container .wrap-navs .wrap-toggle-icon {
    top: 9px;
    right: -40px;
    padding: 10px 2px 10px 7px;
    background: #FFFFFF;
  }
  .page-container .wrap-navs .wrap-toggle-icon i.fa-caret-left::before {
    content: "\f0da";
  }
  .page-container .wrap-navs .wrap-toggle-icon i.fa-caret-right::before {
    content: "\f0d9";
  }
  .wrap-main-page .col-sb-call {
    height: auto;
    position: static;
  }
  .wrap-main-page.call-center-active {
    display: flex;
    flex-direction: row;
  }
  .wrap-main-page.call-center-active .col-sb-call {
    width: 100%;
  }
  .wrap-main-page.call-center-active .col-sb-call .sb-call-container {
    padding: 0 15px;
  }
  .wrap-main-page.call-center-active .call-visible {
    width: 100%;
  }
  .wrap-main-page.call-center-active .call-visible .mf-container {
    padding-left: 15px;
  }
  .bottom-pagination .pagination .page-item a {
    height: 30px;
    line-height: 30px;
    font-size: 13px;
    white-space: nowrap;
  }
  .bottom-pagination .pagination .total {
    height: 30px;
    line-height: 30px;
    font-size: 13px;
    white-space: nowrap;
    margin-right: 5px;
  }
  .s-by-word {
    padding: 10px 0;
    text-align: center;
  }
  .s-by-word ul {
    margin: 4px 0;
  }
  .s-by-word ul.list-text {
    margin-right: 0;
  }
  .s-by-word ul li a {
    padding: 0 3px;
  }
  .contact-left h3.name {
    font-size: 20px;
  }
  .search-box {
    justify-content: center;
  }
  .search-box .wrap-input {
    height: 40px;
  }
  .search-box .wrap-input i {
    line-height: 40px;
  }
  .search-box .wrap-input .form-control {
    line-height: 40px;
    width: 161px;
  }
  body .btn-custom {
    height: 40px;
    line-height: 38px;
  }
  body .modal.right.fade.show {
    width: auto;
  }
  body .modal.right.fade.show .modal-dialog {
    width: auto;
  }
  .bottom-pagination {
    padding-left: 0;
  }
  .bottom-pagination .pagination {
    display: block;
    align-items: center;
    text-align: center;
  }
  .bottom-pagination .pagination .total,
  .bottom-pagination .pagination .page-item,
  .bottom-pagination .pagination .label-space {
    display: inline-block;
    margin-bottom: 5px;
  }
  .bottom-pagination .pagination .wrap-select {
    width: 130px;
    margin: 0 5px 5px 5px;
    display: inline-block;
  }
  .ph-right {
    justify-content: center;
  }
  .wrap-main-title .page-title,
  .wrap-main-title .rounded-pill {
    font-size: 22px;
  }
  .page-tab-title ul {
    padding: 12px 0;
  }
  .page-tab-title ul li:first-child a {
    padding-left: 0;
  }
  .page-tab-title ul li a {
    padding: 0 12px;
    font-size: 15px;
  }
  .card .box-title h2 {
    font-size: 16px;
    line-height: normal;
  }
  .gg-images .img-item .sm-wrap {
    display: none;
  }
  .gg-images .img-item .sm-wrap.top-img {
    display: block;
  }
  .wrap-event-public .left-column,
  .wrap-event-public .right-column {
    position: static;
  }
  .wrap-article-public .left-column,
  .wrap-article-public .right-column {
    position: static;
  }
  .options-view {
    display: table;
    margin: 10px auto;
  }
  .page-container .main-container header .headerwrapper .right-content .icon-top.notification .wrap-popup-noti {
    right: -60px;
    max-width: calc(100vw - 20px);
  }
  .event-container .input-group.search-bar {
    box-shadow: none;
    justify-content: center;
  }
  .article-container .input-group.search-bar {
    box-shadow: none;
    justify-content: center;
  }
  .gantt-table-header {
    display: none !important;
  }
  .gantt-side {
    display: none;
  }
  .popup-photos.modal.show .modal-dialog img {
    max-width: 100%;
  }
  .wrap-time-result {
    border: none;
    margin-left: 0;
    padding: 10px 0;
  }
  .box-step-info {
    flex-direction: column;
  }
  .box-step-info .box-col {
    margin: 5px 0;
    display: flex;
    align-items: center;
  }
  .box-step-info .box-col .col-title {
    margin-right: 10px;
  }
  .box-step-info .box-col .col-value {
    font-size: 14px;
  }
  .account-settings-page .as-sidebar {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    z-index: 1;
  }
  .account-settings-page .as-content {
    margin-left: 0 !important;
    width: 100% !important;
  }
}
@media (max-width: 767px) {
  .list-of-forums li {
    width: 50%;
  }
  .event-container .input-group.search-bar .search-select {
    margin-bottom: 5px;
    width: 324px;
  }
  .article-container .input-group.search-bar .search-select {
    margin-bottom: 5px;
    width: 324px;
  }
  .top-gantt-btns {
    flex-direction: column;
  }
  .top-gantt-btns .w-btns {
    margin-bottom: 10px;
  }
  .contact-top-row .top-row-1 {
    position: relative;
  }
  .contact-top-row .contact-right .btn-edit {
    background: none;
    border: none;
    position: absolute;
    right: 5px;
    top: 5px;
    padding: 3px 6px;
    margin: 0 !important;
    color: #266DF0;
  }
  .contact-top-row .contact-right .btn-edit i {
    display: block;
  }
  .contact-top-row .contact-right .btn-edit span {
    display: none;
  }
}
@media (max-width: 480px) {
  .list-of-forums li {
    width: 100%;
  }
}
/* Shared mobile foundation for OpsTitan portal shell and prioritized list/detail workflows. */
@media (max-width: 993px) {
  .page-container {
    display: block;
  }
  .page-container .wrap-navs {
    width: min(86vw, 320px) !important;
    max-width: 320px !important;
    height: 100dvh !important;
    left: calc(-1 * min(86vw, 320px)) !important;
    top: 0 !important;
    z-index: 30 !important;
    overflow: visible !important;
    border-right: 1px solid var(--border, #ecedee) !important;
    background: var(--surface, #ffffff) !important;
  }
  .page-container .wrap-navs.active {
    left: 0 !important;
  }
  .page-container .wrap-navs .wrap-toggle-icon {
    top: 14px !important;
    right: -38px !important;
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    color: #6f767e !important;
    box-shadow: 0 1px 4px rgba(16, 24, 40, 0.08);
  }
  .page-container .wrap-navs .sidebar {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: #ffffff !important;
  }
  .page-container .wrap-navs .sidebar .fix-bar {
    display: block !important;
    padding: 10px 12px 8px !important;
    background: #ffffff !important;
    border-bottom: 1px solid #ecedee;
  }
  .page-container .wrap-navs .sidebar .fix-bar .main-logo {
    height: 38px !important;
    padding: 0 !important;
    border-bottom: 0 !important;
    display: flex !important;
    align-items: center !important;
  }
  .page-container .wrap-navs .sidebar .fix-bar .main-logo .full-logo {
    display: flex !important;
    align-items: center !important;
  }
  .page-container .wrap-navs .sidebar .fix-bar .main-logo .full-logo img {
    width: auto !important;
    max-width: 150px !important;
    height: 24px !important;
  }
  .page-container .wrap-navs .sidebar .fix-bar .main-logo .small-logo {
    display: none !important;
  }
  .page-container .wrap-navs .sidebar .s-organization {
    width: 100% !important;
    padding: 8px 0 0 !important;
  }
  .page-container .wrap-navs .sidebar .s-organization .search-feature .form-control {
    height: 40px !important;
    font-size: 16px !important;
    line-height: 20px !important;
    margin-top: 0 !important;
    border-radius: 8px !important;
    padding: 8px 36px 8px 10px !important;
  }
  .page-container .wrap-navs .main-navigation {
    padding: 8px 8px 18px !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu,
  .page-container .wrap-navs .main-navigation .main-menu ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li {
    margin: 0 0 2px !important;
    padding: 0 !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li::before {
    display: none !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li > a {
    min-height: 38px !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 10px !important;
    border-radius: 8px !important;
    color: #303844 !important;
    font-size: 14px !important;
    line-height: 20px !important;
    text-decoration: none !important;
    white-space: normal !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li > a svg,
  .page-container .wrap-navs .main-navigation .main-menu > li > a .fas {
    position: static !important;
    transform: none !important;
    flex: 0 0 20px !important;
    width: 20px !important;
    height: 20px !important;
    max-width: 20px !important;
    max-height: 20px !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li > a span.text {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    opacity: 1 !important;
    overflow: visible !important;
    white-space: normal !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li > a i.fa-chevron-down {
    position: static !important;
    margin-left: auto !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li .sub-menu,
  .page-container .wrap-navs .main-navigation .main-menu > li .sub-submenu {
    max-height: none !important;
    overflow: visible !important;
    opacity: 1 !important;
    border-left: 1px solid #e4e7ec !important;
    margin: 2px 0 4px 20px !important;
    padding: 0 0 0 10px !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li .sub-menu::before,
  .page-container .wrap-navs .main-navigation .main-menu > li .sub-submenu::before {
    display: none !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li .sub-menu li,
  .page-container .wrap-navs .main-navigation .main-menu > li .sub-submenu li {
    margin: 0 !important;
    padding: 0 !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li .sub-menu li::before,
  .page-container .wrap-navs .main-navigation .main-menu > li .sub-submenu li::before {
    display: none !important;
  }
  .page-container .wrap-navs .main-navigation .main-menu > li .sub-menu li a,
  .page-container .wrap-navs .main-navigation .main-menu > li .sub-submenu li a {
    min-height: 32px !important;
    display: flex !important;
    align-items: center !important;
    padding: 6px 8px !important;
    border-radius: 7px !important;
    color: #475467 !important;
    font-size: 14px !important;
    line-height: 20px !important;
    text-decoration: none !important;
    white-space: normal !important;
  }
  .page-container .main-container {
    width: 100% !important;
    max-width: 100vw !important;
    padding-left: 0 !important;
  }
  .page-container .main-container header {
    height: 64px !important;
    padding: 0 10px !important;
    background: #ffffff !important;
    border-bottom: 1px solid #ecedee !important;
  }
  .page-container .main-container header .headerwrapper {
    min-height: 64px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
  }
  .page-container .main-container header .headerwrapper .left-content,
  .page-container .main-container header .headerwrapper .right-content {
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
  }
  .page-container .main-container header .headerwrapper .left-content {
    flex: 0 0 auto !important;
  }
  .page-container .main-container header .headerwrapper .left-content .main-logo img {
    width: 48px !important;
    height: auto !important;
  }
  .page-container .main-container header .headerwrapper .right-content {
    flex: 1 1 auto !important;
    justify-content: flex-end !important;
    gap: 8px !important;
  }
  .page-container .main-container header .headerwrapper .right-content .icon-top {
    width: 34px !important;
    height: 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 34px !important;
    margin: 0 !important;
  }
}
/* Shared mobile list, toolbar, filter, table, card, and pagination patterns for prioritized workflows. */
/* Phase 1 establishes the import boundary only. Add shared list rules during Phase 3. */
/* Shared mobile detail, form, and dialog patterns for prioritized workflows. */
/* Phase 1 establishes the import boundary only. Add detail/form rules during Phase 9. */
/* Account Settings page styles (moved from component SCSS) */
/* Scoped under .account-settings-page to avoid global bleed */
.account-settings-page {
  /* Remove all padding from container in account settings page */
}
.account-settings-page .mf-container {
  padding-right: 0;
  padding-left: 0;
}
.account-settings-page {
  /* Remove padding from sidebar */
}
.account-settings-page .as-sidebar {
  padding-right: 0;
  padding-left: 0;
  padding-top: 20px;
}
.account-settings-page .sb-main, .account-settings-page .sb-sub, .account-settings-page .sb-sub-sub {
  list-style: none;
  margin: 0;
  padding: 0;
}
.account-settings-page {
  /* Base item style */
}
.account-settings-page .as-sidebar .sb-sub > li > a.it-sub,
.account-settings-page .as-sidebar .sb-sub > li > span.it-sub,
.account-settings-page .as-sidebar .sb-sub-sub > li > a {
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 14px;
  font-weight: 600;
  padding: 8px 0.75rem;
  border-radius: 0;
  position: relative;
  color: #6b7280;
}
.account-settings-page {
  /* Icon outline (stroke only) for inactive */
}
.account-settings-page .as-sidebar .sb-sub svg path, .account-settings-page .as-sidebar .sb-sub-sub svg path {
  transition: stroke 0.18s, fill 0.18s;
}
.account-settings-page {
  /* Force outline look: remove any hard-coded fills from inline SVG */
}
.account-settings-page .as-sidebar .sb-sub > li:not(.active) svg path {
  stroke: #9ca3af;
  fill: none !important;
}
.account-settings-page {
  /* Active state */
}
.account-settings-page .as-sidebar .sb-sub > li.active > a.it-sub,
.account-settings-page .as-sidebar .sb-sub > li.active > span.it-sub,
.account-settings-page .as-sidebar .sb-sub-sub > li > a.active {
  color: #111827;
  font-weight: 600;
}
.account-settings-page .as-sidebar .sb-sub > li.active svg path {
  stroke: #111827 !important;
  fill: none !important;
}
.account-settings-page {
  /* Ensure click/keyboard focus does not turn icons blue */
}
.account-settings-page .as-sidebar .sb-sub > li > a.it-sub:active svg path,
.account-settings-page .as-sidebar .sb-sub > li > a.it-sub:focus svg path,
.account-settings-page .as-sidebar .sb-sub > li > span.it-sub:active svg path,
.account-settings-page .as-sidebar .sb-sub > li > span.it-sub:focus svg path {
  stroke: #111827 !important;
  fill: none !important;
}
.account-settings-page {
  /* Right edge active bar */
}
.account-settings-page .as-sidebar .sb-sub > li {
  position: relative;
}
.account-settings-page {
  /* Active bar only on the clickable row (not covering child list) */
}
.account-settings-page .as-sidebar .sb-sub > li.active > a.it-sub:after,
.account-settings-page .as-sidebar .sb-sub > li.active > span.it-sub:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 4px;
  background: #111827;
  border-radius: 2px 0 0 2px;
}
.account-settings-page {
  /* Group top-level links (Travel / Food) inherit color */
}
.account-settings-page .as-sidebar a.grp-link,
.account-settings-page .as-sidebar a.grp-link:visited,
.account-settings-page .as-sidebar a.grp-link:active,
.account-settings-page .as-sidebar a.grp-link:focus {
  color: inherit !important;
  text-decoration: none;
}
.account-settings-page {
  /* Hover */
}
.account-settings-page .as-sidebar .sb-sub > li > a.it-sub:hover,
.account-settings-page .as-sidebar .sb-sub > li > span.it-sub:hover {
  background: #f3f4f6;
  color: #374151;
  width: 100%;
}
.account-settings-page .as-sidebar .sb-sub > li > a.it-sub:hover svg path, .account-settings-page .as-sidebar .sb-sub > li > span.it-sub:hover svg path {
  stroke: #374151;
  fill: none !important;
}
.account-settings-page {
  /* Section labels (User Detail / Preferences) */
}
.account-settings-page .as-sidebar > .sb-main > li > span, .account-settings-page .as-sidebar .sb-main > li > span {
  display: block;
  font-size: 11px;
  letter-spacing: 0.5px;
  font-weight: 600;
  text-transform: uppercase;
  color: #6b7280;
  margin: 1.25rem 0.25rem 0.35rem;
}
.account-settings-page .as-sidebar > .sb-main > li:first-child > span {
  margin-top: 0;
}
.account-settings-page {
  /* Nested sub-sub items */
}
.account-settings-page .sb-sub-sub {
  margin-left: 20px;
}
.account-settings-page .sb-sub-sub > li > a {
  font-size: 13px;
  font-weight: 500;
  padding: 0.5rem 0 0.5rem 0.25rem;
  color: #6b7280;
}
.account-settings-page .sb-sub-sub > li > a.active {
  color: #111827;
  font-weight: 600;
}
.account-settings-page .sb-sub-sub > li > a.active:after {
  content: "";
  position: absolute;
  right: -8px;
  top: 0;
  bottom: 0;
  width: 3px;
  background: #111827;
}
.account-settings-page {
  /* Expanded group arrow rotation when expanded */
}
.account-settings-page .as-sidebar li.expanded > .it-sub .mn-arrow svg {
  transform: rotate(180deg);
}
.account-settings-page .as-sidebar .mn-arrow svg {
  transition: transform 0.2s;
}
.account-settings-page {
  /* Remove default list spacing line separators mimic */
}
.account-settings-page .as-sidebar .sb-sub > li {
  border-bottom: 1px solid #f1f1f3;
}
.account-settings-page .as-sidebar .sb-sub > li:last-child {
  border-bottom: none;
}
.account-settings-page {
  /* Active row background subtle */
}
.account-settings-page .as-sidebar .sb-sub > li.active {
  background: #fff;
}
@media (max-width: 992px) {
  .account-settings-page .as-sidebar {
    margin-bottom: 1.5rem;
  }
}
.account-settings-page {
  /* Layout override: remove global 129px sticky offset so sidebar sits directly under header on Account Settings page */
}
.account-settings-page .ac-row .as-sidebar {
  top: 62px;
}
.account-settings-page {
  /* Remove horizontal spacing in the layout row for a flush-edge design */
}
.account-settings-page .ac-row {
  margin-left: 0;
  margin-right: 0;
}
.account-settings-page {
  /* Remove padding in the content column */
}
.account-settings-page .col-lg-9.as-content {
  padding-left: 0 !important; /* Override the Bootstrap column padding */
  padding-right: 0 !important;
}

/* Account Settings > User Detail page styles (moved from component SCSS) */
/* Scoped under .account-settings-user-detail-page */
.account-settings-user-detail-page {
  /* container w/o internal sidebar now */
}
.account-settings-user-detail-page .user-detail-page {
  max-width: 100%;
}
.account-settings-user-detail-page {
  /* Card styles */
}
.account-settings-user-detail-page .ac-box,
.account-settings-user-detail-page .info-card,
.account-settings-user-detail-page .addresses-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 1.25rem 1.5rem 1.5rem;
  margin-bottom: 2rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
.account-settings-user-detail-page {
  /* Extra breathing room specifically for the user summary information card */
}
.account-settings-user-detail-page .user-summary.info-card {
  padding: 1.75rem 2rem 2rem;
}
.account-settings-user-detail-page .ac-box {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0 1.5rem;
  box-shadow: none;
  margin-bottom: 1.5rem;
}
.account-settings-user-detail-page .ac-box .parent-table.sticky-table {
  border-top: 0;
}
.account-settings-user-detail-page .box-header,
.account-settings-user-detail-page .card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}
.account-settings-user-detail-page .box-header h3,
.account-settings-user-detail-page .card-header h3 {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
}
.account-settings-user-detail-page {
  /* User summary card */
}
.account-settings-user-detail-page .user-summary {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 2rem;
}
.account-settings-user-detail-page .user-summary .info-section {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
  overflow: auto;
}
.account-settings-user-detail-page .user-summary .section-heading {
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 0.25rem;
}
.account-settings-user-detail-page .user-profile-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding-right: 1rem;
  border-right: 1px solid #f3f4f6;
}
.account-settings-user-detail-page .user-profile-block .wrap-avatar {
  width: 96px;
  height: 96px;
  font-size: 36px;
  border-radius: 50%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  margin-bottom: 0.75rem;
}
.account-settings-user-detail-page .user-profile-block h3.b-title {
  font-size: 20px;
  font-weight: 600;
  margin: 0.25rem 0 0;
}
.account-settings-user-detail-page {
  /* Inline info fields (Figma style: only icon has gray bg, no tile card) */
}
.account-settings-user-detail-page .info-inline-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(220px, 1fr));
  column-gap: 3rem;
  row-gap: 1.35rem;
}
.account-settings-user-detail-page .info-inline-fields .field-item {
  display: flex;
  align-items: flex-start;
  gap: 0.85rem;
  min-width: 0;
}
.account-settings-user-detail-page {
  /* Larger icon container for more padding */
}
.account-settings-user-detail-page .info-inline-fields .field-item > .icon {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  box-sizing: border-box;
  border-radius: 10px;
  background: #f3f4f6;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.account-settings-user-detail-page .info-inline-fields .field-item .icon img {
  width: 20px;
  height: 20px;
}
.account-settings-user-detail-page .info-inline-fields .texts {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.account-settings-user-detail-page .info-inline-fields .primary {
  font-weight: 600;
  font-size: 14px;
  color: #111827;
  line-height: 1.15;
}
.account-settings-user-detail-page .info-inline-fields .label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #6b7280;
  margin-top: 0.25rem;
}
.account-settings-user-detail-page {
  /* Provide breathing room below inline fields before addresses */
}
.account-settings-user-detail-page .user-summary {
  margin-bottom: 1.25rem;
}
.account-settings-user-detail-page {
  /* Unified container (profile + information + addresses) to mimic single panel in Figma */
}
.account-settings-user-detail-page .user-detail-combined {
  background: #fff;
  border: 1px solid #e0e0e0; /* closer to Figma gray (#ECEDEE approx) */
  border-radius: 0; /* square corners */
  padding: 0; /* we'll manage section padding individually */
  display: flex;
  flex-direction: column;
  /* Full viewport height */
  min-height: 100vh;
}
.account-settings-user-detail-page .user-detail-combined .info-card,
.account-settings-user-detail-page .user-detail-combined .addresses-card {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin: 0;
  background: transparent;
  padding: 1rem 0 1rem 0;
}
.account-settings-user-detail-page .user-detail-combined .user-summary {
  padding: 32px 20px 28px;
}
.account-settings-user-detail-page .user-detail-combined #addresses-card {
  padding: 1rem;
}
.account-settings-user-detail-page .user-detail-combined .user-profile-block {
  border-right: 1px solid #ecedee;
}
.account-settings-user-detail-page .user-detail-combined .card-header {
  margin-bottom: 16px;
}
.account-settings-user-detail-page .user-detail-combined .card-header h3 {
  font-size: 24px;
  font-weight: 600;
}
.account-settings-user-detail-page .user-detail-combined .section-heading {
  font-size: 24px;
  font-weight: 600;
}
.account-settings-user-detail-page .user-detail-combined .info-inline-fields {
  column-gap: 96px;
  row-gap: 32px;
}
.account-settings-user-detail-page .user-detail-combined .info-inline-fields .icon {
  background: #ecedee;
}
.account-settings-user-detail-page .user-detail-combined .add-address-btn {
  font-size: 12px;
  padding: 8px 10px;
  border-radius: 8px;
}
@media (max-width: 1100px) {
  .account-settings-user-detail-page .user-detail-combined .user-summary {
    grid-template-columns: 1fr;
    padding: 32px 15px 24px;
  }
  .account-settings-user-detail-page .user-detail-combined #addresses-card {
    padding: 24px 15px;
  }
  .account-settings-user-detail-page .user-detail-combined .user-profile-block {
    border-right: 0;
    border-bottom: 1px solid #ecedee;
    margin-bottom: 24px;
    padding-bottom: 24px;
  }
  .account-settings-user-detail-page .user-detail-combined .info-inline-fields {
    column-gap: 48px;
    row-gap: 28px;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  }
}
.account-settings-user-detail-page .add-address-btn {
  display: flex;
  align-items: center;
  gap: 0.35rem;
}
.account-settings-user-detail-page {
  /* Responsive */
}
@media (max-width: 1100px) {
  .account-settings-user-detail-page .user-summary {
    grid-template-columns: 1fr;
  }
  .account-settings-user-detail-page .user-profile-block {
    border-right: 0;
    border-bottom: 1px solid #f3f4f6;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
  }
}

/* Manage Organization page styles (scoped to .manage-organization-page)
   Goal: match Account Settings pattern - global header shows title, tabs below */
.manage-organization-page {
  /* Remove local header - global header will show "Manage Organization" title */
  /* Override global mf-container padding for this page's content */
}
.manage-organization-page .page-content .mf-container {
  padding: 0; /* Remove the left and right padding (was 15px) */
}
.manage-organization-page {
  /* Full-width tabs bar positioned directly under global header */
}
.manage-organization-page .org-tabs-bar {
  border-bottom: 1px solid #dedede;
  background: #FFFFFF;
}
.manage-organization-page .org-tabs-list {
  list-style: none;
  margin: 0;
  padding: 0;
  align-items: stretch;
  display: table;
  width: 100%;
}
.manage-organization-page .org-tabs-list li {
  display: inline-block;
  vertical-align: middle;
}
.manage-organization-page .org-tabs-list li a {
  padding: 12px 10px;
  height: 100%;
  font-size: 14px;
  font-weight: 500;
  color: #383c40; /* #6f767e */
  text-decoration: none;
  position: relative;
  transition: color 0.2s ease;
  display: table;
}
.manage-organization-page .org-tabs-list li a:hover {
  color: #141516;
}
.manage-organization-page .org-tabs-list li a.active {
  color: #141516; /* #141416 black text */
  font-weight: 600;
  /* Black bottom border aligned with tab bar border */
}
.manage-organization-page .org-tabs-list li a.active::after {
  content: "";
  position: absolute;
  bottom: -2px; /* Position it to overlap the bottom border of the tab bar */
  left: 10px;
  right: 10px;
  height: 2px;
  background: #141516; /* #141416 black border */
  z-index: 1; /* Ensure it appears above tab bar border */
}
.manage-organization-page {
  /* Remove the old tab styling */
}
.manage-organization-page .page-tab-title {
  display: none;
}
.manage-organization-page {
  /* Card container look for data sections */
}
.manage-organization-page .card-container {
  border: 1px solid #ECEDEE;
  border-radius: 10px;
  padding: 16px 16px 8px;
  background: #FFFFFF;
}
.manage-organization-page {
  /* Tables: reuse .table.table-rounded styles and fine tune spacing */
}
.manage-organization-page .table.table-rounded th {
  color: #383c40;
  font-weight: 600;
}
.manage-organization-page .table.table-rounded td,
.manage-organization-page .table.table-rounded th {
  padding: 10px 12px;
}
.manage-organization-page {
  /* Section headings above forms */
}
.manage-organization-page .light-grey-box {
  border: 1px solid #ECEDEE;
  border-radius: 10px;
  background: #fafafa;
}
.manage-organization-page .light-grey-box h5 {
  font-size: 14px;
  font-weight: 600;
  color: #141516;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
.manage-organization-page .light-grey-box h6 {
  font-size: 12px;
  font-weight: 400;
  color: #383c40;
  margin-top: -6px;
  margin-bottom: 6px;
}
.manage-organization-page {
  /* Edit button in details view uses standard btn-custom-primary class */
}
.manage-organization-page .organization-logo {
  border-radius: 8px;
}
.manage-organization-page {
  /* Sticky anchor buttons in dialog header (keep subtle) */
}
.manage-organization-page .fixheader .icon-anchor {
  border-radius: 8px;
}
.manage-organization-page {
  /* New Figma design styles for Organization Details page */
}
.manage-organization-page .org-details-container {
  margin-top: 0; /* Removed 20px margin to match the new design */
}
.manage-organization-page .org-details-container .info-section {
  margin-bottom: 0px;
  border: 1px solid #e4e4e4;
  background-color: #ffffff; /* Ensure white background */
}
.manage-organization-page .org-details-container .info-section .section-header {
  height: 63px;
  background-color: #f9f9f9; /* Neutral-50 */
  border-bottom: 1px solid #e4e4e4;
}
.manage-organization-page .org-details-container .info-section .section-header .header-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  height: 100%;
}
.manage-organization-page .org-details-container .info-section .section-header .header-content h2 {
  font-size: 20px;
  font-weight: 600;
  margin: 0;
  color: #141516; /* Black-90 */
}
.manage-organization-page .org-details-container .info-section .section-header .header-content .btn-custom-primary {
  font-weight: 500;
}
.manage-organization-page .org-details-container .info-section .info-row {
  display: flex;
  flex-wrap: wrap;
  /* Removed border-bottom to eliminate horizontal dividing lines */
  padding: 6px 0; /* Add slight padding for better visual spacing */
  transition: background-color 0.15s ease;
  /* Subtle hover effect to visually distinguish rows without borders */
}
.manage-organization-page .org-details-container .info-section .info-row:hover {
  background-color: rgba(249, 249, 249, 0.5); /* Very subtle highlight */
}
.manage-organization-page .org-details-container .info-section .info-row .info-cell {
  flex: 1;
  min-width: 200px;
  max-width: 254px;
  padding: 12px 20px;
  /* No borders between cells for cleaner look */
}
.manage-organization-page .org-details-container .info-section .info-row .info-cell.full-width {
  flex: 0 0 100%;
  max-width: 100%;
}
.manage-organization-page .org-details-container .info-section .info-row .info-cell .info-label {
  font-size: 14px;
  font-weight: 400;
  color: #6f767e; /* Black-60 */
  margin-bottom: 4px;
  line-height: 1.4;
}
.manage-organization-page .org-details-container .info-section .info-row .info-cell .info-value {
  font-size: 14px;
  font-weight: 600;
  color: #141516; /* Black-90 */
  line-height: 1.4;
}
.manage-organization-page .org-details-container .info-section .info-row .info-cell .info-value.text-muted {
  color: #6f767e;
  font-weight: normal;
}
.manage-organization-page .org-details-container .logo-container {
  margin-top: 20px;
  margin-bottom: 20px;
}
.manage-organization-page .org-details-container .logo-container .organization-logo {
  border-radius: 4px;
}
.manage-organization-page .org-details-container .edit-button-container {
  margin-top: 16px;
}
.manage-organization-page .org-details-container .edit-button-container .edit-button {
  padding: 8px;
  background: transparent;
  border: none;
  border-radius: 4px;
  transition: background-color 0.2s;
}
.manage-organization-page .org-details-container .edit-button-container .edit-button:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

.tpd-date-tabs {
  box-sizing: border-box;
  background: #FAFAFA;
  border: 1px solid #ECEDEE;
  border-radius: 4px;
  padding: 4px 18px;
  gap: 12px;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
}

.tpd-tab-btn {
  border-radius: 8px;
  padding: 8px 20px;
  height: 40px;
  min-width: 60px;
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
  color: #141516;
}
.tpd-tab-btn.btn-dark {
  color: #fff;
}
.tpd-tab-btn:first-child {
  margin-right: 8px;
}
.tpd-tab-btn.btn-outline-dark {
  background-color: #F2F3F5;
  border-color: #ECEDEE;
  color: #141516;
}

.tpd-tab-label {
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
}

.tpd-tabs-more {
  width: auto;
  min-width: 36px;
  padding: 0 8px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tpd-filter-btn.dropdown-toggle::after {
  display: none !important;
}

.tpd-info-cards {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  align-content: center;
  padding: 0 18px;
  gap: 16px;
}

.tpd-info-col {
  width: 285px;
  height: 75px;
  flex: 1 1 285px;
}

.tpd-card {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 12px 16px;
  gap: 4px;
  width: 100%;
  height: 75px;
  background: #F8F8F8;
  border: 1px solid #ECEDEE;
  border-radius: 12px;
}

.tpd-card-title {
  font-family: Jost, "Jost Fallback", sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  display: flex;
  align-items: center;
  color: #6F767E;
}

.tpd-card-value {
  font-family: Jost, "Jost Fallback", sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 18px;
  line-height: 26px;
  display: flex;
  align-items: center;
  color: #141416;
}

.tpd-two-col {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 0;
  flex: 1 1 0%;
  min-height: 0;
  overflow: hidden;
}

.tpd-acts {
  flex-grow: 0;
  flex-shrink: 0;
  overflow-y: auto;
  height: 100%;
  padding-right: 8px;
  padding-bottom: 20px;
  box-sizing: border-box;
}

.tpd-resizer {
  width: 16px;
  cursor: col-resize;
  background: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background 0.2s;
  flex-shrink: 0;
  user-select: none;
  z-index: 10;
}
.tpd-resizer:hover, .tpd-resizer:active {
  background: #F2F3F5;
}
.tpd-resizer::after {
  content: "";
  width: 4px;
  height: 32px;
  background: #ECEDEE;
  border-radius: 2px;
}

.tpd-map {
  flex: 1 1 0%;
  min-width: 0;
  padding-right: 20px;
  display: block;
  min-height: 0;
  overflow-y: auto;
  height: 100%;
  padding-bottom: 20px;
  box-sizing: border-box;
}

.tpd-day-header {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding: 8px 20px;
  margin-bottom: 8px;
  background: #FAFAFA;
  border: 1px solid #ECEDEE;
  border-left: 4px solid var(--tpd-accent-color, transparent);
  border-radius: 8px;
  cursor: pointer;
}

.tpd-day-header .tpd-day-left {
  display: flex;
  align-items: center;
}

.tpd-day-header .rotate-180 {
  transform: rotate(180deg);
}

.tpd-act-list {
  padding-left: 8px;
  margin-bottom: 16px;
}

.tpd-act-item {
  --tpd-accent-color: transparent;
  display: flex;
  flex-direction: row;
  gap: 12px;
  align-items: center;
  padding: 10px 12px;
  border-radius: 8px;
  border: 1px solid transparent;
  border-left: 4px solid var(--tpd-accent-color, transparent);
  transition: background-color 0.15s ease, border-color 0.15s ease;
  cursor: pointer;
}

.tpd-act-item:hover {
  background: #FAFAFA;
  border-color: #ECEDEE;
}

.tpd-act-item.active {
  background: #F2F3F5;
  border-color: #ECEDEE;
}

.tpd-act-toggle {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid var(--tpd-accent-color, #ECEDEE);
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  color: var(--tpd-accent-color, #6F767E);
  font-size: 14px;
  font-weight: 600;
}

.tpd-act-toggle.done {
  background: #fff;
  border-color: #40B36A;
  color: #40B36A;
}

.tpd-act-num {
  line-height: 1;
}

.tpd-act-check {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #40B36A;
  font-size: 14px;
}

.tpd-act-rows {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tpd-act-line1 {
  font-weight: 600;
  font-size: 20px;
  line-height: 32px;
  min-height: 32px;
  display: flex;
  align-items: center;
  color: #141516;
  margin-top: 2px;
}

.tpd-act-line2 {
  color: #141516;
}

.tpd-act-line3 {
  color: #141516;
  font-size: 14px;
}

.tpd-act-line3 .label {
  color: #6F767E;
  margin-right: 8px;
}

.tpd-act-line3 app-datetime {
  color: #141516;
  margin-right: 24px;
}

.tpd-act-actions .btn-icon {
  padding: 0 6px;
}

.tpd-map-frame {
  width: 100%;
  height: clamp(340px, 45vh, 640px);
  background: #EDEFF1;
  border: 1px solid #ECEDEE;
  border-radius: 8px;
  position: relative;
}

.tpd-map-frame.placeholder {
  color: #6F767E;
}

.tpd-map-canvas {
  width: 100%;
  height: 100%;
  border-radius: 8px;
  overflow: hidden;
}

.tpd-map-marker {
  width: 18px;
  height: 18px;
  border-radius: 50% 50% 50% 0;
  background: var(--tpd-marker-color, #1E88E5);
  border: 2px solid #fff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  transform: rotate(-45deg);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.tpd-marker-container {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
}
.tpd-marker-container:hover {
  z-index: 101;
}
.tpd-marker-container:hover .tpd-map-marker {
  transform: scale(1.15) rotate(-45deg);
}
.tpd-marker-container.is-selected {
  z-index: 100;
}
.tpd-marker-container.is-selected .tpd-map-marker {
  transform: scale(1.3) rotate(-45deg);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
  border-color: #fff;
}

.tpd-marker-label {
  display: block;
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(255, 255, 255, 0.9);
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
  margin-bottom: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  pointer-events: none;
  color: #141516;
  border: 1px solid #ECEDEE;
}

.tpd-detail-card {
  box-sizing: border-box;
  background: #FFFFFF;
  border: 1px solid #ECEDEE;
  border-radius: 8px;
  padding: 18px;
  margin-bottom: 60px;
}

.tpd-detail-header {
  font-family: Jost, "Jost Fallback", sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 16px;
  color: #141516;
  margin-bottom: 12px;
}

.tpd-detail-comments {
  margin-top: 16px;
}

.tpd-detail-distances {
  margin-top: 16px;
  padding: 12px 16px;
  background: #F9FAFB;
  border: 1px solid #ECEDEE;
  border-radius: 8px;
}

.tpd-distance-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tpd-distance-item {
  display: flex;
  justify-content: space-between;
  font-size: 14px;
}

.tpd-distance-title {
  font-weight: 500;
  color: #141516;
}

.tpd-distance-value {
  font-weight: 500;
  color: #2563EB;
}

.tpd-detail-likes {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.tpd-detail-likes .btn-icon {
  padding: 0 6px;
  color: #6F767E;
}
.tpd-detail-likes .btn-icon:hover {
  color: #141516;
}
.tpd-detail-likes .btn-icon i {
  font-size: 16px;
}

.tpd-page .ot-content-right {
  height: calc(100vh - 320px) !important;
  overflow: hidden !important;
  padding-bottom: 0;
  display: flex !important;
  flex-direction: column !important;
}
.tpd-page .box-column {
  flex: 1 1 0%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: auto !important;
  padding-bottom: 0 !important;
}
.tpd-page .ot-content-left {
  height: auto !important;
  overflow: visible !important;
}
.tpd-page .ai-chat-box-col {
  height: auto;
}
.tpd-page .ai-chat-box-col .ai-container {
  height: auto;
  overflow: visible;
}
.tpd-page .ai-chat-box-col .wrap-ai-content {
  height: auto;
  padding-bottom: 12px;
}

.custom-dropdown-item {
  transition: all 0.2s ease-in-out;
  border-radius: 4px;
  padding: 8px 12px;
}
.custom-dropdown-item:hover {
  background-color: #f0f4ff;
  color: #2563eb;
  transform: translateX(4px);
}
.custom-dropdown-item.active {
  background-color: #eff6ff;
  color: #1e40af;
  font-weight: 600;
}

.travel-365-tree-table {
  table-layout: fixed;
  min-width: 680px;
}
.travel-365-tree-table .travel-365-location-column {
  width: 28%;
  min-width: 240px;
}
.travel-365-tree-table .travel-365-dates-column {
  width: auto;
}
.travel-365-tree-table .travel-365-days-column {
  width: 105px;
  text-align: right;
  white-space: nowrap;
}
.travel-365-tree-table td:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
}
.travel-365-tree-table td:nth-child(2) {
  vertical-align: middle;
  line-height: 1.8;
}
.travel-365-tree-table .travel-365-date-chips {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  min-width: 0;
}
.travel-365-tree-table .travel-365-date-chip {
  margin: 0 !important;
  line-height: 1.35;
  white-space: nowrap;
}
.travel-365-tree-table .travel-365-location-name {
  min-width: 0;
  overflow-wrap: anywhere;
}
.travel-365-tree-table .wrap-project-title {
  min-height: 28px;
  min-width: 0;
  gap: 4px;
  padding-left: calc(var(--travel-tree-level, 0) * 22px);
  margin-left: 0 !important;
  align-items: flex-start !important;
}
.travel-365-tree-table .ex-button {
  flex: 0 0 20px;
  margin-right: 2px;
}

.travel-365-matrix-location {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 8px;
  color: #546171;
  font-size: 12px;
}
.travel-365-matrix-location .fa-location-dot {
  color: #2563eb;
}

.travel-365-matrix-table {
  min-width: 1220px;
  table-layout: fixed;
}
.travel-365-matrix-table th,
.travel-365-matrix-table td {
  min-width: 92px;
}
.travel-365-matrix-table th.fixed-column,
.travel-365-matrix-table td.fixed-column {
  min-width: 100px;
  background: #fff;
}
.travel-365-matrix-table .travel-365-matrix-quarter-row th:not(.fixed-column) {
  color: #1e3a8a;
  background: #dbeafe;
}
.travel-365-matrix-table .travel-365-matrix-season-row th {
  color: #475569;
  background: #f1f5f9;
}
.travel-365-matrix-table .travel-365-matrix-season-unavailable {
  color: #9a6700 !important;
  background: #fff8db !important;
}
.travel-365-matrix-table td {
  vertical-align: top;
}

.travel-365-matrix-records {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
}
.travel-365-matrix-records li + li {
  margin-top: 5px;
}

.travel-365-map-shell {
  position: relative;
  min-height: 420px;
  overflow: hidden;
  border: 1px solid #e6ebf2;
  border-radius: 10px;
  background: #eef4f8;
}
.travel-365-map-shell #travel-365-map {
  width: 100%;
  height: 600px;
}

.travel-365-map-status {
  position: absolute;
  top: 16px;
  left: 50%;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: calc(100% - 32px);
  padding: 8px 12px;
  border: 1px solid rgba(37, 99, 235, 0.18);
  border-radius: 999px;
  color: #2456b7;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 4px 14px rgba(31, 55, 79, 0.12);
  font-size: 12px;
  transform: translateX(-50%);
}
.travel-365-map-status--error {
  border-color: rgba(211, 89, 89, 0.25);
  color: #a73f3f;
}

@media (max-width: 768px) {
  .travel-365-map-shell #travel-365-map {
    height: 420px;
  }
}
.travel-gps-page .mf-content {
  min-width: 0;
  box-sizing: border-box;
  padding-inline: 15px;
}

.travel-gps-page-header .ph-right {
  padding-bottom: 2px;
}

.travel-gps-alert {
  margin: 0 0 16px;
}

.travel-gps-table-shell {
  border: 1px solid #ecedee;
  border-radius: 8px;
  background: #FFFFFF;
}

.travel-gps-history-table {
  min-width: 1160px;
  margin-bottom: 0;
  table-layout: fixed;
}
.travel-gps-history-table th,
.travel-gps-history-table td {
  vertical-align: middle;
}
.travel-gps-history-table th:nth-child(1) {
  width: 22%;
}
.travel-gps-history-table th:nth-child(2) {
  width: 10%;
}
.travel-gps-history-table th:nth-child(3) {
  width: 9%;
}
.travel-gps-history-table th:nth-child(4) {
  width: 14%;
}
.travel-gps-history-table th:nth-child(5) {
  width: 9%;
}
.travel-gps-history-table th:nth-child(6) {
  width: 18%;
}
.travel-gps-history-table th:nth-child(7),
.travel-gps-history-table th:nth-child(8),
.travel-gps-history-table th:nth-child(9) {
  width: 6%;
}
.travel-gps-history-table td {
  color: #383c40;
}
.travel-gps-history-table td:nth-child(6) {
  overflow-wrap: anywhere;
  white-space: normal;
}

.travel-gps-history-row {
  cursor: pointer;
  transition: background-color 150ms ease, box-shadow 150ms ease;
}
.travel-gps-history-row:hover {
  background-color: #f7faff;
}
.travel-gps-history-row:focus-visible {
  position: relative;
  z-index: 1;
  outline: 3px solid rgba(37, 99, 235, 0.32);
  outline-offset: -3px;
}

.travel-gps-trip-link {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  min-width: 0;
  color: #141516;
  text-decoration: none;
}
.travel-gps-trip-link > span:last-child {
  min-width: 0;
  flex: 1 1 auto;
}
.travel-gps-trip-link:hover {
  color: #266DF0;
}
.travel-gps-trip-link small {
  display: block;
  margin-top: 2px;
  color: #9298a0;
  font-size: 11px;
}

.travel-gps-trip-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 8px;
  color: #266DF0;
  background: #EEF3FF;
}

.travel-gps-trip-title {
  display: block;
  overflow-wrap: anywhere;
  white-space: normal;
  font-weight: 500;
  line-height: 1.35;
}

.travel-gps-status,
.travel-gps-health {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 4px 9px;
  border-radius: 999px;
  background: #f1f2f3;
  color: #696969;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  text-transform: capitalize;
}

.travel-gps-status--large {
  padding: 7px 12px;
  font-size: 13px;
}

.travel-gps-status.status-active,
.travel-gps-status.status-starting,
.travel-gps-status.status-approaching,
.travel-gps-status.status-arrived,
.travel-gps-status.status-completing,
.travel-gps-health.status-healthy {
  background: #eaf8f0;
  color: #2f895c;
}

.travel-gps-status.status-completed {
  background: #EEF3FF;
  color: #266DF0;
}

.travel-gps-status.status-cancelled,
.travel-gps-status.status-canceled,
.travel-gps-status.status-expired,
.travel-gps-status.status-failed-start,
.travel-gps-health.status-offline {
  background: #fff0f0;
  color: #F54949;
}

.travel-gps-health.status-delayed,
.travel-gps-health.status-permission-limited {
  background: #fff7e6;
  color: #ad7412;
}

.travel-gps-load-more {
  display: flex;
  justify-content: center;
  padding: 18px 0 4px;
}

.travel-gps-loading,
.travel-gps-map-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 180px;
  color: #696969;
  text-align: center;
}

.travel-gps-map-empty {
  min-height: clamp(320px, 45vh, 580px);
  padding: 24px;
  border: 1px solid #ecedee;
  border-radius: 8px;
  background: #f8f8f8;
}
.travel-gps-map-empty i {
  margin-bottom: 4px;
  color: #9ba3ad;
  font-size: 28px;
}
.travel-gps-map-empty strong {
  color: #141516;
  font-weight: 500;
}

.travel-gps-detail-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 12px;
}
.travel-gps-detail-heading h1 {
  margin: 0;
  color: #141516;
  font-size: 23px;
  font-weight: 600;
}

.travel-gps-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
  margin-bottom: 14px;
}

.travel-gps-summary-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 58px;
  padding: 9px 12px;
  border: 1px solid #ecedee;
  border-radius: 8px;
  background: #f8f8f8;
}
.travel-gps-summary-card strong {
  overflow: hidden;
  color: #141516;
  font-size: 14px;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: normal;
  line-height: 1.3;
}

.travel-gps-summary-label,
.travel-gps-muted {
  color: #6f767e;
  font-size: 10px;
}

.travel-gps-summary-label {
  margin-bottom: 2px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.travel-gps-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 18px;
  align-items: start;
}

.travel-gps-map-panel,
.travel-gps-detail-panel {
  min-width: 0;
  border: 1px solid #ecedee;
  border-radius: 10px;
  background: #FFFFFF;
}

.travel-gps-map-panel {
  padding: 16px;
}

.travel-gps-section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.travel-gps-section-heading h2,
.travel-gps-section-heading p {
  margin: 0;
}
.travel-gps-section-heading h2 {
  color: #141516;
  font-size: 16px;
  font-weight: 500;
}
.travel-gps-section-heading p {
  margin-top: 2px;
  color: #9298a0;
  font-size: 12px;
}

.travel-gps-map-frame {
  width: 100%;
  height: clamp(320px, 48vh, 620px);
  overflow: hidden;
  border: 1px solid #ecedee;
  border-radius: 8px;
  background: #edeff1;
}

.travel-gps-map-canvas {
  width: 100%;
  height: 100%;
}

.travel-gps-map-marker {
  width: 16px;
  height: 16px;
  border: 2px solid #FFFFFF;
  border-radius: 50%;
  box-shadow: 0 2px 6px rgba(20, 21, 22, 0.28);
}

.travel-gps-map-marker--navigation {
  position: relative;
  width: 24px;
  height: 24px;
  border: 0;
  background: transparent !important;
  box-shadow: none;
  filter: drop-shadow(0 2px 3px rgba(20, 21, 22, 0.3));
}
.travel-gps-map-marker--navigation::before, .travel-gps-map-marker--navigation::after {
  position: absolute;
  inset: 0;
  content: "";
  clip-path: polygon(50% 0, 100% 100%, 50% 76%, 0 100%);
}
.travel-gps-map-marker--navigation::before {
  background: #FFFFFF;
}
.travel-gps-map-marker--navigation::after {
  inset: 3px;
  background: currentColor;
}

.travel-gps-map-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-top: 10px;
  color: #6f767e;
  font-size: 12px;
}
.travel-gps-map-legend span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.travel-gps-legend-swatch {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #9ba3ad;
}
.travel-gps-legend-swatch--route {
  width: 16px;
  height: 4px;
  border-radius: 999px;
  background: #2563EB;
}
.travel-gps-legend-swatch--start {
  background: #16A34A;
}
.travel-gps-legend-swatch--end {
  background: #2563EB;
}
.travel-gps-legend-swatch--destination {
  background: #DC2626;
}
.travel-gps-legend-swatch--stop {
  background: #F97316;
}

.travel-gps-detail-panel {
  padding: 0 18px;
}

.travel-gps-detail-section {
  padding: 18px 0;
  border-bottom: 1px solid #ecedee;
}
.travel-gps-detail-section:last-child {
  border-bottom: 0;
}
.travel-gps-detail-section h2 {
  margin: 0 0 12px;
  color: #141516;
  font-size: 15px;
  font-weight: 500;
}

.travel-gps-location-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 7px 0;
}
.travel-gps-location-row div {
  min-width: 0;
}
.travel-gps-location-row small,
.travel-gps-location-row strong {
  display: block;
}
.travel-gps-location-row small {
  margin-bottom: 2px;
  color: #9298a0;
  font-size: 11px;
}
.travel-gps-location-row strong {
  overflow: hidden;
  color: #141516;
  font-size: 13px;
  font-weight: 400;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.travel-gps-location-dot {
  width: 10px;
  height: 10px;
  margin-top: 4px;
  flex: 0 0 10px;
  border-radius: 50%;
  background: #9ba3ad;
}
.travel-gps-location-dot--start {
  background: #16A34A;
}
.travel-gps-location-dot--current {
  background: #2563EB;
}
.travel-gps-location-dot--last {
  background: #2563EB;
}
.travel-gps-location-dot--destination {
  background: #DC2626;
}

.travel-gps-detail-value {
  color: #141516;
  font-size: 23px;
  font-weight: 500;
}

.travel-gps-weather {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.travel-gps-weather strong {
  color: #141516;
  font-size: 16px;
  font-weight: 600;
}
.travel-gps-weather small {
  color: #9298a0;
  font-size: 11px;
  font-weight: 600;
}
.travel-gps-weather span {
  color: #141516;
  font-size: 16px;
  font-weight: 600;
}

.travel-gps-weather-list {
  display: grid;
  gap: 12px;
}

@media (max-width: 1100px) {
  .travel-gps-detail-layout {
    grid-template-columns: minmax(0, 1fr) 290px;
  }
  .travel-gps-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  }
}
@media (max-width: 768px) {
  .travel-gps-page .mf-content {
    padding-inline: 10px;
  }
  .travel-gps-detail-heading {
    align-items: flex-start;
    flex-direction: column;
  }
  .travel-gps-detail-layout {
    grid-template-columns: 1fr;
  }
  .travel-gps-summary-grid {
    grid-template-columns: 1fr 1fr;
  }
  .travel-gps-map-frame {
    height: 380px;
  }
}
@media (max-width: 480px) {
  .travel-gps-summary-grid {
    grid-template-columns: 1fr;
  }
}
.live-trip-handoff {
  min-height: 100dvh;
  display: grid;
  place-items: center;
  padding: 24px;
  background: #EEF3FF;
}

.live-trip-handoff__card {
  width: min(100%, 560px);
  padding: 30px;
  background: #FFFFFF;
  border: 1px solid #ECEDEE;
  border-radius: 18px;
  box-shadow: 0 18px 48px rgba(16, 24, 40, 0.12);
}

.live-trip-handoff__brand {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #141516;
  font-size: 18px;
  font-weight: 700;
}

.live-trip-handoff__brand-mark,
.live-trip-handoff__icon {
  width: 48px;
  height: 48px;
  display: inline-grid;
  place-items: center;
  color: #FFFFFF;
  background: linear-gradient(145deg, #1fcaff, #1261e8);
  border-radius: 14px;
}

.live-trip-handoff__content {
  display: grid;
  justify-items: center;
  gap: 12px;
  padding-top: 56px;
  text-align: center;
}

.live-trip-handoff__content h1 {
  margin: 0;
  color: #141516;
  font-size: clamp(24px, 5vw, 34px);
  line-height: 1.15;
}

.live-trip-handoff__content p {
  max-width: 430px;
  margin: 0;
  color: #383c40;
  line-height: 1.55;
}

.live-trip-handoff__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 12px;
}

.live-trip-handoff__spinner {
  width: 32px;
  height: 32px;
  border: 3px solid rgba(18, 97, 232, 0.18);
  border-top-color: #1261e8;
  border-radius: 50%;
  animation: live-trip-handoff-spin 800ms linear infinite;
}

.live-trip-handoff__icon--danger {
  color: #a62336;
  background: #fff0f2;
}

@keyframes live-trip-handoff-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .live-trip-handoff__spinner {
    animation: none;
  }
}

/*# sourceMappingURL=style.css.map */
