/* General setup */
:root {
  --color-white: #fff;
  --color-off-white: #f3f5f6;
  --color-dark: #1f2937;
  --color-primary: #0070d2;
  --color-primary-dark: #1b96ff;
  --border-color: #e4e6e7;
  --border-color-primary: var(--color-primary);
  --border-color-primary-dark: var(--color-primary-dark);
  --table-bg-color: var(--color-white);
  --table-bg-color-off-white: #f7f7f8;
  --table-bg-color-darker: #eff0f0;
  --table-bg-color-darkest: #e4e6e7;
  --table-bg-color-hover: #e9f0f7;
  --table-bg-zebra-stripes-color: #fafafa;
  --table-bg-zebra-stripes-color-editable: #eff0f0;
  --table-input-bg-color-hover: #f8fafc;
  --table-bg-color-highlight: #ccffcc;
  --table-border-color: #dadbdd;
  --table-border-color-off-white: #dfe1e2;
  --table-border-color-darker: #d3d7d9;
  --table-border-color-darkest: #c9cdcf;
  --selection-color: #add9ff;
}

::selection {
  background: var(--selection-color) !important;
}

html {
  scroll-behavior: smooth;
  background-color: var(--background-color);
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-feature-settings: 'tnum';
}

body,
li {
  color: var(--color-dark);
}

/* Inputs */
input:not(.select2-input):not([type='checkbox']):not([type='radio']):not([type='edit']):not(.inline-editor):not(
    .tbl-focus-input
  ),
textarea,
select,
.uneditable-input {
  background-color: white;
  border: 1px solid var(--border-color);
  border-radius: 0.25rem;
  transition: border 0.1s linear, background-color 0.1s linear;
  padding: 0 1rem 0 0.75rem;
  box-shadow: none;
  box-sizing: border-box;
}

textarea {
  padding: 0.25rem 1rem 0.25rem 0.75rem;
}

input:not(.select2-input):not([type='checkbox']):not([type='radio']):not([type='edit']):not(.inline-editor):not(
    .tbl-focus-input
  ),
select,
.uneditable-input {
  line-height: 2rem;
  min-height: 2rem;
}

.input .fake-disabled-input {
  height: 1.125rem;
  line-height: 1.125rem;
}

select {
  padding: 0 4px;
}

.select2-search > .select2-input,
.select2-container .select2-choices {
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
  background-color: white;
  background-image: none;
  border: 1px solid var(--border-color);
  border-radius: 0.25rem;
  transition: border 0.1s linear, background-color 0.1s linear;
  line-height: 2rem;
  min-height: 2rem;
}

.select2-search > .select2-input {
  padding: 0 1rem 0 0.75rem;
}

.select2-container .select2-choices {
  padding: 0 0.5rem 0 0;
}

.select2-container .select2-choices .select2-search-choice {
  border: 1px solid #dddbda;
  transition: border 0.15s linear;
  border-color: #dddbda;
  background-color: white;
  background-image: none;
  box-shadow: none;
  margin: 4px 0 4px 5px;
  padding: 3px 5px 3px 18px;
}

.select2-container .select2-choices .select2-search-choice .select2-search-choice-close {
  top: 3px;
}

.select2-container-multi .select2-choices .select2-search-field input {
  height: 18px;
}

input:not(.select2-input):not([type='checkbox']):not([type='radio']):not([type='edit']):not(.inline-editor):focus,
textarea:focus,
select:focus,
.select2-search > .select2-input:focus {
  border-color: var(--border-color-primary-dark);
  background-color: #fff;
  box-shadow: 0 0 3px #0176d3;
  -webkit-box-shadow: 0 0 3px #0176d3;
  outline: 0 !important;
}

input:not(.select2-input):not([type='checkbox']):not([type='radio']):not([type='edit']):not(.inline-editor)[disabled],
input:not(.select2-input):not([type='checkbox']):not([type='radio']):not([type='edit']):not(.inline-editor):disabled,
textarea[disabled],
textarea:disabled,
select[disabled],
select:disabled,
.select2-search > .select2-input[disabled],
.select2-search > .select2-input:disabled,
.slds .select2-container.select2-container-disabled a.select2-choice,
.select2-container.select2-container-disabled .select2-choice,
.select2-container.select2-container-disabled .select2-choice > div,
.select2-container.select2-container-multi.select2-container-disabled .select2-choices,
.well input:disabled,
.well select:disabled,
.input .fake-disabled-input {
  background-color: #eff0f0;
  border-color: #d1d3d4;
  color: #757578;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  box-shadow: none;
}

/* Buttons */
.page-content > :not(.finale-slds) .btn,
.modal .btn {
  position: relative;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
  align-items: center;
  padding: 0;
  background: transparent;
  background-clip: border-box;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  line-height: 1.875rem;
  text-decoration: none;
  color: var(--color-primary);
  -webkit-appearance: none;
  white-space: normal;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-image: none;
  box-shadow: none;
  text-shadow: none;
  font-weight: 400;
}

.page-content > :not(.finale-slds) .btn:not(.primary):not(.success),
.modal .btn:not(.primary):not(.success) {
  padding-left: 1rem;
  padding-right: 1rem;
  text-align: center;
  vertical-align: middle;
  -ms-flex-pack: center;
  justify-content: center;
  border: 1px solid var(--border-color);
  transition: border 0.15s linear;
  background-color: white;
}

.page-content > :not(.finale-slds) .btn:not(.primary):not(.success):active,
.modal .btn:not(.primary):not(.success):active {
  background-color: #eef1f6;
  color: #005fb2;
}

.page-content > :not(.finale-slds) .btn:not(.primary):not(.success):hover,
.page-content > :not(.finale-slds) .btn:not(.primary):not(.success):focus,
.modal .btn:not(.primary):not(.success):hover,
.modal .btn:not(.primary):not(.success):focus {
  background-color: #f4f6f9;
  color: #005fb2;
}

.page-content > :not(.finale-slds) .btn:not(.primary):not(.success):focus,
.modal .btn:not(.primary):not(.success):focus {
  outline: 0;
  box-shadow: 0 0 3px var(--color-primary);
}

.page-content > :not(.finale-slds) .btn.success,
.modal .btn.success,
.page-content > :not(.finale-slds) .btn.primary,
.modal .btn.primary,
.page-content > :not(.finale-slds) .btn.primary:disabled,
.page-content > :not(.finale-slds) .btn.primary[disabled],
.page-content > :not(.finale-slds) .btn.primary:disabled:hover,
.page-content > :not(.finale-slds) .btn.success:disabled,
.page-content > :not(.finale-slds) .btn.success[disabled],
.page-content > :not(.finale-slds) .btn.success:disabled:hover {
  padding-left: 1rem;
  padding-right: 1rem;
  text-align: center;
  vertical-align: middle;
  -ms-flex-pack: center;
  justify-content: center;
  border: 1px solid var(--border-color-primary);
  transition: border 0.15s linear;
  background-color: var(--color-primary);
  color: white;
}

.page-content > :not(.finale-slds) .btn.success:active,
.page-content > :not(.finale-slds) .btn.success:hover,
.page-content > :not(.finale-slds) .btn.success:focus,
.modal .btn.success:active,
.modal .btn.success:hover,
.modal .btn.success:focus,
.page-content > :not(.finale-slds) .btn.primary:active,
.page-content > :not(.finale-slds) .btn.primary:hover,
.page-content > :not(.finale-slds) .btn.primary:focus,
.modal .btn.primary:active,
.modal .btn.primary:hover,
.modal .btn.primary:focus {
  background-color: #005fb2;
  border-color: #005fb2;
  color: white;
}

.page-content > :not(.finale-slds) .btn.success:focus,
.modal .btn.success:focus,
.page-content > :not(.finale-slds) .btn.primary:focus,
.modal .btn.primary:focus {
  outline: 0;
  box-shadow: 0 0 3px var(--color-primary);
}

.btn:disabled,
.btn[disabled] {
  user-select: none;
  opacity: 0.5;
}

.page-content > :not(.finale-slds) .btn:not(.primary):not(.success):disabled,
.page-content > :not(.finale-slds) .btn:not(.primary):not(.success)[disabled],
.page-content > :not(.finale-slds) .btn:not(.primary):not(.success):disabled:hover {
  background-color: #fff;
  border-color: #cfd1d3;
  color: #71767a;
}

.finale-slds .slds-button--finale-sync {
  width: 142px;
}

/* Selects */
select,
input[type='file'] {
  height: 32px;
  line-height: 28px;
}

.select2-container .select2-choice div,
.select2-container .select2-choice {
  background-color: #fff;
  background-image: none;
  box-shadow: none;
  border-color: var(--border-color);
  min-height: 30px;
  line-height: 30px;
}

/* Dropdowns */
.action-links ul {
  border: 1px solid var(--border-color);
  border-radius: 0.25rem;
  font-size: 0.75rem;
  background: white;
  box-shadow: 0 2px 3px 0 rgb(0 0 0 / 16%);
}

.action-links ul li a span {
  padding: 0;
}

.action-links ul li > a {
  padding: 0.5rem 0.75rem;
  display: block;
  line-height: 1.5;
  color: #080707;
}

.action-links ul li > span {
  padding: 0.5rem 0.75rem;
}

.action-links:hover ul a span:hover {
  background: inherit;
  color: inherit;
}

.action-links ul li a span,
.action-links ul li a span:hover {
  color: #080707;
  background: none;
}

.action-links ul li a:hover {
  outline: 0;
  text-decoration: none;
  background-color: #f3f2f2;
}

.action-links ul li hr,
.action-links ul hr {
  border-color: var(--border-color);
  margin-bottom: 0.5rem;
  padding-bottom: 0.5rem;
}

/* Tables */
.tbl {
  border-width: 1px 0;
  border-color: var(--table-border-color-darker);
  border-style: solid;
}

.finale-slds .tbl {
  border-top: 1px solid var(--table-border-color-darker);
}

.tbl-header {
  height: 18px;
}

.finale-slds .tbl-col,
.tbl-col:not(.clickable) {
  padding: 0 4px;
}

.finale-slds .tbl-header .tbl-col .slds-icon.slds-float--left {
  margin-left: -2px;
}

.tbl-header .tbl-col {
  height: 18px;
}

.finale-slds .sc-view.tbl .tbl-row .tbl-col:not(:first-child) {
  border-width: 0 0 1px 1px;
}

.tbl-dropdown {
  font-size: 13px;
}

.finale-slds th.tbl-col,
.finale-slds th.tbl-sticky-container div.tbl-col {
  border-style: solid;
  border-width: 0 0 1px 1px;
  border-color: var(--table-border-color-darker);
}

.finale-slds .tbl-col.uic-table-grid--selection-column {
  display: flex;
  justify-content: center;
  align-items: center;
  border-top: 1px solid transparent;
}

.finale-slds .tbl-col.uic-table-grid--selection-column .slds-form-element__control label.slds-checkbox {
  line-height: 14px;
}

.page-content > :not(.finale-slds) .well .tbl {
  border: 1px solid var(--table-border-color);
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col:first-child {
  border-width: 0;
}

.page-content > :not(.finale-slds) .tbl-content .tbl-row.summary .tbl-col:not(:first-child) {
  border-color: var(--table-border-color-darker);
}

.tbl-header {
  border-width: 0;
  border-style: solid;
  border-color: var(--table-border-color-darker);
}

.uic-table-grid .tbl-header,
.finale-slds .tbl-superheader-col-related,
.page-content > :not(.finale-slds) .tbl-header,
.finale-slds th.tbl-sticky-container div.tbl-col {
  background: var(--table-bg-color-darker);
  border-color: var(--table-border-color-darker);
}

.page-content > :not(.finale-slds) div[fi-grid-rows='itemListConsumeRows'] .tbl-header {
  background-color: var(--table-bg-color-darkest);
}

.page-content > :not(.finale-slds) .tbl .tbl-header tr {
  top: 0 !important;
  height: 100%;
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col {
  font-weight: bold;
  font-size: 0.75rem;
  color: #444;
}

.tbl .tbl-header .tbl-col.group-middle,
.tbl-header .tbl-col.group-end {
  border-color: var(--table-border-color-darker);
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col {
  border-color: var(--table-border-color-darker);
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col:not(.group-detail):not(:first-child) {
  border-width: 0 0 0 1px;
  border-style: solid;
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col {
  display: flex;
  align-items: flex-end;
  top: 0 !important;
  height: 100%;
  max-height: 100%;
  line-height: 16px;
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col.right {
  justify-content: flex-end;
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col.disclosure-open-all.clickable,
.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col.disclosure-close-all.clickable {
  background: none;
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col.disclosure-open-all.clickable:after,
.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col.disclosure-close-all.clickable:after {
  line-height: 19px;
  height: 19px;
  width: 100%;
  content: '';
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col.disclosure-open-all.clickable:after {
  background: url(../images/strip_222222.png) no-repeat 1px 2px;
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col.disclosure-close-all.clickable:after {
  background: url(../images/strip_222222.png) no-repeat 1px -30px;
}

.tbl-col.disclosure-indent-line::after,
.tbl-col.disclosure-indent-line-last::after {
  margin-left: 10px;
}

.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col.group-middle,
.page-content > :not(.finale-slds) .tbl .tbl-header .tbl-col.group-end {
  align-items: flex-start;
  justify-content: center;
  padding-top: 8px;
}

.page-content > :not(.finale-slds) div[fi-grid-rows='itemListConsumeRows'] .tbl .tbl-header .tbl-col {
  border-color: var(--table-border-color-darkest);
}

.tbl-col.sort-down,
.tbl-col.sort-up {
  background-image: none;
}

.tbl-col.sort-down::before,
.tbl-col.sort-up::before {
  margin-bottom: 3px;
}

.tbl-header .tbl-col:not(.uic-table-grid--selection-column):not(.slds-align--absolute-center) .tbl-header-inner {
  padding-bottom: 2px !important;
}

.tbl-header .tbl-col.uic-table-grid--selection-column .tbl-header-inner,
.tbl-header .tbl-col.slds-align--absolute-center .tbl-header-inner {
  align-items: flex-end;
}

.tbl-header .tbl-col .tbl-header-inner .tbl-header-inner-disclosure-icon {
  margin-top: auto;
  margin-bottom: 0;
}

.tbl-header-inner-disclosure-icon {
  margin-top: unset;
}

.page-content > :not(.finale-slds) .tbl-header .tbl-col .tbl-header-inner,
.tbl-header .tbl-sticky-container .tbl-header-inner {
  padding-bottom: 0 !important;
}

.page-content > :not(.finale-slds) .tbl-content .tbl-row {
  border-top: 1px solid var(--table-border-color);
  background-color: var(--table-bg-color);
}

.page-content > :not(.finale-slds) .tbl .tbl-content .tbl-row,
.page-content > :not(.finale-slds) .well div[fi-grid-rows='scanLookupGridData.rows'] .tbl-content .tbl-row {
  border-color: var(--table-border-color-off-white);
  background-color: var(--table-bg-color-off-white);
}

.page-content > :not(.finale-slds) .tbl-content .tbl-row.detail {
  border-color: var(--table-border-color-off-white);
  background-color: var(--table-bg-color-off-white);
}

.page-content > :not(.finale-slds) .tbl-content .tbl-row.order {
  border-color: var(--table-border-color-off-white);
  background-color: var(--table-bg-color-off-white);
}

.page-content > :not(.finale-slds) .tbl-content .tbl-row.summary {
  border-color: var(--table-border-color-darker);
  background-color: var(--table-bg-color-darker);
}

.page-content > :not(.finale-slds) .tbl .tbl-content .tbl-row.highlight {
  background-color: var(--table-bg-color-highlight);
}

.page-content > :not(.finale-slds) .tbl-content .tbl-row:hover,
.page-content > :not(.finale-slds) .tbl.sc-view .tbl-content .tbl-row:hover,
.finale-slds .uic-table-grid.uic-table-grid--hover-highlight tr:hover td.tbl-col,
.finale-slds .uic-table-grid.uic-table-grid--editable-columns.uic-table-grid--hover-highlight tr:hover td.tbl-col,
.page-content > :not(.finale-slds) .well div[fi-grid-rows='scanLookupGridData.rows'] .tbl-content .tbl-row:hover {
  background-color: var(--table-bg-color-hover);
}

.page-content > :not(.finale-slds) .tbl-content .tbl-row:hover .editable:not(.error) {
  background-color: var(--table-input-bg-color-hover);
}

.page-content > :not(.finale-slds) .tbl-content .tbl-row:hover .tbl-col:not(:first-child) {
  border-left-color: var(--table-border-color-darkest);
  border-right-color: var(--table-border-color-darkest);
}

.tbl-row .tbl-col.editable,
.tbl-row .tbl-col.editable + .tbl-col:not(.editable),
.tbl-content .tbl-row .tbl-col.group-detail-middle {
  border-left: 1px solid var(--table-border-color-off-white);
  border-right: none;
}

.well .tbl-row .tbl-col:first-child {
  border-left: none;
}

.page-content > :not(.finale-slds) .tbl-content .tbl-row .tbl-col.editable.focused {
  outline-width: 2px;
}

.page-content > :not(.finale-slds) .tbl-content .tbl-row input.sc-text-field.inline-editor {
  border-radius: 0;
  padding: 1px 5px 0 5px;
}

.page-content > :not(.finale-slds) .tbl-content .tbl-focus input.tbl-focus-input {
  padding-left: 5px;
  padding-top: 2px;
  border-color: transparent;
}

.page-content > :not(.finale-slds) .tbl-content .tbl-focus input.tbl-focus-input:focus {
  outline: none;
  box-shadow: none;
}

.page-content > :not(.finale-slds) .tbl-content table.tbl-page,
.page-content > :not(.finale-slds) .tbl > table.tbl-content {
  border-top: none;
  background-color: var(--color-white);
}

.page-content > :not(.finale-slds) .tbl-row .tbl-col.group-detail-end {
  border-right: none;
}

table.tbl-header:not(.tbl-header-not-sticky) {
  top: 39px;
}

.page-content > :not(.finale-slds) div.connection-add-table table td a.btn {
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
}

.rfdt__header--sortable .slds-icon {
  position: absolute;
  right: 0;
  bottom: 3px;
}

.page-content > :not(.finale-slds) .tbl-col.description {
  z-index: 1;
}

.tbl a[href='##moveUp'],
.tbl a[href='##moveDown'],
.tbl a[href='##delete'] {
  width: 10px;
  height: 10px;
  top: 2px;
}

.tbl a[href='##moveDown'] {
  background-position: -2px -291px;
}

/* Cards */
.well,
.finale-slds fieldset.well {
  background-color: #f9fafa;
  position: relative;
  border: 1px solid var(--border-color);
  border-radius: 0.25rem;
  background-clip: padding-box;
  box-shadow: 0 2px 2px 0 rgb(0 0 0 / 10%);
}

.form-stacked .well legend {
  background: none;
}

.form-stacked .well .action-links.tab-links {
  margin-top: -29px;
  padding: 0;
}

.finale-slds fieldset.well {
  padding: 8px 12px;
}

/* Miscellaneous */
.uic-settings-tier-details {
  height: 10.5rem;
}

/* Alerts */
.sc-view .alert-message {
  background-image: none;
  text-shadow: none;
  border-radius: 2px;
  background-image: none;
  box-shadow: none;
}

.sc-view .alert-message:not(.neutral):not(.info):not(.error):not(.danger):not(.success) {
  background-color: #ffb75d;
  border-color: #ffb75d;
  color: #080707;
}
