/**
 * Phase 8 — Bootstrap 3 compatibility shims for residual markup.
 * Prefer migrated BS5 classes; these keep older pages usable.
 */
.form-group { margin-bottom: 1rem; }
.form-group-otp { margin-bottom: 1rem; }

.panel { margin-bottom: 1rem; background-color: #fff; border: 1px solid rgba(0,0,0,.125); border-radius: .375rem; }
.panel-heading, .panel-body, .panel-footer { padding: .75rem 1rem; }
.panel-heading { border-bottom: 1px solid rgba(0,0,0,.125); }
.panel-footer { border-top: 1px solid rgba(0,0,0,.125); }

.well { padding: 1rem; margin-bottom: 1rem; background: #f8f9fa; border: 1px solid #dee2e6; border-radius: .375rem; }

.pull-left { float: left !important; }
.pull-right { float: right !important; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5;
  background: transparent;
  border: 0;
}
.close:hover { opacity: .75; }

.input-group-addon {
  display: flex;
  align-items: center;
  padding: .375rem .75rem;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: .375rem;
}

.btn-default {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

/* Glyphicon → Font Awesome fallbacks (common icons only) */
.glyphicon { display: inline-block; font-style: normal; font-family: "Font Awesome 6 Free"; font-weight: 900; }
.glyphicon-ok:before { content: "\f00c"; }
.glyphicon-remove:before { content: "\f00d"; }
.glyphicon-search:before { content: "\f002"; }
.glyphicon-user:before { content: "\f007"; }
.glyphicon-envelope:before { content: "\f0e0"; }
.glyphicon-chevron-left:before { content: "\f053"; }
.glyphicon-chevron-right:before { content: "\f054"; }
.glyphicon-calendar:before { content: "\f133"; }
.glyphicon-info-sign:before { content: "\f05a"; }
.glyphicon-warning-sign:before { content: "\f071"; }
/* bootstrapValidator residual classes under Bootstrap 5 */
.has-error .form-control,
.has-error .form-select,
.has-error select,
.has-error textarea {
  border-color: #dc3545;
}
.has-success .form-control,
.has-success .form-select {
  border-color: #198754;
}
.has-error .help-block,
.help-block {
  display: block;
  margin-top: .25rem;
  color: #dc3545;
  font-size: .875rem;
}
.form-horizontal .control-label {
  padding-top: calc(.375rem + 1px);
}
