/* ---- BUTTONS ---- */
.btn-guardar, .btn-verde {
    display: inline-flex;
    align-items: center;
    padding: .2rem .75rem;
    background-color: #76c416 !important;
    border-radius: 50rem !important;
    vertical-align: middle;
    cursor: pointer;

    font-size: 12px !important;
    color: #fff !important;
    font-weight: 400;
    text-align: center;
    line-height: 1.5;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.btn-guardar::before{
    padding-right: 5px;
    font-family: "Font Awesome 5 Pro";
    content: "\f0c7";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

.btn-guardar:hover, .btn-verde:hover {
    border: 1px solid #76c416;
    background: #fff !important;
    color: #76c416 !important;
    text-decoration: none;
}

.btn-novo {
    display: inline-flex;
    align-items: center;
    padding: .2rem .75rem;
    background-color: #76c416 !important;
    border-radius: 50rem !important;
    vertical-align: middle;
    cursor: pointer;

    font-size: 12px !important;
    color: #fff !important;
    font-weight: 400;
    text-align: center;
    line-height: 1.5;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.btn-novo::before{
    padding-right: 5px;
    font-family: "Font Awesome 5 Pro";
    content: "\f055";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;

    margin-left: -1px;
}

.btn-novo:hover {
    border: 1px solid #76c416;
    background: #fff !important;
    color: #76c416 !important;
    text-decoration: none;
}

.btn-editar, .btn-laranja {
    display: inline-flex;
    align-items: center;
    padding: .2rem .75rem;
    background-color: #f19a15 !important;
    border-radius: 50rem !important;
    vertical-align: middle;
    cursor: pointer;

    font-size: 12px !important;
    color: #fff !important;
    font-weight: 400;
    text-align: center;
    line-height: 1.5;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.btn-editar::before{
    padding-right: 5px;
    font-family: "Font Awesome 5 Pro";
    content: "\f303";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

.btn-editar:hover, .btn-laranja:hover {
    border: 1px solid #f19a15;
    background: #fff !important;
    color: #f19a15 !important;
    text-decoration: none;
}

.btn-apagar, .btn-vermelho {
    display: inline-flex;
    align-items: center;
    padding: .2rem .75rem;
    background-color: #d6292d !important;
    border-radius: 50rem !important;
    vertical-align: middle;
    cursor: pointer;

    font-size: 12px !important;
    color: #fff !important;
    font-weight: 400;
    text-align: center;
    line-height: 1.5;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.btn-apagar::before{
    padding-right: 5px;
    font-family: "Font Awesome 5 Pro";
    content: "\f2ed";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

.btn-apagar:hover, .btn-vermelho:hover {
    border: 1px solid #d6292d;
    background: #fff !important;
    color: #d6292d !important;
    text-decoration: none;
}

.btn-filtrar, .btn-azul, .btn-limparFiltro {
    display: inline-flex;
    align-items: center;
    padding: .2rem .75rem;
    background-color: #007dfe !important;
    border-radius: 50rem !important;
    vertical-align: middle;
    cursor: pointer;

    font-size: 12px !important;
    color: #fff !important;
    font-weight: 400;
    text-align: center;
    line-height: 1.5;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    transition: all .15s ease-in-out;
}

.btn-limparFiltro {
  display: inline-flex;
  align-items: center;
  padding: .2rem .75rem;
  background-color: gray !important;
  border-radius: 50rem !important;
  vertical-align: middle;
  cursor: pointer;

  font-size: 12px !important;
  color: #fff !important;
  font-weight: 400;
  text-align: center;
  line-height: 1.5;

  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: 1px solid transparent;
  transition: all .15s ease-in-out;
}

.btn-filtrar::before{
    padding-right: 5px;
    font-family: "Font Awesome 5 Pro";
    content: "\f0b0";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

.btn-limparFiltro::before{
    padding-right: 5px;
    font-family: "Font Awesome 5 Pro";
    content: "\f12d";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

.btn-filtrar:hover, .btn-azul:hover {
    border: 1px solid #007dfe;
    background: #fff !important;
    color: #007dfe !important;
    text-decoration: none;
}

.btn-limparFiltro:hover{
  border: 1px solid gray;
  background: #fff !important;
  color: gray !important;
  text-decoration: none;
}

.btn-ficheiro {
    display: inline-flex;
    align-items: center;
    padding: .2rem .75rem;
    background-color: #007dfe !important;
    border-radius: 50rem !important;
    vertical-align: middle;
    cursor: pointer;

    font-size: 12px !important;
    color: #fff !important;
    font-weight: 400;
    text-align: center;
    line-height: 1.5;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.btn-ficheiro::before{
    padding-right: 5px;
    font-family: "Font Awesome 5 Pro";
    content: "\f07c";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

.btn-ficheiro:hover {
    border: 1px solid #007dfe;
    background: #fff !important;
    color: #007dfe !important;
    text-decoration: none;
}

.btn-icon {
    min-height: 26.4px;
    min-width: 26.4px;
    padding: .2rem .2rem;
    border-radius: 1em;
    justify-content: center;
}

.btn-icon::before{
    padding-right: 0px;
    margin: 0px;
}

.opcao-estado {
    line-height: 1.5;
    letter-spacing: 0.7px;
    color: #666 !important;
    font-size: 14px !important;;
    cursor: pointer;
    padding: 7.5px 15px;
    border-top: solid 1px #f3f3f3;
    margin: 0px;
}

.opcao-estado:hover{
    background-color: #ccc;
}

.fw-400 {
    font-weight: 400 !important;
}

.fw-500 {
    font-weight: 500 !important;
}

.fw-600 {
    font-weight: 600 !important;
}

.fw-700 {
    font-weight: 700 !important;
}

.fw-800 {
    font-weight: 800 !important;
}

.li-btn-primary {
    background: transparent;
    position: relative;
    display: block;
    padding: .5rem 1.25rem;
    text-align: center !important;
    transition: 0.06s ease;
}

.li-btn-primary:hover {
    color: #fff;
    background-color: #007bffa3;
}

.tag {
    display: inline-flex;
    align-items: center;
    padding: .1rem .5rem;
    border-radius: 5px !important;
    vertical-align: middle;
    font-size: 12px !important;
    font-weight: 500;
    text-align: center;
    line-height: 1.5;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transition: all .08s ease-out;
}

.tag > span {
    transition: all .08s ease-out;
}

.tag > i {
    transform: translateY(1px);
}

.tag.tag-sm {
    padding: .05rem .2rem;
    font-size: 11px !important;
    font-weight: 500;
}
.tag.tag-sm > i {
    transform: translateY(0px);
}
.tag > i:first-child {
    margin-right: 4px;
}
.tag > i:last-child {
    margin-left: 4px;
}
.tag-verde {
    border: 1px solid #76c416 !important;
    background-color: #d1ebb1 !important;
    color: #5c9d0b !important;
}
.tag-verde.hover:hover {
    border: 1px solid #76c416 !important;
    background-color: #76c416 !important;
    color: #fff !important;
}

.tag-laranja {
    border: 1px solid #f19a15 !important;
    background-color: #faddb1 !important;
    color: #ce480f !important;
}
.tag-laranja.hover:hover {
    border: 1px solid #f19a15 !important;
    background-color: #f19a15 !important;
    color: #fff !important;
}

.tag-vermelho {
    border: 1px solid #d6292d !important;
    background-color: #f4c6c7 !important;
    color: #b21e22 !important;
}
.tag-vermelho.hover:hover {
    border: 1px solid #d6292d !important;
    background-color: #d6292d !important;
    color: #fff !important;
}

.tag-azul {
    border: 1px solid #007dfe !important;
    background-color: #c7e2ff !important;
    color: #0272e8 !important;
}
.tag-azul.hover:hover {
    border: 1px solid #007dfe !important;
    background-color: #007dfe !important;
    color: #fff !important;
}

.tag-custom{
    background-color: color-mix(in srgb, currentColor 20%, white);
    border: 1px solid currentColor;
}

.tag-custom.hover:hover{
    background-color: currentColor;
    /*color: color-mix(in srgb, currentColor 0%, white) !important;*/
    border: 1px solid currentColor;
}

.tag-custom.hover:hover > span{
    color: #fff;
}

.tag.hover:active {
    background-color: color-mix(in srgb, currentColor 70%, black);
    color: #fff;
}

.ripple-effect {
    position: relative;
    overflow: hidden;
}
.ripple {
    position: absolute;
    opacity: 0;
    border-radius: 50%;
    width: 2px;
    height: 2px;
    background-color: rgba(255, 255, 255, 0.58);
    animation-duration: 0.5s;
    animation-name: ripple;
}

@keyframes ripple {
    0% {
        opacity: 1;
    }
    100% {
        transform: scale(165);
    }
}

.btn-confirmar {
    background-color: #00f;
    border-radius: 5px;
    color: #fff;
}
.btn-confirmar:disabled {
    background-color: #ddd;
}