/* Shared Styles for Vue pages and legacy pages
* Consists of styles that were removed from MatrixSSModern.css
* Styles are mostly related to header, footer,  dialogs/modals and side menu
* which are common across both Vue and legacy pages
*/

html {
  overflow-y: scroll;
  overflow-x: hidden;
  position: relative;
  min-height: 100%;
}

body {
  font-size: 16px;
  font-family: Lato, Tahoma, -apple-system, BlinkMacSystemFont, Arial,
    sans-serif;
  margin-top: 0;
  line-height: 1.4 !important;
  color: #323a46;
  background: #eff3f8;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
  overflow-x: hidden !important;
}

/*fix spinner icon not loading issue for mobile browsers*/
body::after {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  z-index: -1;
  content: url(../../../../Images/icon-ajax-16.gif);
}

#skip-main {
    width: 100%;
    color: white;
    position: absolute;
    z-index: 9999;
}
.skip {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.skip:focus {
	position: static;
	width: auto;
	height: auto;
	color: white;
	background-color: black;
}
.topbar {
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 999;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12),
    0 3px 1px -2px rgba(0, 0, 0, 0.2);
  background-color: #002d72;
}

.topbar .topbar-left {
  float: left;
  position: relative;
  z-index: 1;
  background-color: #002d72;
  border-left: 3px solid #002d72;
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 255px;
  height: 70px;
  padding-left: 18px;
  padding-right: 18px;
  padding-top: 17px;
  padding-bottom: 17px;
}

.label-readOnly {
  cursor: text;
  border: black 1px dashed;
  color: #003063;
}

.label-readOnly:hover {
  cursor: not-allowed;
}

.label {
  color: #343a40;
  font-weight: 400;
}

.tableHeader {
  color: white;
  background-color: #205081;
  font-weight: 500;
  padding: 2px 5px 2px 5px;
}

.tableHeader-halign-left {
  vertical-align: middle;
  text-align: left;
  color: white;
  background-color: #205081;
  font-weight: 500;
  padding: 2px 5px 2px 5px;
}

.tableHeader th {
  vertical-align: middle;
  text-align: center;
  color: white;
  background-color: #205081;
  font-weight: 700;
  padding: 2px 5px 2px 5px;
}

.tableHeader td {
  vertical-align: middle;
  text-align: center;
}

.tableRowEvenData {
  font-weight: normal;
}

.tableRowEvenData td {
  vertical-align: middle;
}

.evenRowSpacer {
  border-right: black 1px solid;
  border-top: black 1px solid;
  border-left: black 1px solid;
  border-bottom: black 1px solid;
}
.oddRowSpacer {
  border-right: black 1px solid;
  border-top: black 1px solid;
  border-left: black 1px solid;
  border-bottom: black 1px solid;
  background-color: #ecf1f7;
}
.tableRowOddData {
  background-color: #f0f0f0;
  font-weight: normal;
}

.tableRowOddData td {
  vertical-align: middle;
}

.tableCaption {
  font-weight: 600;
  background-color: #cec7ad;
}

.subText {
  color: black;
}

.Footer-logo {
  padding-top: 40px;
  width: 100%;
  text-align: center;
  clear: both;
}

.alertMenu {
  font-weight: 600;
  color: black;
  text-decoration: underline;
}
.alertMenu A:link {
  text-decoration: underline;
}
.alertMenu A:visited {
  text-decoration: underline;
}
.alertMenu A:active {
  text-decoration: underline;
}

.alertMenuRed {
  font-weight: 600;
  color: red;
  text-decoration: underline;
}
.alertMenuRed A:link {
  text-decoration: underline;
  color: red;
}
.alertMenuRed A:visited {
  text-decoration: underline;
  color: red;
}
.alertMenuRed A:active {
  text-decoration: underline;
  color: red;
}

.PersonFunction {
  font-weight: 600;
  font-size: 12px;
  color: black;
  line-height: normal;
}
.PersonFunctionLinkCol {
  position: relative;
  left: -2px;
}

.sectionHeaderWithButtomBorder {
  font-weight: 500;
  padding: 0 0 0 3px;
  color: #003366;

  background-color: #f0f0f0;
  border-bottom: solid 1px #c0c0c0;
  margin: 0 0 0 0;
}

@media (min-width: 1024px) {
  .box-border {
    border-top: solid 1px #b9c9d9;
    border-right: solid 2px #b9c9d9;
    border-left: solid 2px #b9c9d9;
    border-bottom: solid 2px #b9c9d9;
    margin-bottom: 15px;
  }
}

.bluebutton {
  color: #ffffff;
  font-size: 8pt;
  font-weight: 600;
  background-color: #003063;
  padding-top: 2px;
  padding-bottom: 2px;
  padding-left: 10px;
  padding-right: 10px;
}

#DGAlerts {
  border: 1px solid #cccccc;
}
#DGAlerts td {
  padding: 5px;
  border: 1px solid #cccccc;
}
#DGAlerts th {
  padding: 5px;
  border: 1px solid #cccccc;
}

.note {
  border-style: solid;
  border-width: 1px;
  border-color: #f0c000;
  background-color: #ffffce;
  text-align: left;
  margin-top: 5px;
  margin-bottom: 5px;
  padding: 3px;
}

.FERPAMessageBox + .box-border {
  width: 100% !important;
}

.FERPAMessageBox {
  padding-bottom: 5px;
  padding-top: 5px;
  padding-left: 5px;
  padding-right: 5px;
  margin-bottom: 5px;
  width: 100% !important; /* ModernUI - override width */
}

#person-summary-modal div.modal-body {
  overflow: auto;
  width: 100%;
  height: 100%;
}

input.form-control {
  font-size: inherit;
}

.navbar-custom {
  background-color: #002d72;
  border-radius: 0;
  margin-bottom: 0;
  padding: 0 10px 0 0;
  margin-left: 240px;
  min-height: 70px;
}

.navbar-custom .nav-link {
  padding: 0;
  line-height: 69px;
  color: rgba(255, 255, 255, 0.6);
}

.navbar-custom .dropdown-toggle:after {
  content: initial;
}

.navbar-custom .menu-left {
  overflow: hidden;
}

nav.navbar-custom {
  background-color: #002d72;
}

nav.navbar-custom ul {
  background-color: #002d72;
}

nav.navbar-custom ul li {
  background-color: #002d72;
}

nav.navbar-custom ul li input {
  background-color: rgba(255, 255, 255, 0.1);
}

.notification-list {
  margin-left: 0 !important;
}

.notification-list .noti-title {
  margin-bottom: 0;
  width: auto;
  padding: 12px 20px;
}

.notification-list .noti-title h5 {
  margin: 0;
}

.notification-list .noti-icon {
  font-size: 24px;
  padding: 0 12px;
  color: rgba(255, 255, 255, 0.8);
  vertical-align: middle;
}

.notification-list .noti-icon-badge {
  display: inline-block;
  position: absolute;
  top: 14px;
  right: 8px;
}

.notification-list .notify-item {
  padding: 10px 20px;
}

.notification-list .profile-dropdown .notify-item {
  padding: 4px 20px;
}

.header-dropdown {
  width: auto;
}
.nav-user {
  padding: 0 12px !important;
}

.nav-user img {
  height: 56px;
}
.side-menu {
  bottom: 0;
  top: 0;
  width: 240px;
  z-index: 2;
}
.side-menu.left {
  background: #ffffff;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12),
    0 3px 1px -2px rgba(0, 0, 0, 0.2);
  top: 70px;
  height: 100%;
  margin-bottom: -70px;
  margin-top: 0;
  position: fixed !important;
}
.button-menu-mobile {
  border: none;
  color: #ffffff;
  display: inline-block;
  height: 70px;
  width: 60px;
  background-color: #002d72;
  font-size: 24px;
}
.sidebar-inner {
  height: 100%;
}

#sidebar-menu,
#sidebar-menu ul,
#sidebar-menu li,
#sidebar-menu a {
  border: 0;
  font-weight: normal;
  line-height: 1;
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
  text-decoration: none;
}

#sidebar-menu {
  width: 100%;
}

#sidebar-menu a {
  line-height: 1.3;
}

#sidebar-menu ul ul {
  display: none;
}

#sidebar-menu ul ul li {
  border-top: 0;
}

#sidebar-menu ul ul a {
  color: #75798b;
  display: block;
  padding: 10px 20px 10px 65px;
}

#sidebar-menu ul ul a:hover {
  color: #0047dd;
}

#sidebar-menu ul li a i {
  display: inline-block;
  line-height: 17px;
  margin-left: 3px;
  margin-right: 15px;
  text-align: center;
  vertical-align: middle;
  width: 20px;
}

#sidebar-menu > ul > li > a {
  color: #343c49;
  display: block;
  padding: 12px 20px;
  margin: 4px 0;
  border-left: 3px solid #ffffff;
}

#sidebar-menu > ul > li > a.active {
  color: #0047dd;
}

#sidebar-menu > ul > li > a:hover {
  color: #0047dd;
  text-decoration: none;
  background: #eeeeee;
  border-color: #0047dd;
}

#sidebar-menu > ul > li > a:focus {
  text-decoration: none;
  background: #eeeeee;
  border-color: #0047dd;
}

#sidebar-menu > ul > li > ul > li > a:focus {
  color: #0047dd;
  text-decoration: none;
  background: #f5f5f5 !important;
  border-left: 3px solid #0047dd;
  padding-left: 62px;
}

#sidebar-menu > ul > li > ul > li > a.active {
  color: #0047dd;
}

#sidebar-menu .subdrop {
  background: #f5f5f5 !important;
  border-left: 3px solid #0047dd;
}

#sidebar-menu > ul > li > a > span {
  vertical-align: middle;
}

#sidebar-menu ul li .menu-arrow {
  -webkit-transition: -webkit-transform 0.15s;
  -o-transition: -o-transform 0.15s;
  transition: transform 0.15s;
  position: absolute;
  right: 20px;
  display: inline-block;
  font-family: 'Font Awesome 7 Pro';
  text-rendering: auto;
  line-height: 24px;
  font-size: 20px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
  color: #0047dd;
}

#sidebar-menu ul li .menu-arrow:before {
  content: '\F105';
}

#sidebar-menu ul li a.subdrop .menu-arrow {
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}
#wrapper.enlarged .navbar-custom {
  margin-left: 70px;
}

#wrapper.enlarged .menu-arrow {
  display: none !important;
}

#wrapper.enlarged .left.side-menu {
  width: 70px;
  z-index: 5;
  position: absolute !important;
}

#wrapper.enlarged .left.side-menu #sidebar-menu > ul > li > a {
  padding: 15px 20px;
  min-height: 52px;
}

#wrapper.enlarged .left.side-menu #sidebar-menu > ul > li > a:hover {
  background: #eeeeee !important;
}

#wrapper.enlarged .left.side-menu #sidebar-menu > ul > li > a:active {
  background: #eeeeee !important;
  color: #0047dd;
}

#wrapper.enlarged .left.side-menu #sidebar-menu > ul > li > a:focus {
  background: #eeeeee !important;
}

#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > a {
  position: relative;
  width: 260px;
  background: #eeeeee;
  color: #0047dd;
  border-color: #0047dd;
}

#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > ul {
  display: block;
  left: 70px;
  position: absolute;
  width: 190px;
}

#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > ul a {
  background: #ffffff;
  box-shadow: none;
  padding-left: 15px;
  position: relative;
  width: 186px;
  z-index: 6;
}

#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > ul a:hover {
  color: #0047dd;
}

#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > ul > li > a:focus {
  color: #0047DD;
  background: #f5f5f5 !important;
  border-left: 3px solid #0047DD;
  padding-left: 12px;
}

#wrapper.enlarged
  .left.side-menu
  #sidebar-menu
  ul
  > li:hover
  > ul
  > li
  > a:focus {
  color: #0047dd;
  background: #f5f5f5 !important;
  border-left: 3px solid #0047dd;
}

#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover a span {
  display: inline;
}

#wrapper.enlarged .left.side-menu #sidebar-menu ul > li > ul {
  display: none;
}

#wrapper.enlarged .left.side-menu #sidebar-menu ul > li > a span {
  display: none;
  padding-left: 10px;
}

#wrapper.enlarged .content-page {
  margin-left: 70px;
}

#wrapper {
  height: 100%;
  overflow: hidden;
  width: 100%;
}

#wrapper.enlarged .topbar .topbar-left {
  width: 70px !important;
}

#wrapper.enlarged .topbar .topbar-left #img-jhu-shield-only {
  display: block;
}

#wrapper.enlarged .topbar .topbar-left #img-jhu-full {
  display: none;
}

#wrapper.enlarged #sidebar-menu ul ul {
  border-left: 2px solid #eeeeee;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
  border-bottom: none;
  margin-top: -5px;
  padding-top: 0;
  z-index: 9999;
  background-color: #ffffff;
}

#wrapper.enlarged .left.side-menu #sidebar-menu ul > li {
  position: relative;
  white-space: normal;
}

.topbar .topbar-left #img-jhu-shield-only {
  display: none;
}

.topbar .topbar-left #img-jhu-full {
  display: block;
}

.dropdown-menu {
  padding: 4px 0;
  border: 0;
  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);
}

.dropdown-menu a {
    color:#0047dd;
    text-decoration: none;
}

.dropdown-item:active {
  background-color: #f2f2f2;
  color: inherit;
}

.dropdown-menu-lg {
  max-width: 280px;
  min-width: 265px;
}

.waves-effect {
  position: relative;
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  vertical-align: middle;
  z-index: 1;
  will-change: opacity, transform;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media print {
  .topbar {
    display: none;
    margin: 0;
    padding: 0;
  }
  .left {
    display: none;
  }
}

textarea.form-control {
  height: auto;
}

div.top-right-menu-info {
  display: none;
}

.btn {
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.14), 0 2px 1px -2px rgba(0, 0, 0, 0.2),
    0 1px 2px 0 rgba(0, 0, 0, 0.12);
}

@media (max-width: 767px) {
  .enlarged .left.side-menu {
    margin-left: -75px;
  }

  #wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > a,
  #wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > ul {
    display: none;
  }

  .modal-content {
    overflow: auto;
  }

  td.text-cell {
    display: none;
  }

  div.top-right-menu-info {
    display: block;
  }
}

@media (max-width: 480px) {
  .side-menu {
    z-index: 10 !important;
  }
  .button-menu-mobile {
    display: block;
  }
  #sidebar-menu {
    overflow: auto;
    height: 100%;
    padding-top: 0;
  }
  .navbar-custom {
    margin-left: 70px !important;
  }
  .dropdown-menu-lg {
    max-width: 230px;
  }
}

@media (max-width: 419px) {
  .enlarged .side-menu.left {
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1) !important;
  }
  .topbar-left {
    width: 70px !important;
  }

  #wrapper.enlarged .topbar .topbar-left #img-jhu-shield-only {
    display: block;
  }
  #wrapper.enlarged .topbar .topbar-left #img-jhu-full {
    display: none;
  }

  .topbar .topbar-left #img-jhu-shield-only {
    display: block;
  }

  .topbar .topbar-left #img-jhu-full {
    display: none;
  }
}

#sidebar-menu ul li.active {
  background: #f5f5f5 !important;
  border-left: 3px solid #0047dd;
}

#sidebar-menu ul li.active:not(.top_level_item) > a {
  padding-left: 62px
}

#sidebar-menu ul li.disabled a {
  color: #cccccc;
  pointer-events: none;
}

#sidebar-menu ul li.disabled {
  cursor: not-allowed;
}

a.nav-user {
  max-height: 70px;
}

.top-bar-container {
  float: right;
  margin-left: 15px;
}

.top-bar-container td.text-cell {
  line-height: 20px;
  padding-right: 10px;
}

.role-menu-container {
  line-height: 1.5;
}

.role-menu-container a {
    padding: 10px 20px;
}

.active-role {
    font-weight: 700;
    border: solid #dee2e6;
    border-width: 0 0 0 2px;
    border-color: rgb(0, 71, 221) !important;
}

#top-bar-role-switcher span {
    font-size: 14px;
}

.bs-tooltip-auto[x-placement^='bottom'] .arrow::before,
.bs-tooltip-bottom .arrow::before {
  border-bottom-color: #444;
}

.bs-tooltip-auto[x-placement^='top'] .arrow::before,
.bs-tooltip-top .arrow::before {
  border-top-color: #444;
}

.bs-tooltip-auto[x-placement^='left'] .arrow::before,
.bs-tooltip-left .arrow::before {
  border-left-color: #444;
}

.bs-tooltip-auto[x-placement^='right'] .arrow::before,
.bs-tooltip-right .arrow::before {
  border-right-color: #444;
}
/* SELF-8619: added .tooltip css to override font-family coming in from Framework/ModernUI/css/bootstrap-4.6.2.min.css - bso6*/
.tooltip {
    font-family: Lato, Tahoma, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
}

.tooltip-inner {
  background-color: #444;
  max-width: 300px;
  text-align: start;
}

.tooltip-inner a,
.tooltip-inner a:visited,
.tooltip-inner a:hover,
.tooltip-inner a:focus {
  color: #00c6e0;
}

.tooltip-inner em {
  color: white;
}

div.Footer-logo {
  display: none;
}

.modal .modal-header {
  min-height: 40px;
}

.modal .modal-dialog .close {
  top: 18px;
  right: 18px;
  position: absolute;
  height: 36px;
  width: 36px;
  background-color: #343c49;
  opacity: 1;
  border: 2px solid #ffffff;
  text-shadow: none;
  color: #ffffff;
  border-radius: 50%;
  padding: 0;
  font-size: 18px;
}

.modal .modal-dialog .modal-title {
  margin: 0;
}

.modal .modal-dialog .modal-content {
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  border-radius: 0;
  box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14),
    0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.3);
}

.modal .modal-dialog .modal-content .modal-header {
  border-bottom-width: 2px;
  margin: 0;
}

.modal .modal-dialog .modal-content .modal-body {
  padding: 20px;
}

li.alerts-menu-container {
  line-height: 68px;
  height: 70px;
  text-align: right;
  width: 100%;
}

li.alerts-menu-container div.alerts-menu-content,
li.alerts-menu-container a:not(.role-menu-container a),
li.alerts-menu-container span,
li.alerts-menu-container #contact_phone,
li.alerts-menu-container #contact_email,
li.alerts-menu-container span.PersonFunction,
li.alerts-menu-container .breadCrumbDevider {
  color: white;
}

li.alerts-menu-container strong.contact-us-label {
  font-size: 14px;
}

div.feedback-container {
  margin: 5px 5px 5px 0px;
  width: 100%;
}

#jhu_GiveFeedback_FeedbackText {
  width: 100%;
  overflow: auto;
}

#jhu_GiveFeedback_MaskIdentity_Container table {
  width: 100%;
}

#jhu_GiveFeedback_MaskIdentity_Container table tr td {
  vertical-align: top;
}

#jhu_ReportATechnicalIssue_TopSwitchingContainer {
    display: none;
    position: relative;
    clear: both;
}

#jhu_ReportATechnicalIssue_ThanksContainer {
    display: none;
    width: 100%;
    position: relative;
    margin-top: 5px;
}

#jhu_ReportATechnicalIssue_ErrorContainer {
    display: none;
    width: 100%;
    position: relative;
    margin-top: 5px;
}

#jhu_ReportATechnicalIssue_FormContainer {
    width: 100%;
    position: relative;
    margin-top: 5px;
}

#jhu_ReportATechnicalIssue_FeedbackTextValidation {
    visibility: hidden;
    color: red;
}

#jhu_ReportATechnicalIssue_Buttons {
    margin-top: 10px;
    text-align: right;
}

#jhu_GiveFeedback_TopSwitchingContainer {
    display: none;
    position: relative;
    clear: both;
}

#jhu_GiveFeedback_ThanksContainer {
    display: none;
    width: 100%;
    position: relative;
    margin-top: 5px;
}

#jhu_GiveFeedback_ErrorContainer {
    display: none;
    width: 100%;
    position: relative;
    margin-top: 5px;
}

#jhu_GiveFeedback_FormContainer {
    width: 100%;
    position: relative;
    margin-top: 5px;
}

#jhu_GiveFeedback_FeedbackTextValidation {
    visibility: hidden;
    color: red;
}

#jhu_GiveFeedback_Buttons {
    margin-top: 10px;
    text-align: right;
}

#jhu_FeedbackAndSupport_LandingPage_Buttons {
    text-align: right;
}

#jhu_ReportATechnicalIssue_IDWarning,
#jhu_GiveFeedback_IDWarning {
    margin-top: 0.25rem;
}

#jhu_GiveFeedback_Anonymous {
    display: flex !important;
}

#jhu_GiveFeedback_BackButton a,
#jhu_ReportATechnicalIssue_BackButton a {
    text-decoration: none;
}

strong.contact-us-label {
  font-weight: 600;
  font-size: 14px;
}

.btn-primary,
.btn-isis {
  color: #fff;
  background-color: #0047dd;
  border-color: #0047dd;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.btn-primary:hover,
.btn-isis:hover {
  color: #fff;
  background-color: #003bb7;
  border-color: #0037aa;
}

.btn-isis:not(:disabled):not(.disabled):active,
.btn-isis:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0037aa;
  border-color: #00339d;
}

.btn-primary:focus,
.btn-primary.focus,
.btn-isis:focus,
.btn-isis.focus {
  color: #fff;
  background-color: #003bb7;
  border-color: inherit;
  -webkit-box-shadow: 0 0 0 0.15rem #0047dd;
  box-shadow: 0 0 0 0.15rem #0047dd;
}

input.btn {
  font-size: 14px;
}

a.btn {
  font-size: 14px;
}

a.btn-primary {
  -webkit-appearance: none;
}

.btn-sm,
.btn-xs,
.btn-xxs {
  font-size: 14px;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 1000px;
  }
}

.tooltip-inner #jhu_faculty_cbDontShowContainer,
.tooltip-inner #jhu_Faculty_containerDiv .subHeader {
  color: white;
}

.tooltip-inner
  #jhu_Faculty_containerDiv
  #jhu_Faculty_dgFacultyEmail
  #div_inPlaceEdit,
.tooltip-inner #jhu_Faculty_containerDiv #jhu_Faculty_dgFacultyEmail a {
  color: #003063;
}

#jhu_Faculty_validationMessage {
  color: red;
}

.tooltip-inner #jhu_Faculty_validationMessage {
  color: #fee117;
}

.tooltip-inner .grade-system-label {
  color: white;
}

div.contact-us-container {
  text-align: left;
}

#generic-modal div.modal-header h4 {
  margin-top: 13px;
}

.clearfix:after {
  content: ' ';
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.clearfix {
  display: inline-block;
}

html[xmlns] .clearfix {
  display: block;
}

* html .clearfix {
  height: 1%;
}

/*
  This will hide the focus indicator if the element receives focus via the mouse,
  but it will still show up on keyboard focus.
*/
.js-focus-visible :focus:not(.focus-visible) {
  outline: none;
}

/* Optional: Customize .focus-visible */
.js-focus-visible .focus-visible {
  outline-width: 2px !important;
  outline-style: dashed !important;
  outline-color: #7d99d4 !important;
  outline-offset: 2px;
}

.js-focus-visible button.button-menu-mobile.focus-visible {
  outline-offset: -2px;
}

.js-focus-visible #sidebar-menu .focus-visible,
.js-focus-visible .profile-dropdown .focus-visible {
  outline-offset: 0px;
}
