﻿body {
  cursor: default;
}

h1 {
  line-height: 2rem;
}

h1,
h3,
h5 {
  font-weight: 700;
}

h2,
h4,
h6 {
  font-weight: 400;
}

h2,
h3,
h4,
h5,
h6 {
  line-height: 1.5rem;
}

h1,
h2,
h3,
h4,
h5,
h6,
label,
.form-label,
.form-control,
.form-control:focus {
  color: var(--gray1);
}

/* Delete after [#29174] is available to consuming apps and Jobs + Interview are on the updated ReactComponents version */
.starRatingItem label {
  color: var(--mt-active);
}

body,
caption {
    color: var(--gray2);
}

.form-control::placeholder {
  color: var(--gray3);
}

.badge {
  font-weight: 400;
}

.card.custom {
  background-color: var(--white);
  box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.16);
}

.card-header.custom {
  background-color: var(--white);
  font-size: 1.14286rem;
  border: 0 solid transparent;
}

.btn {
  padding: 0.4375rem 1rem;
}

.btn-sm .fa {
  font-size: 1.42rem;
}

.alert {
  color: var(--dk-text-color);
}

.alert-danger {
  background-color: var(--mt-alert-error-bg);
  border-color: var(--mt-alert-error-border);
}
.alert-danger .alert-icon {
  color: var(--mt-alert-error-border);
}

.alert-success {
  background-color: var(--mt-alert-success-bg);
  border-color: var(--mt-alert-success-border);
}

.alert-success .alert-icon {
  color: var(--mt-alert-success-border);
}

.alert-warning {
  background-color: var(--mt-alert-warning-bg);
  border-color: var(--mt-alert-warning-border);
}

.alert-warning .alert-icon {
  color: var(--mt-alert-warning-border);
}

.alert-info {
  background-color: var(--mt-alert-info-bg);
  border-color: var(--mt-alert-info-border);
}

.alert-info .alert-icon {
  color: var(--mt-alert-info-border);
}

/* TODO: remove when old Alert is removed completely */
.alert-dismissible .close:hover {
  background: none;
  color: bold;
}

.alert-warning .close {
  color: var(--mt-alert-warning-border) !important;
}
.alert-success .close {
  color: var(--mt-alert-success-border) !important;
}
.alert-danger .close {
  color: var(--mt-alert-danger-border) !important;
}
.alert-info .close {
  color: var(--mt-alert-info-border) !important;
}
/* END REMOVE TODO */

.was-validated .form-control:invalid,
.form-control.is-invalid {
  background-image: none;
}

.modal .modal-title {
  color: var(--black);
}

.form-label {
  font-size: 1rem;
  margin-bottom: 0;
}

.form-control:focus {
    box-shadow: none;
    border-color: var(--focus-blue-transparent);
}

.form-control:hover {
    border-color: var(--primary-hover);
}

/* Remove the outline styling for buttons if focus was triggered by something other than a keyboard */
body:has(input[type="radio"]:focus:not(:focus-visible)), 
body:has(input[type="radio"]:focus:not(:focus-visible)) span,
body:has(input[type="checkbox"]:focus:not(:focus-visible)),
button:focus:not(:focus-visible), 
.btn-primary:focus:not(:focus-visible), 
.btn-outline-primary:focus:not(:focus-visible), 
.btn-outline-secondary:focus:not(:focus-visible), 
.btn-link:focus:not(:focus-visible)  {
  outline: none;
}

.btn-primary:focus-visible, 
.btn-outline-primary:focus-visible, 
.btn-outline-secondary:focus-visible, 
.btn-link:focus-visible  {
  outline: solid 0.125rem var(--focus-blue-transparent);
  outline-offset: 0.125rem;
  border-radius: 0.125rem;
}

/* Apply this class to remove focus outline effect on click  */
.remove-focus-on-click:has(input[type="radio"]:focus:not(:focus-visible)),
.remove-focus-on-click:has(input[type="checkbox"]:focus:not(:focus-visible)),
.remove-focus-on-click input[type="checkbox"]:focus:not(:focus-visible) {
  outline: none;
}

/* Removes all-caps from React header menu items */
.montageHeader .collapse .nav-link {
    text-transform: capitalize !important;
}
