/* Garante que o corpo da página ocupe toda a altura da tela */
html, body {
    height: 100%;
}

body {
    display: flex;
    flex-direction: column;
    background: #f4f6f9;
}

/* O container que segura o Topbar, Conteúdo e Footer */
.flex-grow-1 {
    display: flex;
    flex-direction: column;
    min-height: 100vh; /* Ocupa a altura total da janela */
}

/* A div de conteúdo deve crescer para ocupar o espaço vazio */
.content {
    flex: 1 0 auto;
}

/* O footer fica parado na base */
footer {
    flex-shrink: 0;
}
input, select, textarea{
  text-transform: uppercase;
}
.lowcase{
  text-transform: lowercase !important;
}

input:focus, textarea:focus, select:focus{
  box-shadow: 0 0 0 0 !important;
  border:2px solid #3483Fa !important;
  padding: 0.300rem 0.70rem !important;
}
.form-group {
    margin-bottom: 1rem;
    font-weight: 600;
}

/******************* SIDE BAR *********************/
.sidebar {
    min-height: 100vh;
    background: #212529;
    color: #fff;
    transition: width 0.3s;
}
.sidebar .nav-link {
    color: #adb5bd;
}
.sidebar .nav-link.active, .sidebar .nav-link:hover {
    color: #fff;
    background: #343a40;
}
.sidebar-collapsed {
    width: 70px !important;
}
.sidebar-collapsed .sidebar-text {
    display: none;
}
.topbar {
    background: #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.03);
}
.content {
    padding: 0 1.5rem;
    min-height: calc(100vh - 190px);
}
@media (max-width: 991.98px) {
    .sidebar {
        position: fixed;
        z-index: 1040;
        left: -250px;
        width: 250px;
        transition: left 0.3s;
    }
    .sidebar.show {
        left: 0;
        position: relative;
    }
    .content {
        padding: 1rem;
    }
}
/******************* ICONE REDONDO *********************/
.rounded-circle {
    border-radius: 50% !important;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/******************* BREADCRUMB *********************/
.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #eaecf4;
  border-radius: 0.35rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #858796;
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #858796;
}
.breadcrump-link{
    color: #868686;
}
.breadcrump-link:hover{
    color: #001449;
    text-decoration: none;
}
/******************* FOOTER *********************/
footer.sticky-footer {
  padding: 2rem 0;
  flex-shrink: 0;
}

footer.sticky-footer .copyright {
  line-height: 1;
  font-size: 0.8rem;
}

/******************* ANIMAÇÃO ITENS *********************/
.container-animado {
    counter-reset: item;
}
  
.container-animado .item {
    transform: scale(0.5);
    animation: slide-in 0.5s ease-in-out forwards;
    animation-delay: calc(var(--item-index) * 0.2s);
    counter-increment: item;
    --item-index: counter(item);
}
  
@keyframes slide-in {
    to {        
        transform: scale(1);
    }
}
/******************* CARD BOOTSTRAP CUSTOMIZADO *********************/
.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid #e3e6f0;
  border-radius: 0.35rem;
  transition: all 0.5s;
}

.card > hr {
  margin-right: 0;
  margin-left: 0;
}

.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}

.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.35rem - 1px);
  border-top-right-radius: calc(0.35rem - 1px);
}

.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.35rem - 1px);
  border-bottom-left-radius: calc(0.35rem - 1px);
}

.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-body a{
    text-decoration: none;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: #f8f9fc;
  border-bottom: 1px solid #e3e6f0;
}

.card-header:first-child {
  border-radius: calc(0.35rem - 1px) calc(0.35rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: #f8f9fc;
  border-top: 1px solid #e3e6f0;
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.35rem - 1px) calc(0.35rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  border-radius: calc(0.35rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}

.card-
,
.card-img-top {
  border-top-left-radius: calc(0.35rem - 1px);
  border-top-right-radius: calc(0.35rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.35rem - 1px);
  border-bottom-left-radius: calc(0.35rem - 1px);
}
.card-deck .card {
  margin-bottom: 0.75rem;
}
.card-button{
    border-top: 3px solid #e3e6f0;
    border-left: 1px solid #e3e6f0;
    border-right: 1px solid #e3e6f0;
}
.card-button-primary:hover{
    text-decoration: none;
    border-top: 3px solid #0d6efd;
}

.card-button-success:hover{
    text-decoration: none;
    border-top: 3px solid #198754;
}

.card-button-warning:hover{
    text-decoration: none;
    border-top: 3px solid #ffc107;
}

.card-button-danger:hover{
    text-decoration: none;
    border-top: 3px solid #dc3545;
}

.card-button-info:hover{
    text-decoration: none;
    border-top: 3px solid #0dcaf0;
}

/******************* TEXT GRAY BOOTSTRAP CUSTOMIZADO *********************/
.text-gray-100 { color: #f8f9fc !important; }
.text-gray-200 { color: #eaecf4 !important; }
.text-gray-300 { color: #dddfeb !important; }
.text-gray-400 { color: #d1d3e2 !important; }
.text-gray-500 { color: #b7b9cc !important; }
.text-gray-600 { color: #858796 !important; }
.text-gray-700 { color: #6e707e !important; }
.text-gray-800 { color: #3a3b45 !important; }
.text-gray-900 { color: #212529 !important; }

/******************* LINK CUSTOMIZADO *********************/
a {
  color: #0d6efd;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #224abe;
  text-decoration: none;
}

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

.text-lowercase {
    text-transform: lowercase !important;
}
.input-error:focus{
    border: 2px solid red !important;
}

.nav-item:hover{
  cursor: pointer;
}

.label-view {
    background-color: #e9ecef;
    border: 1px solid #ced4da;
    padding: 0.375rem 0.75rem;
    border-radius: 0.25rem;
    display: block;
    width: 100%;
    min-height: calc(1.5em + 0.75rem + 2px);
    line-height: 1.5;
}

.foto-associado{
    width: 90px;
    height: 120px;
    overflow: hidden;
    position: absolute;
    top:85px;
}

.view-foto{
    width: 90px;
    height: 120px;
    overflow: hidden;
}

.view-foto img{
    width: 100%;
}

.foto-associado img{
    width: 100%;
}

.show{
	display: "";
}
.hide{
	display: none;
}

.btn-add-select{
    width: 40px;
    height: 40px;
    text-align: center;
    border-radius: 20px;
    margin-left: 5px;
}

.img-produto{
    width: 70px;
    height: 70px;
    position: absolute;
    top: 30px;
}
.img-produto img{
    width: 100%;
}

tr.selecionada {
    --bs-table-bg: #1253c9;
    --bs-table-color: #FFF;
}

#header-print {
    display: none;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #000;
}
#header-print h1{
font-size: 25px;
margin: 0;
padding: 0;
}
#header-print .logo{
    max-width: 100px;
    margin-right: 30px;
}
#header-print .logo img{
    width: 100%;
}