@font-face {
  font-family: 'DIN';
  src: url('https://use.typekit.net/af/c2b6e5/00000000000000007735afee/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3');
}

@font-face {
  font-family: 'DIN-SNA';
  src: url('/gptoolbox/sfsites/c/resource/tb_globalAssets/snaFont');
}

*,
:after,
:before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

:root {
  --dxp-s-body-font-family: 'DIN', 'DIN-SNA', sans-serif !important;
  --dxp-s-body-small-font-family: var(--dxp-s-body-font-family);
  --dxp-s-button-font-family: inherit;
  --dxp-s-form-element-caption-text-font-family: inherit;
  --dxp-s-form-element-label-font-family: inherit;
  --dxp-s-form-element-text-font-family: inherit;
  --dxp-s-text-heading-extra-extra-small-font-family: inherit;
  --dxp-s-text-heading-extra-large-font-family: inherit;
  --dxp-s-text-heading-extra-small-font-family: inherit;
  --dxp-s-text-heading-large-font-family: inherit;
  --dxp-s-text-heading-medium-font-family: inherit;
  --dxp-s-text-heading-small-font-family: inherit;

  --dxp-s-form-element-radius-border: 0;
  --dxp-s-button-radius-border: 0;
}

html,
body {
  font-family: var(--dxp-s-body-font-family);
}

::placeholder {
  color: var(--tb-color_gray) !important;
}

/*tooltip focus and tabbing*/
.slds-button:focus, lightning-button::part(button):focus, lightning-button-menu::part(button):focus {
  box-shadow: none
}

.slds-button:focus-visible, lightning-button::part(button):focus-visible, lightning-button-menu::part(button):focus-visible {
  box-shadow: var(--sds-c-button-shadow-focus, 0 0 0 2px var(--dxp-s-button-color-focus, var(--dxp-g-brand-1, #0176d3)))
}
/****/

/*select order toggle focus and tabbing*/
.slds-checkbox_toggle [type=checkbox]:focus+.slds-checkbox_faux_container .slds-checkbox_faux{
  box-shadow: none;
}
.slds-checkbox_toggle [type=checkbox]:focus-visible+.slds-checkbox_faux_container .slds-checkbox_faux{
  box-shadow: var(--sds-c-checkbox-toggle-shadow-focus, var(--slds-g-shadow-outset-focus-1, 0 0 3px #0176d3));
}

/********** Layout **********/

community_layout-column {
  width: 100% !important;
}

/********** Links **********/

a {
  pointer-events: all;
}

/********** Form Fields **********/

.slds-form-element__help {
  font-family: inherit;
}

.slds-form-element {
  margin-bottom: 0;
}

.slds-dropdown-trigger_click.slds-is-open .slds-dropdown {
  box-shadow: none;
  border: 1px solid var(--tb-color_gray);
  border-radius: 0;
}

.slds-form-element__label {
  font-size: var(--tb-size-medium_custom1);
  color: var(--tb-color_blueGray);
}

.slds-has-error .slds-input__icon {
  background-color: white;
}

.slds-textarea {
  border: 1px solid var(--Gray, #a3a9b3);
  border-radius: 0 !important;
  height: 4rem;
  font-family: inherit;
  color: var(--tb-color_blueGray);
  font-size: 1rem;
}

/********** Modal **********/

.slds-backdrop_open {
  backdrop-filter: blur(8px);
}

/********** Icons **********/

.slds-icon_container svg {
  fill: var(--tb-color_gpBlue);
}

/********** Media **********/

.slds-media--center,
.slds-media_center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.slds-media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

/********** Breadcrumbs **********/

.slds-breadcrumb .slds-breadcrumb__item:before {
  color: transparent;
  background: url(/gptoolbox/sfsites/c/resource/tb_globalAssets/icons/chevronDown.svg);
  background-repeat: no-repeat;
  background-position: center center;
}

/********** Progress Bar **********/

.slds-progress__item.slds-is-completed .slds-progress__marker {
  background: none;
}

.slds-progress__item.slds-is-active .slds-progress__marker,
.slds-progress__item.slds-is-completed .slds-progress__marker {
  background: var(--tb-color_gpBlue);
  border-color: var(--tb-color_gpBlue);
}

.slds-progress_vertical .slds-progress__item:before,
.slds-progress_vertical .slds-progress__item:after {
  background: repeating-linear-gradient(0deg, #a3a9b3 0 7px, #0000 0 10px);
}

.slds-progress_vertical .slds-progress__item.slds-is-completed:after,
.slds-progress_vertical .slds-progress__item.slds-is-completed:before,
.slds-progress_vertical .slds-progress__item.slds-is-active:before {
  background: repeating-linear-gradient(0deg, var(--tb-color_gpBlue) 0 7px, #0000 0 10px);
}

/********** Datatables **********/

.slds-max-medium-table_stacked-horizontal td,
.slds-max-medium-table_stacked-horizontal th {
  word-break: break-all;
}

.slds-max-medium-table_stacked-horizontal td span.slds-grid_align-end {
  justify-content: flex-start;
}

.slds-max-medium-table_stacked-horizontal.tableCss table > thead .slds-th__action {
  padding: var(--tb-size-medium);
}

/********** Pills **********/

lightning-pill {
  color: var(--tb-color_gpBlue);
  --dxp-g-brand: var(--tb-color_gpBlue, #015292);
  --slds-c-pill-color-background: rgba(1, 82, 146, 0.05);
  --slds-c-pill-radius-border: 100px;
  --slds-c-pill-color-border: rgba(1, 82, 146, 0.05);
  --slds-c-pill-action-color-border: var(--tb-color_gpBlue);
  --sds-c-pill-spacing-block-start: 0.25rem;
  --sds-c-pill-spacing-block-end: 0.25rem;
  --sds-c-pill-spacing-inline-start: 0.5rem;
  --sds-c-pill-spacing-inline-end: 0.5rem;
  text-transform: uppercase;
  margin-right: 8px;
}

/* lightning-pill .slds-pill {
  margin-bottom: var(--tb-size-small_custom2);
} */

.slds-pill__remove svg {
  background: url(/gptoolbox/sfsites/c/resource/tb_globalAssets/icons/xround.svg);
  color: transparent;
  margin-bottom: 6px;
}

/********** Vertical List **********/

div.slds-listbox_selection-group span.slds-listbox-toggle .slds-button {
  background: rgba(1, 82, 146, 0.05);
  padding: 8px;
  border-radius: 100px;
  text-transform: uppercase;
  font-size: 14px;
  margin-left: 0.5rem;
  font-weight: 600;
}

.slds-listbox--vertical .slds-listbox__option--plain {
  padding: 0.5rem 0.75rem;
  border-bottom: 1px solid var(--gray, #a3a9b3);
}

/* Fix for new salesforce update to remove a blue colored border around inputs and options of comboboxes. */
.slds-listbox_vertical .slds-listbox__option:hover,
.slds-listbox_vertical .slds-listbox__option.slds-has-focus,
.slds-listbox_vertical .slds-listbox__option:focus {
  box-shadow: none;
}

div.slds-listbox_vertical .slds-listbox__option_plain {
  padding: 0.5rem 1rem;
}

.slds-nav-vertical__item.slds-is-active .slds-nav-vertical__action {
  box-shadow: none;
  text-decoration: none;
  color: var(--tb-color_blueGray);
}

/********** Toasts **********/

.slds-notify_toast {
  color: white;
}

.slds-notify_toast.slds-theme_success,
.slds-notify_toast.slds-theme_info {
  background-color: var(--tb-color_successGreen);
}

.slds-notify .slds-notify_toast .fix-notify_toast_animation .slds-theme_error {
  background-color: var(--tb-color_red);
}

.slds-notify__content slot[name='message'] {
  display: none;
}

div.slds-notify__content {
  max-width: 27rem;
}

.slds-notify__close lightning-button-icon button lightning-primitive-icon svg.slds-button__icon {
  fill: white !important;
}

.slds-notify .slds-icon__container,
.slds-notify .slds-icon_container {
  display: none;
}

.slds-notify .slds-text-heading_small {
  font-family: inherit;
}

lightning-toast a {
  color: white !important;
}

/********** Buttons **********/

.slds-button {
  font-family: inherit;
  font-weight: 600;
  /* color: inherit; */
}

lightning-button .slds-button_brand {
  border-radius: 6.25rem;
  background: var(--gp-blue, #015292);
  color: var(--tb-color_white, #fff);
  padding: var(--tb-size-medium_custom1) var(--tb-size-large);
  font-size: var(--tb-size-medium);
  font-weight: 600;
  line-height: 1;
}

lightning-button .slds-button_brand:hover,
lightning-button .slds-button_brand:active {
  background-color: var(--tb-color_navy, #122f53) !important;
  color: var(--tb-color_white, #fff) !important;
  padding: var(--tb-size-medium_custom1) var(--tb-size-large);
  font-size: var(--tb-size-medium);
  font-weight: 600;
}

lightning-button .slds-button:focus {
  outline: 0 !important;
}

lightning-button .slds-button_brand:disabled {
  border: 1px solid var(--tb-color_offWhite, #f8f8f8);
  background: var(--tb-color_offWhite, #f8f8f8) !important;
  color: var(--tb-color_gray, #a3a9b3) !important;
  padding: var(--tb-size-medium_custom1) var(--tb-size-large);
  font-size: var(--tb-size-medium);
  font-weight: 600;
}
lightning-button.grey-bg-disable-cta .slds-button_brand:disabled {
  border: 1px solid var(--tb-color_white, #ffffff);
  background: var(--tb-color_white, #ffffff) !important;
}

lightning-button .slds-button_neutral {
  border-radius: 6.25rem;
  border: 1px solid var(--gp-blue, #015292);
  background-color: var(--tb-color_white, #fff);
  color: var(--gp-blue, #015292) !important;
  padding: var(--tb-size-medium_custom1) var(--tb-size-large);
  font-size: var(--tb-size-medium);
  font-weight: 600;
  line-height: 1;
}

lightning-button .slds-button_neutral:hover,
lightning-button .slds-button_neutral:active {
  border-radius: 6.25rem;
  border: 2px solid var(--tb-color_navy, #122f53);
  color: var(--tb-color_navy, #122f53) !important;
  background-color: var(--tb-color_white, #fff);
  padding: var(--tb-size-medium_custom1) var(--tb-size-large);
  font-size: var(--tb-size-medium);
  font-weight: 600;
}

lightning-button .slds-button_neutral:disabled {
  border-radius: 6.25rem;
  border: 1px solid var(--tb-color_gray, #a3a9b3);
  color: var(--tb-color_gray, #a3a9b3) !important;
  padding: var(--tb-size-medium_custom1) var(--tb-size-large);
  font-size: var(--tb-size-medium);
  font-weight: 600;
}

lightning-button[variant='base'] .slds-button:not(:disabled) {
  color: var(--tb-color_gpBlue);
}

lightning-button[variant='base'] .slds-button:not(:disabled):hover {
  color: var(--tb-color_navy);
}

lightning-button[variant='base'] .slds-button:after {
  background-color: var(--tb-color_highlight);
  height: 0.25rem;
  transition: none;
  bottom: 1.875rem;
}

/********** Inputs **********/

.slds-input__icon {
  margin-top: -0.8rem;
}

.slds-input::placeholder {
  color: var(--tb-color_gray);
}

.slds-input-has-icon .slds-input__icon:not(button) {
  pointer-events: all;
}

.slds-input:active {
  box-shadow: none;
}

lightning-input input.slds-input,
.gp-input-elm.slds-input {
  font-size: var(--tb-size-medium);
  color: var(--tb-color_navy);
  background-color: var(--tb-color_white, #fff) !important;
  border: 1px solid var(--tb-color_gray);
  padding: var(--tb-size-x_small) var(--tb-size-small);
  height: 40px;
  border-radius: 0;
}

lightning-input label.slds-form-element__label {
  font-size: var(--tb-size-medium_custom1);
  color: var(--tb-color_blueGray);
  margin-bottom: var(--tb-size-x_small);
}

lightning-input .slds-form-element__label abbr {
  float: right;
}

lightning-input input[disabled] {
  border: none;
  background-color: var(--tb-color_offWhite) !important;
  --slds-g-color-neutral-base-50: var(--tb-color_navy);
}

lightning-input:disabled {
  margin-bottom: 2.25rem;
}

[lightning-input_input] label {
  font-size: 8px;
}

lightning-input-address .slds-form-element__row:not(:first-child) {
  display: none;
}

/********** Combobox **********/

lightning-combobox span.slds-truncate {
  font-size: var(--tb-size-medium);
  color: var(--tb-color_navy);
  font-weight: var(--tb-font-weight-light);
}

lightning-combobox label.slds-form-element__label {
  font-size: var(--tb-size-medium_custom1);
  color: var(--tb-color_blueGray);
  margin-bottom: var(--tb-size-x_small);
}

lightning-combobox label abbr {
  float: right;
}

lightning-combobox .slds-truncate {
  font-family: inherit !important;
}

lightning-combobox button.slds-combobox__input[disabled] {
  border: none;
  background-color: var(--tb-color_offWhite);
}

[lightning-basecombobox_basecombobox] span {
  font-weight: bold;
  font-size: 12px;
}

lightning-combobox[data-name='hierarchyLevel'] label {
  font-size: 8px;
}

lightning-combobox[data-name='attribute'] label {
  font-size: 8px;
}

/********** Checkbox **********/

.slds-checkbox {
  --slds-c-checkbox-color-background-checked: var(--tb-color_highlight);
}

.slds-checkbox [type='checkbox']:checked + .slds-checkbox__label .slds-checkbox_faux {
  background-color: var(--tb-color_highlight);
  border-color: var(--tb-color_gpBlue);
  --slds-c-checkbox-mark-color-foreground: var(--tb-color_gpBlue);
  border-radius: 0%;
  border-style: solid;
}

.slds-checkbox [type='checkbox']:checked + .slds-checkbox__label .slds-checkbox_faux::after {
  height: 0.35rem;
  width: 0.75rem;
  top: 45%;
  border-color: var(--tb-color_gpBlue);
}

.slds-checkbox [type='checkbox'][disabled]:checked + .slds-checkbox__label .slds-checkbox_faux {
  background-color: var(--tb-color_gray);
  border-color: var(--tb-color_gray);
  --slds-c-checkbox-mark-color-foreground: var(--tb-color_offWhite);
  border-radius: 0%;
  border-style: solid;
  width: var(--tb-size-large);
  height: var(--tb-size-large);
}

.slds-checkbox [type='checkbox'][disabled]:checked + .slds-checkbox__label .slds-checkbox_faux::after {
  border-color: var(--tb-color_offWhite);
  width: var(--tb-size-medium_custom1);
  height: 6px;
  top: 10px;
}

.slds-checkbox [type='checkbox'][disabled] + .slds-checkbox__label .slds-checkbox_faux {
  width: var(--tb-size-large);
  height: var(--tb-size-large);
  border-radius: 0%;
  border-style: solid;
  border-color: var(--tb-color_gray);
}

.slds-checkbox [type='checkbox'] + .slds-checkbox__label .slds-checkbox_faux {
  border-radius: 0px;
  border-color: var(--tb-color_gpBlue);
  width: var(--tb-size-large);
  height: var(--tb-size-large);
}

.slds-checkbox .slds-checkbox_faux {
  margin-right: var(--tb-size-medium);
}
td .slds-checkbox .slds-checkbox_faux{
  margin-right: var(--tb-size-x_small);
  margin-left: var(--tb-size-x_small);
}

/********** Radio **********/

.slds-radio [type='radio']:checked + .slds-radio__label .slds-radio_faux {
  background-color: var(--tb-color_highlight);
}

.slds-radio .slds-radio_faux {
  width: var(--tb-size-large);
  height: var(--tb-size-large);
  border-color: var(--tb-color_gpBlue);
}

.slds-radio .slds-radio_faux:after {
  width: var(--tb-size-small) !important;
  height: var(--tb-size-small) !important;
  background-color: var(--tb-color_gpBlue) !important;
}

/********** Toggle/Switch **********/

.slds-checkbox_toggle {
  --sds-c-checkbox-toggle-color-background: var(--tb-color_blueGray);
  --slds-c-checkbox-toggle-color-border: var(--tb-color_blueGray);
  --sds-c-checkbox-toggle-color-background-hover: var(--tb-color_blueGray);
  --sds-c-checkbox-toggle-color-background-focus: var(--tb-color_blueGray);

  flex-direction: row-reverse;
  gap: var(--tb-size-x_small);
  justify-content: flex-end;
  display: inline-flex;
  width: auto;
}

.slds-checkbox_toggle .slds-checkbox_faux:hover {
  --slds-c-checkbox-toggle-color-border: transparent;
}

.slds-checkbox_toggle [type='checkbox']:checked:not([disabled]) + .slds-checkbox_faux_container .slds-checkbox_faux {
  --sds-c-checkbox-toggle-color-background: var(--tb-color_gpBlue);
  --slds-c-checkbox-toggle-color-border: var(--tb-color_blueGray);
}

.slds-checkbox_toggle [type='checkbox']:not(:checked)[disabled] + .slds-checkbox_faux_container .slds-checkbox_faux::after {
  background-color: var(--tb-color_offWhite);
}

.slds-checkbox_toggle [type='checkbox']:checked[disabled] + .slds-checkbox_faux_container .slds-checkbox_faux::before {
  background-color: var(--tb-color_offWhite);
}

.slds-checkbox_toggle [type='checkbox'][disabled] + .slds-checkbox_faux_container .slds-checkbox_faux {
  background-color: var(--tb-color_gray);
  border-color: var(--tb-color_gray);
}

.slds-checkbox_toggle [type='checkbox']:checked + .slds-checkbox_faux_container .slds-checkbox_on,
.slds-checkbox_toggle [type='checkbox'] + .slds-checkbox_faux_container .slds-checkbox_off {
  display: none;
}

.slds-checkbox_toggle .slds-form-element__label {
  color: var(--tb-color_navy);
}

.slds-checkbox_toggle:has([type='checkbox'][disabled]) .slds-form-element__label {
  color: var(--tb-color_gray);
}

.slds-checkbox_toggle:has([type='checkbox'][disabled]) {
  cursor: not-allowed;
}

/********** Headings **********/

.gp-heading_navy-x_large {
  color: var(--tb-color_navy);
  font-size: var(--tb-size-x_large);
  font-weight: var(--tb-font-weight);
  line-height: var(--tb-size-large);
  border-bottom: var(--tb-size-xx_Small) solid var(--tb-color_highlight);
  margin-bottom: var(--tb-size-large);
  width: fit-content;
}

.gp-heading_navy-large {
  color: var(--tb-color_navy);
  font-size: var(--tb-size-medium_custom2);
  font-weight: var(--tb-font-weight);
  line-height: var(--tb-size-large);
  text-transform: uppercase;
}

.gp-heading_navy-small {
  color: var(--tb-color_navy);
  font-size: var(--tb-size-medium_custom1);
  font-weight: var(--tb-font-weight);
  line-height: var(--tb-size-medium);
}

.gp-text_large {
  color: var(--tb-color_blueGray);
  font-size: var(--tb-size-medium);
  font-weight: var(--tb-font-weight-light);
  line-height: var(--tb-size-medium_custom3);
}

.gp-text_large-dark {
  color: var(--tb-color_blueGray);
  font-size: var(--tb-size-medium);
  font-weight: var(--tb-font-weight);
  line-height: var(--tb-size-medium_custom3);
}

.gp-text_small {
  color: var(--tb-color_blueGray);
  font-size: var(--tb-size-medium_custom1);
  font-weight: var(--tb-font-weight-light);
  line-height: var(--tb-size-medium);
}

/********** Texts **********/

.gp-text_blueGray {
  color: var(--tb-color_blueGray);
}

.gp-text_gray {
  color: var(--tb-color_gray);
}

.gp-text_bold {
  font-weight: bold;
}

/********** Media Queries **********/

@media (max-width: 767px) {
  /* Modal */
  .slds-modal_large[c-modal_modal] .slds-modal__container[c-modal_modal] {
    width: auto !important;
  }

  /* Forms */
  .slds-form-element {
    margin-bottom: 0 !important;
  }

  /* Combobox */
  lightning-combobox label.slds-form-element__label {
    margin-top: 8px;
  }

  /* Datatable */
  .slds-max-medium-table_stacked-horizontal td {
    text-align: left;
  }

  .slds-max-medium-table_stacked-horizontal td,
  .slds-max-medium-table_stacked-horizontal th {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--tb-size-medium);
  }

  .slds-max-medium-table_stacked-horizontal.slds-table_bordered tbody th,
  .slds-max-medium-table_stacked-horizontal.slds-table_bordered tbody td {
    border-top: none;
  }

  .slds-max-medium-table_stacked-horizontal th:before {
    display: none;
  }

  .slds-max-medium-table_stacked-horizontal td:before {
    width: 100%;
    text-align: left;
    color: var(--tb-color_blueGray, #516277);
    font-size: 0.875rem;
    text-transform: capitalize;
    letter-spacing: normal;
  }

  .slds-max-medium-table_stacked-horizontal td > *,
  .slds-max-medium-table_stacked-horizontal th > * {
    width: 100%;
  }

  .slds-table--header-fixed_container,
  .slds-table_header-fixed_container {
    padding-top: 0;
  }
}
