/* ============================================================
   COMPATIBILIDADE BOOTSTRAP 4 → 5

   O sistema tem 421 usos de classes que o Bootstrap 5 deixou cair.
   Reescrever as 98 views seria arriscado e demorado; este ficheiro
   devolve-lhes o comportamento, para a migração não partir nada.

   Carrega DEPOIS do bootstrap 5.
   ============================================================ */

/* ---- form-group (276 usos): no BS5 passou a mb-3 ---- */
.form-group { margin-bottom: 1rem; }
.form-row { display: flex; flex-wrap: wrap; margin-right: -5px; margin-left: -5px; }
.form-row > .col, .form-row > [class*="col-"] { padding-right: 5px; padding-left: 5px; }

/* ---- badge-* (84 usos): no BS5 são text-bg-* ---- */
.badge-primary   { background-color: #033485; color: #fff; }
.badge-secondary { background-color: #6c757d; color: #fff; }
.badge-success   { background-color: #1e6b3a; color: #fff; }
.badge-danger    { background-color: #a32820; color: #fff; }
.badge-warning   { background-color: #f5b301; color: #212529; }
.badge-info      { background-color: #1a4fa0; color: #fff; }
.badge-light     { background-color: #f8f9fa; color: #212529; }
.badge-dark      { background-color: #343a40; color: #fff; }

/* ---- .close (45 usos): no BS5 é btn-close com ícone próprio ---- */
.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;
    padding: 0;
    cursor: pointer;
}
.close:hover { opacity: .75; }

/* ---- margens/padding direccionais (15 usos) ---- */
.ml-0{margin-left:0}      .ml-1{margin-left:.25rem}  .ml-2{margin-left:.5rem}
.ml-3{margin-left:1rem}   .ml-4{margin-left:1.5rem}  .ml-5{margin-left:3rem}
.ml-auto{margin-left:auto}
.mr-0{margin-right:0}     .mr-1{margin-right:.25rem} .mr-2{margin-right:.5rem}
.mr-3{margin-right:1rem}  .mr-4{margin-right:1.5rem} .mr-5{margin-right:3rem}
.mr-auto{margin-right:auto}
.pl-0{padding-left:0}     .pl-1{padding-left:.25rem} .pl-2{padding-left:.5rem}
.pl-3{padding-left:1rem}  .pl-4{padding-left:1.5rem}
.pr-0{padding-right:0}    .pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}
.pr-3{padding-right:1rem} .pr-4{padding-right:1.5rem}

/* ---- alinhamento e float ---- */
.text-left  { text-align: left !important; }
.text-right { text-align: right !important; }
.float-left { float: left !important; }
.float-right{ float: right !important; }

/* ---- acessibilidade ---- */
.sr-only {
    position: absolute; width: 1px; height: 1px;
    padding: 0; margin: -1px; overflow: hidden;
    clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* ---- input-group do BS4 ---- */
.input-group-append, .input-group-prepend { display: flex; }
.input-group-append .input-group-text,
.input-group-prepend .input-group-text {
    display: flex; align-items: center; padding: .375rem .75rem;
    background-color: #e9ecef; border: 1px solid #ced4da;
}

/* ---- o BS5 mudou o nome do atributo dos componentes ---- */
/* (tratado no JS: data-toggle → data-bs-toggle) */
