/* Bootstrap 4 → 5 backward-compat shim.
   Recreates a few BS4-only classes that were removed in BS5 so legacy markup
   keeps rendering. Loaded AFTER bootstrap.min.css. */

/* Jumbotron (removed in BS5) */
.jumbotron {
  padding: 4rem 2rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}
.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

/* Form layouts (removed/renamed in BS5) */
.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}
.form-row > [class*="col-"] {
  padding-right: 5px;
  padding-left: 5px;
}
.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.form-inline .form-control {
  display: inline-block;
  width: auto;
  vertical-align: middle;
}

/* Grid gutters (BS5 uses .g-0 instead) */
.no-gutters {
  margin-right: 0 !important;
  margin-left: 0 !important;
}
.no-gutters > .col,
.no-gutters > [class*="col-"] {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

/* Card deck (removed in BS5) */
.card-deck {
  display: flex;
  flex-flow: row wrap;
  margin-right: -15px;
  margin-left: -15px;
}
.card-deck .card {
  flex: 1 0 0%;
  margin-right: 15px;
  margin-left: 15px;
  margin-bottom: 0;
}

/* Badge color aliases (BS5 dropped badge-* in favor of bg-*) */
.badge-primary   { background-color: var(--bs-primary)   !important; color: #fff; }
.badge-secondary { background-color: var(--bs-secondary) !important; color: #fff; }
.badge-success   { background-color: var(--bs-success)   !important; color: #fff; }
.badge-danger    { background-color: var(--bs-danger)    !important; color: #fff; }
.badge-warning   { background-color: var(--bs-warning)   !important; color: #000; }
.badge-info      { background-color: var(--bs-info)      !important; color: #000; }
.badge-light     { background-color: var(--bs-light)     !important; color: #000; }
.badge-dark      { background-color: var(--bs-dark)      !important; color: #fff; }

/* Old close button (renamed to .btn-close in BS5; legacy `× ` span content stays usable) */
.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.5;
  background: transparent;
  border: 0;
  padding: 0.25rem 0.5rem;
  cursor: pointer;
}
.close:hover { opacity: 0.75; color: #000; text-decoration: none; }

/* Legacy directional utility aliases (in case any leftover BS4 class slipped through) */
.float-left  { float: left  !important; }
.float-right { float: right !important; }
.text-left   { text-align: left   !important; }
.text-right  { text-align: right  !important; }

/* font-weight-* and font-italic legacy aliases */
.font-weight-bold    { font-weight: 700 !important; }
.font-weight-bolder  { font-weight: bolder !important; }
.font-weight-normal  { font-weight: 400 !important; }
.font-weight-light   { font-weight: 300 !important; }
.font-weight-lighter { font-weight: lighter !important; }
.font-italic         { font-style: italic !important; }

/* sr-only legacy alias (BS5 uses .visually-hidden) */
.sr-only,
.sr-only-focusable:not(:focus):not(:focus-within) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
