/* This css file provides web specific style overrides for mhb-web */

.bsw-typography a {
  font-weight: 700;
}

/* LinkList layout override - ensures proper flexbox layout for inline styled components */
.bsw-link-list button.bsw-link-text,
.bsw-link-list a.bsw-link-text {
  display: block !important;
  width: 100% !important;
}

.bsw-link-list button.bsw-link-text > .bsw-typography,
.bsw-link-list a.bsw-link-text > .bsw-typography {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}

.bsw-link-list button.bsw-link-text > .bsw-typography > div:first-child,
.bsw-link-list a.bsw-link-text > .bsw-typography > div:first-child {
  flex: 1 1 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.bsw-link-list button.bsw-link-text > .bsw-typography > div:first-child > div,
.bsw-link-list a.bsw-link-text > .bsw-typography > div:first-child > div {
  text-align: left !important;
}

.bsw-link-list button.bsw-link-text .bsw-circle-button,
.bsw-link-list a.bsw-link-text .bsw-circle-button {
  margin-left: auto !important;
}

/* Navigation sliding menu link text styles */
.bsw-navigation__sliding-menu .bsw-link-text {
  width: 100%;
}

.bsw-navigation__sliding-menu .bsw-link-text .bsw-typography {
  display: flex;
  margin-bottom: 8px;
  align-items: center;
  gap: 8px;
  text-align: left;
}

.bsw-navigation__sliding-menu .bsw-link-text .bsw-circle-button {
  flex-shrink: 0;
  margin-right: 0 !important;
}

/* Fix for inline-styled link components in advance directives */
.advanced-directives-container .row .col-12.col-lg-6 > div[style*="display: inline-block"] {
  display: block !important;
  margin-bottom: 8px;
}

.advanced-directives-container .row .col-12.col-lg-6 > div[style*="display: inline-block"] .bsw-link-text {
  display: block !important;
  width: 100%;
}

/* Footer links hover underline effect for logged-in footer */
.footer-container.footer-loggedin .footer__links .bsw-link-text:hover .bsw-typography {
  text-decoration: underline !important;
}

/* FAQ Circle Button Centering Fix - Margin Reset Only */
/* Reset margin inheritance that affects circle button positioning */
.faq-link,
.faq-link * {
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}

/* =============================================================================
   MODAL COMPONENT - REACTSTRAP INTEGRATION STYLES
   These styles target elements controlled by Reactstrap library
   Elements created by Reactstrap (backdrop, modal-dialog, modal-content)
   cannot be styled via React inline styles and require CSS overrides.
   ============================================================================= */

/* Global body class - Applied by Reactstrap when any modal opens */
.modal-open {
  padding-right: 0px !important;
}

/* Standard Modal - Backdrop */
.bsw-modal .modal-backdrop {
  background: #364248;
}

.bsw-modal .modal-backdrop.show {
  opacity: 0.6;
}

/* Standard Modal - Dialog wrapper */
.bsw-modal .modal-dialog {
  justify-content: center;
  max-width: 100%;
  padding: 24px;
}

.bsw-modal .modal-dialog.modal-dialog-centered {
  align-items: center;
}

/* Standard Modal - Content wrapper */
.bsw-modal .modal-content {
  border: 0;
  border-radius: 8px;
  box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.16);
  max-width: 928px;
  width: auto;
}

/* Branded Modal - Content background override */
.bsw-modal .bsw-modal--branded .modal-content {
  background-color: #007eb4;
}

/* ShelfModal - Backdrop cursor behavior */
.bsw-shelf-modal .modal-backdrop {
  cursor: pointer;
}

.bsw-shelf-modal.bsw-shelf-modal--static .modal-backdrop {
  cursor: default;
}

/* ShelfModal - Dialog positioning */
.bsw-shelf-modal .modal-dialog {
  position: absolute;
  padding: 0px !important;
  right: 0px;
  height: 100%;
  width: 85%;
  margin: 0px;
}

@media all and (min-width: 420px) {
  .bsw-shelf-modal .modal-dialog {
    width: 75%;
  }
}

@media all and (min-width: 576px) {
  .bsw-shelf-modal .modal-dialog {
    max-width: 460px;
  }
}

/* ShelfModal - Content height */
.bsw-shelf-modal .modal-content {
  height: 100%;
}

/* Shelf Modal Header Fix - ensures the header title container takes full width */
.bsw-shelf-modal .modal-header .modal-title {
  width: 100%;
}

/* Standard Modal Header Fix - ensures the header title container takes full width */
.bsw-modal-header .modal-title {
  width: 100%;
}

.bsw-notifier.toast .toast-header > strong.mr-auto {
  font-weight: 600;
}
