/*
   bs3-compat.css - Camada de compatibilidade Bootstrap 3.0.0 -> 4.6.2 (Fiscale)

   Reimplementa as classes do BS3 que o BS4 removeu ou renomeou, para que a
   marcacao legada continue renderizando ~igual enquanto as telas sao migradas
   uma a uma (Fase 3 do plano). Cada secao tem um cabecalho de AREA: quando
   aquela area ja estiver convertida para marcacao BS4, remova a secao. Quando
   o arquivo ficar vazio, pode ser deletado (Fase 4).

   Carregar SEMPRE depois de bootstrap.min.css.
   Par: assets/js/bs3-compat.js (normaliza .collapse.in -> .show no load).
*/

/* ==================================================================
   PANELS  ->  cards          (BS4 removeu .panel*)  -- 48 arquivos
   ================================================================== */
.panel {
  position: relative;
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, .125);
  border-radius: .25rem;
  box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
}
.panel-body {
  padding: 15px;
}
.panel-body::after {
  display: table;
  clear: both;
  content: "";
}
.panel-heading {
  padding: 10px 15px;
  background-color: rgba(0, 0, 0, .03);
  border-bottom: 1px solid rgba(0, 0, 0, .125);
  border-top-left-radius: calc(.25rem - 1px);
  border-top-right-radius: calc(.25rem - 1px);
}
.panel-footer {
  padding: 10px 15px;
  background-color: rgba(0, 0, 0, .03);
  border-top: 1px solid rgba(0, 0, 0, .125);
  border-bottom-right-radius: calc(.25rem - 1px);
  border-bottom-left-radius: calc(.25rem - 1px);
}
.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small {
  color: inherit;
}
.panel > .table,
.panel > .table-responsive > .table,
.panel > .list-group {
  margin-bottom: 0;
}
.panel > .table-responsive {
  margin-bottom: 0;
  border: 0;
}

/* Cabecalhos contextuais do BS3 */
.panel-default > .panel-heading { color: #333; background-color: #f5f5f5; border-color: #ddd; }
.panel-primary { border-color: #337ab7; }
.panel-primary > .panel-heading { color: #fff; background-color: #337ab7; border-color: #337ab7; }
.panel-success { border-color: #d6e9c6; }
.panel-success > .panel-heading { color: #3c763d; background-color: #dff0d8; border-color: #d6e9c6; }
.panel-info { border-color: #bce8f1; }
.panel-info > .panel-heading { color: #31708f; background-color: #d9edf7; border-color: #bce8f1; }
.panel-warning { border-color: #faebcc; }
.panel-warning > .panel-heading { color: #8a6d3b; background-color: #fcf8e3; border-color: #faebcc; }
.panel-danger { border-color: #ebccd1; }
.panel-danger > .panel-heading { color: #a94442; background-color: #f2dede; border-color: #ebccd1; }

/* Accordion (.panel-group) */
.panel-group { margin-bottom: 20px; }
.panel-group .panel { margin-bottom: 0; border-radius: .25rem; }
.panel-group .panel + .panel { margin-top: 5px; }
.panel-group .panel-heading { border-bottom: 0; }
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group { border-top: 1px solid #ddd; }

/* BS3 abria acordeao com .in; BS4 usa .show. bs3-compat.js converte no load;
   esta regra cobre o primeiro paint antes do JS rodar. */
.panel-collapse.collapse.in { display: block; }

/* ==================================================================
   BOTOES     (.btn-default -> .btn-secondary ; .btn-xs removido)  -- 24 arquivos
   ================================================================== */
.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default.disabled,
.btn-default:disabled {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-xs,
.btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: .2rem;
}

/* ==================================================================
   LABELS  ->  badges     (.label / .label-* renomeados)  -- 5 arquivos
   ================================================================== */
.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em;
}
.label:empty { display: none; }
.label-default { background-color: #777; }
.label-primary { background-color: #337ab7; }
.label-success { background-color: #5cb85c; }
.label-info    { background-color: #5bc0de; }
.label-warning { background-color: #f0ad4e; }
.label-danger  { background-color: #d9534f; }
a.label:hover,
a.label:focus { color: #fff; text-decoration: none; cursor: pointer; }

/* ------------------------------------------------------------------
   .badge  --  o codigo legado (GetSolicitacoes em painel_gestor.aspx.cs
   e afins) monta os numeros das tabelas como
   <span class="badge badge-default">N</span>.
   No BS4 .badge e font-size:75% -> os numeros ficam minusculos, e
   .badge-default nem existe (sem cor). Devolvemos o tamanho ~12px do
   BS3 e mapeamos .badge-default para o cinza (equivale a badge-secondary).
   ------------------------------------------------------------------ */
.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 10px;
}
.badge:not([class*="badge-"]),
.badge-default {
  color: #fff;
  background-color: #999;
}
a .badge { color: #fff; }

/* ==================================================================
   TIPOGRAFIA BASE  (BS4 Reboot usa 1rem/16px; BS3 usava 14px)
   So se aplica se style.css/main-style.css nao definir outro valor.
   ================================================================== */
body {
  font-size: 14px;
  line-height: 1.42857143;
}

/* ==================================================================
   UTILITARIOS renomeados     (.pull-x, .img-responsive, .hidden)
   O GRID do BS3 (container, row, colunas, offsets, push, pull, com os
   breakpoints 768/992/1200) foi restaurado inteiro em assets/css/bs3-grid.css.
   ================================================================== */
.pull-right { float: right !important; }
.pull-left  { float: left !important; }
.center-block { display: block; margin-right: auto; margin-left: auto; }
.img-responsive { display: block; max-width: 100%; height: auto; }
.img-rounded { border-radius: 6px; }
.img-circle { border-radius: 50%; }
.hidden { display: none !important; }
.invisible { visibility: hidden; }

/* Cor de link do BS3 (BS4 Reboot usa #007bff). style.css/main-style.css,
   que carregam depois, continuam tendo prioridade. */
a {
  color: #337ab7;
}
a:hover,
a:focus {
  color: #23527c;
}

/* .caret: BS4 removeu a classe e passou a desenhar a setinha via
   .dropdown-toggle::after. O markup legado traz <span class="caret">,
   entao recriamos .caret e suprimimos o ::after do BS4 para nao duplicar. */
.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}
.dropdown-toggle::after { display: none; }

/* ==================================================================
   TABELA condensada / INPUT-GROUP-ADDON / PAGE-HEADER
   ================================================================== */
.table-condensed > thead > tr > th,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
  padding: 5px;
}

.page-header {
  padding-bottom: 9px;
  margin: 40px 0 20px;
  border-bottom: 1px solid #eee;
}

/* .input-group-addon (BS4 usa .input-group-text em prepend/append) -- 5 arquivos */
.input-group-addon {
  display: flex;
  align-items: center;
  padding: .375rem .75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: .25rem;
}
.input-group > .input-group-addon:first-child {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .input-group-addon:last-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

/* ==================================================================
   FORMS   (.form-group / .control-label / .help-block / .checkbox / .radio)  -- 8 arquivos
   ================================================================== */
.form-group { margin-bottom: 1rem; }
.control-label { margin-bottom: .5rem; font-weight: 400; }
.form-horizontal .control-label { padding-top: calc(.375rem + 1px); margin-bottom: 0; }
.help-block { display: block; margin-top: .25rem; font-size: 80%; color: #6c757d; }
.form-control-static { padding-top: calc(.375rem + 1px); margin-bottom: 0; }
.checkbox,
.radio {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.checkbox label,
.radio label {
  min-height: 20px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: 400;
  cursor: pointer;
}
.checkbox input[type="checkbox"],
.radio input[type="radio"],
.checkbox-inline input[type="checkbox"],
.radio-inline input[type="radio"] {
  position: absolute;
  margin-left: -20px;
}
.checkbox-inline,
.radio-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: 400;
  vertical-align: middle;
  cursor: pointer;
}
.form-inline .form-group {
  display: inline-block;
  margin-bottom: 0;
  vertical-align: middle;
}

/* ==================================================================
   NAV (componente)  -- BS4 tornou .nav um flex-container. O tema admin
   (SB Admin) usa <ul class="nav" id="side-menu"> como menu VERTICAL e
   <ul class="nav navbar-top-links"> no topo; com display:flex os <li>
   viram flex-items em linha e o menu lateral quebra. Voltamos ao BS3.
   ================================================================== */
.nav {
  display: block;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.nav::before,
.nav::after { display: table; content: " "; }
.nav::after { clear: both; }
.nav > li { position: relative; display: block; }
.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}
.nav > li > a:hover,
.nav > li > a:focus { text-decoration: none; background-color: #eee; }
.nav > li.disabled > a { color: #777; }
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus { background-color: #eee; border-color: #337ab7; }
.nav .nav-divider { height: 1px; margin: 9px 0; overflow: hidden; background-color: #e5e5e5; }
.nav > li > a > img { max-width: none; }

/* ==================================================================
   NAVBAR  -- bridge. A Fase 1 reescreve as masters para marcacao BS4
   (navbar-expand-lg / navbar-toggler / dropdown-item) e esta secao sai.
   ================================================================== */
.navbar {
  position: relative;
  display: block;
  min-height: 50px;
  padding: 0;
  margin-bottom: 20px;
  border: 1px solid transparent;
}
.navbar::before,
.navbar::after { display: table; content: " "; }
.navbar::after { clear: both; }
.navbar-default { background-color: #f8f8f8; border-color: #e7e7e7; }
/* .navbar-fixed-* / -static-*  ->  BS4 .fixed-* / .sticky-* */
.navbar-fixed-top { position: fixed; top: 0; right: 0; left: 0; z-index: 1030; }
.navbar-fixed-bottom { position: fixed; right: 0; bottom: 0; left: 0; z-index: 1030; }
.navbar-static-top { z-index: 1000; }
.navbar-header::after { display: table; clear: both; content: ""; }
.navbar-brand { float: left; height: 50px; padding: 15px; font-size: 18px; line-height: 20px; }
.navbar-nav { padding-left: 0; margin: 0; list-style: none; }
.navbar-nav > li > a { position: relative; display: block; padding: 15px; line-height: 20px; }
.navbar-right { float: right !important; }
.navbar-left  { float: left !important; }
.navbar-toggle {
  position: relative;
  float: right;
  padding: 9px 10px;
  margin: 8px 15px;
  background-color: transparent;
  background-image: none;
  border: 1px solid #ddd;
  border-radius: 4px;
}
.navbar-toggle .icon-bar { display: block; width: 22px; height: 2px; border-radius: 1px; background-color: #888; }
.navbar-toggle .icon-bar + .icon-bar { margin-top: 4px; }
.navbar-collapse { padding-right: 15px; padding-left: 15px; overflow-x: visible; }
.navbar-form { padding: 10px 15px; margin: 8px -15px; }
@media (min-width: 768px) {
  .navbar-toggle { display: none; }
  .navbar-header { float: left; }
  .navbar-nav { float: left; margin: 0; }
  .navbar-nav > li { float: left; }
  .navbar-collapse { width: auto; }
  .navbar-collapse.collapse { display: block !important; height: auto !important; overflow: visible !important; }
}
@media (max-width: 767px) {
  .navbar-collapse.collapse { display: none; }
  .navbar-collapse.collapse.in,
  .navbar-collapse.collapse.show,
  .navbar-collapse.collapsing { display: block !important; }
}

/* dropdown: BS3 usava <li><a>, BS4 usa .dropdown-item */
.dropdown-menu > li > a {
  display: block;
  width: 100%;
  padding: .25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #f8f9fa;
}
.dropdown-menu .divider {
  height: 0;
  margin: .5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

/* ==================================================================
   MODAL          (BS4 tornou .modal-header um flex container)
   O markup legado poe <button.close> ANTES de <h4.modal-title> e
   conta com .modal-header em bloco + .close flutuando a direita (BS3).
   No BS4 o header vira flex e o titulo era jogado para a direita.
   Restaura o comportamento BS3 sem editar dezenas de modais.
   ================================================================== */
.modal-header {
  display: block;
}
.modal-header::after {
  display: table;
  clear: both;
  content: "";
}
.modal-header .close {
  float: right;
  margin: 0;
  padding: 0;
  font-size: 21px;
  font-weight: 700;
  line-height: 1;
}
.modal-title {
  margin: 0;
  line-height: 1.42857143;
}
