.html{
    height: 100%;
    border-color:  #888888;
    font-size: 14px;
    min-height: -webkit-fill-available;
}

body{
    color: black;
    background-color: #eee;
    overscroll-behavior: contain;
    font-family: Arial, sans-serif;
}

.right
{
    text-align: right !important;
}

.left
{
    text-align: left !important;
}

.titulo{
    width: 100%;
    text-align: center;
    font-size: 18px;
    color: #6E8ACC;
    margin-bottom: 10px;
}
.erro {
    color: #AA0800;
}

.login-form {
		width: 340px;
    	margin: 50px auto;
	}
    .login-form form {
    	margin-bottom: 15px;
        background: #f7f7f7;
        box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
        padding: 30px;
    }
    .login-form h2 {
        margin: 0 0 15px;
    }
    .form-control, .btn {

        border-radius: 2px;
    }
    .btn {        
        font-size: 15px;
        font-weight: bold;
    }
    
    .btn_login {        
        width: 100%;
    }

.wrapper {
    margin: auto;
  display: grid;
  grid-gap: 1px;
  color: #444;
}

.wrapper_button {
    margin: auto;
    width: 125px;
  display: grid;
  grid-template-columns: 125px ;
  grid-gap: 1px;
  color: #444;
}

.paginacao{
    /*width: 600px;*/
    width: -webkit-calc(100% - 360px);
    width:    -moz-calc(100% - 360px);
    width:         calc(100% - 360px);
    height: 30px;
    float:left;
    margin-left: 30px;
    margin-right: 30px;
}
.pagina{
    width: 30px;
    height: 20px;
    line-height: 20px;
    color: blue;
    text-align: center;
    float: left;
    border-radius: 5px;

}

.exportar{
    margin-left: 20px;
}

.pagina_escolhida
{
    background-color: orange;
}

.botao_voltar{
    float: left;
}

.botao_novo{
    float: right;
}

.separator{
    border-style: none dotted none dotted;
    border-width: 2px;
}

.hand{
        cursor: pointer;
}

.hidden{
    display: none !important;
}

.search_input
{
    background-color: #aaa;
    color: #333;
    margin-right: 10px;
    size: 15px;
}
.search_label{
    font-size: 80%;
    padding-right: 10px;
    padding-left: 10px;
}


.boxheader {
  background-color: #ddd;
  color: #000;
  border-radius: 5px;
  padding: 3px;
  text-align: center;
  cursor: pointer;

}

.label_filtro{
    width: 100%;
    float: left;
    clear: both;
}

.filtro{
    width: 100%;
    float: left;
    clear: both;
}

input.filtro{

  width: -webkit-calc(100% - 3px);
  width:    -moz-calc(100% - 3px);
  width:         calc(100% - 3px);
  border-radius: 5px;
  height: 20px;
  border: none;
}


div.menu{
    position:absolute;
   width: 100%;
   height: 100%;
    
    z-index: 1000;

}

div.menu_lista
{
    width: 800px;
    margin: auto;
    overflow-y: auto;
    overflow-x: hidden;
    height: 100vh;
    grid-template-columns: 320px 320px;
    grid-gap:20px;
    display: grid;
    grid-template-rows:  repeat(auto-fill, 56px);
}
div.opcao_menu {
    width:320px;
}
div.opcao_menu label{
    
    clear: both;
    display: inline-block;
    text-align: center;
    padding-top: 20px;
    text-decoration: none;
    width: 100%;
    height: 40px;
    border-radius: 10px;
    border: 1px solid #888888;
    font-size: 18px;
    cursor: pointer;
}

div.separador_menu{
        float: left;
        margin-right: 10px;
        width: 100%;
    }
    
div.separador_menu label{
    
    clear: both;
    font-size: 16px;
    display: inline-block;
    color: #333;
    text-align: center;
    padding-top: 5px;
    padding-left: 5px;
    padding-right: 5px;
    text-decoration: none;
    width: 100%;
    height: 30px;

    margin-left: auto;
    margin-right: auto;
}

div.grelha_entidades{
    width: 1000px;
    grid-template-columns: 600px 100px 300px;
}
.col_nome{
    text-align: left !important;
}

div.grelha_atletas{
    width: 1100px;
    grid-template-columns: 50px 400px 100px 100px 50px 100px 350px;
}

div.email_pendente{
    width: 600px;
    grid-template-columns: 500px 100px;
    display: grid;
}

div.grelha_emails{
     width: 600px;
    padding: auto;
}

div.sms_pendente{
    width: 600px;
    grid-template-columns: 500px 100px;
    display: grid;
}

div.grelha_sms{
     width: 600px;
    padding: auto;
}

div.lista_configuracao{
    width: 800px;
    margin:auto;
}

div.lista_dados{
    width: 1000px;
    margin:auto;
}

div.grelha_epocas{
    width: 300px;
    grid-template-columns: 100px 100px 100px;
}

div.lista_epocas{
    width: 320px;
    margin: auto;
}

div.grelha_pag_mensalidades, div.grelha_pag_cotas{
    width: 100%;
    grid-template-columns: 50px 550px 100px 100px 100px 100px;
}

div.lista_pag_mensalidades, div.lista_pag_cotas, div.lista_atletas, div.lista_entidades{
    width: 1000px;
    margin: auto;
}

div.lista_atletas{
    width: 1100px;
    margin: auto;
}

div.lista_mensalidades, div.lista_frm_mensalidades, div.lista_cotas, div.lista_frm_cotas{
    width: 480px;
    margin: auto;   
    clear: left;
}

div.grelha_linha_mensalidades, div.grelha_linha_cotas{
    width: 100%;
    grid-template-columns: 200px 90px 60px 100px;
}

input.pagar_mensalidade, input.pagar_cota{
    display: inline !important;
}

.mensalidade{
    line-height: 34px;
}

.cota{
    line-height: 34px;
}
.valor_pagar{
    margin-bottom: 0px !important;
}

div.grelha_equipamentos{
    width: 500px;
    grid-template-columns: 400px 100px;
}
div.lista_equipamentos{
    width: 500px;
    margin: auto;
}

div.frm_equipamentos{
    width: 400px;
    margin: auto;
}

div.grelha_categorias{
    width: 400px;
    grid-template-columns: 400px;
}
div.lista_categorias{
    width: 400px;
    margin: auto;
}

div.frm_categorias{
    width: 400px;
    margin: auto;
}

div.grelha_socios{
    width: 900px;
    grid-template-columns: 50px 400px 100px 350px;
}

div.grelha_movimentos{
    width: 1000px;
    grid-template-columns: 50px 90px 470px 70px 100px 80px 120px;
}
div.lista_movimentos{
    width: 1000px;
    margin: auto;
}

div.frm_movimentos{
    width: 650px;
    margin: auto;
}
.col_mov_valor{
    text-align: right !important;
}

.col_mov_autor
{
    white-space: nowrap;
  overflow: hidden;
}
div.filtros_consulta_resumo, div.lista_consulta_resumo{
    width: 600px;
    margin: auto;
}

div.grelha_movimentos_resumo{
    width: 600px;
    grid-template-columns: 70px 430px 100px;
}

.separador_lista{
    margin-top: 10px;
    font-weight: bold;
}

div.filtros_consulta, div.lista_consulta{
    width: 650px;
    margin: auto;
}

div.grelha_entrega_equips{
    width: 100%;
    grid-template-columns: 50px 70px 450px 90px 100px 80px 160px;
}

div.lista_entrega_equips{
    width: 1000px;
    margin: auto;
}

div.lista_entrega_equipamentos, div.lista_frm_entrega_equips{
    width: 600px;
    margin: auto;
    clear: left;
}

div.grelha_linha_entrega_equips{
    width: 100%;
    grid-template-columns: 270px 80px 70px 150px 24px;
}

div.col_eliminar_pagamento{
    background-image: url('../images/eliminar.png');
    background-repeat: no-repeat;
    background-position-x: center;
    background-size: 20px 20px;
    background-position-y: center;
}

div.adiciona_equipamento{
    margin-bottom: 30px;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    background-image: url('../images/adicionar.png');
    background-repeat: no-repeat;
    background-position-x: center;
    background-size: 38px 38px;
    height: 38px;
    cursor: pointer;
}

div.grelha_utilizadores{
    width: 600px;
    grid-template-columns: 150px 450px;
}
div.lista_utilizadores{
    width: 600px;
    margin: auto;
}

div.frm_utilizadores{
    width: 760px;
    margin: auto;
}

div.grelha_linha_permissoes{
     width: 400px;
    grid-template-columns: 315px 85px;
}
input.permissao{
    display: inline !important;
}


.box{
    text-align: center;
    padding-top: 4px;
    padding-left: 4px;
    padding-right: 4px;
    border-bottom: 1px dotted #6E8ACC;
    height: 24px;
}

.box_simples{
    text-align: center;
    padding-top: 4px;
    padding-left: 4px;
    padding-right: 4px;
    height: 24px;
}

.box_frm{
    text-align: center;
    padding-top: 4px;
    padding-left: 4px;
    padding-right: 4px;
    border-bottom: 1px dotted #6E8ACC;
    height: 28px;
    line-height: 26px;
}

.enviar_foto_atleta{
    float: right;
padding-top: 8px;
}

.upload_foto {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.upload_foto + label {
    width: 100px;
    font-size: 1rem;
    /* 20px */
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
    padding: 0.625rem 0.625rem;
           color: #d3394c;
    border: 2px solid currentColor;
    border-radius: 5px;
}

.btn_upload_foto{
    width: 120px;
    background-image: url('../images/upload.png');
    background-repeat: no-repeat;
    background-position-x: center;
    background-size: 60px 38px;
    height: 38px;
    clear: both;
    float: left;
    cursor: pointer;
}

.inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.inputfile + label {
    width: 225px;
    font-size: 1rem;
    /* 20px */
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
    padding: 0.625rem 0.625rem;

}


.inputfile:focus + label,
.inputfile.has-focus + label {
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px;
}

.inputfile + label * {
    /* pointer-events: none; */
    /* in case of FastClick lib use */
}

.inputfile + label svg {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
    margin-top: -0.25em;
    /* 4px */
    margin-right: 0.25em;
    /* 4px */
}

.inputfile-2 + label {
    color: #d3394c;
    border: 2px solid currentColor;
    border-radius: 5px;
}

.inputfile-2:focus + label,
.inputfile-2.has-focus + label,
.inputfile-2 + label:hover {
    color: #158711;
}

.enviar_ficha_atleta{
    text-align: center;
    margin-top: 25px;
}
.procurar_ficha_atleta{
    width: 265px;
    float: left;
    margin-left: -webkit-calc(50% - 135px);
    margin-left:    -moz-calc(50% - 135px);
    margin-left:         calc(50% - 135px);
}
.btn_upload{
    width: 65px;
    background-image: url('../images/upload.png');
    background-repeat: no-repeat;
    background-position-x: left;
    background-size: 60px 38px;
    height: 38px;
    float: left;
    cursor: pointer;
}

.ficha_atleta {
       width: 800px;
      display: flex;
      justify-content: center;
      align-items: center;
      height: inherit;
      padding: 20px;
      margin: auto;
}

.form_ficha_atleta {
    width: 100%;
    padding: 20px;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 0 8px  #cc7a00; 
}


.ficha_socio {
       width: 800px;
      display: flex;
      justify-content: center;
      align-items: center;
      height: inherit;
      padding: 20px;
      margin: auto;
}

div.frm_socios{
    width: 760px;
    margin: auto;
}
      
.item input, select, textarea {
margin-bottom: 8px;
border: 1px solid #ccc;
border-radius: 3px;
}
.item input {
width: calc(100% - 10px);
padding: 3px;
}

.item_simples
{
    clear: left;
}

.item select {
width: calc(100%);
padding: 3px;
}

input[type="date"] {
padding: 4px 5px;
}
textarea {
width: calc(100% - 12px);
padding: 5px;
}
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.item:hover p, .item:hover i, .question:hover p, .question label:hover, input:hover::placeholder {
color: #cc7a00;
}
.item input:hover, .item select:hover, .item textarea:hover {
border: 1px solid transparent;
box-shadow: 0 0 3px 0 #cc7a00;
color: #cc7a00;
}
.item {
position: relative;
margin: 2px 0;
}

.cabecalho_ficha{
    float: left;
    width: 500px;
    height:180px;
}

div.foto{
    float: right;
    width: 120px;
    height:180px;
}

img.foto{
    max-height:160px;
    border-radius: 8px;
    max-width: 120px;
}

.numero_atleta{
    float:left;
    width: 136px;
}

.estado_atleta{
    clear: none !important;
    float:right;
    width: 136px;
}
.no_clear{
    clear: none !important;
}

.cod_postal{
    float:left;
    width: 136px;
}

.telemovel{
    clear: none !important;
    float:left;
    margin-left: 20px !important;
    width: 136px;
}

.doencas{
    float: left;
  clear: left;
  width:100%;
}
.data_nascimento{
    clear: none !important;
    float: left;
    margin-left: 20px !important;
    width: 136px;
}

.data_normal{
    float: left;
    width: 136px;
}

.campo100{
    float:left;
    width: 100px;
}

.campo75{
    float:left;
    width: 75px;
}

div.clear{
    clear: both;
}

.escalao, .estado_socio{
    float:left;
}

.lesoes{
    float: left;
  width: 100%;
}
.bi{
    clear: none !important;
    float:left;
    margin-left: 20px !important;
    width: 136px;
}

.nif{
    clear: none !important;
    float:right;
    margin-left: 20px !important;
    width: 136px;
}

.tipo_entidade 
{
    clear:left;
}
.escola{
    float:left;
    width: 212px;
}

.ano_escolar{
    clear: none !important;
    float:left;
    margin-left: 20px !important;
    width: 60px;
}

.clube_anterior{
    clear: none !important;
    float: left;
    margin-left: 20px !important;
    width: 136px;
}


.sistema_saude{
    clear: none !important;
    float:left;
    margin-left: 20px !important;
    width: 136px;
}

.num_beneficiario{
    clear: none !important;
    float:right;
    margin-left: 20px !important;
    width: 136px;
}

.email{
    float: left;
    width: 100%;
}

.email_mensagem textarea, .sms_mensagem textarea{
    height:200px;
}

.escalao_destinatario{
    float:left;
    width: 49%;
}

.destinatario{
    clear: none !important;
    float:right;
    width: 49%;
}

.item span {
color: red;
}
input[type="date"]::-webkit-inner-spin-button {
display: none;
}
.item i, input[type="date"]::-webkit-calendar-picker-indicator {
position: absolute;
font-size: 20px;
color: #cc7a00;
}
.item i {
right: 1%;
top: 30px;
z-index: 1;
}
[type="date"]::-webkit-calendar-picker-indicator {
right: 1%;
z-index: 2;
opacity: 0;
cursor: pointer;
}
input[type=radio], input[type=checkbox]  {
display: none;
}
label.radio {
position: relative;
display: inline-block;
margin: 5px 20px 15px 0;
cursor: pointer;
}
.question span {
margin-left: 30px;
}
.question-answer label {
display: block;
}
label.radio:before {
content: "";
position: absolute;
left: 0;
width: 17px;
height: 17px;
border-radius: 50%;
border: 2px solid #ccc;
}
input[type=radio]:checked + label:before, label.radio:hover:before {
border: 2px solid #cc7a00;
}
label.radio:after {
content: "";
position: absolute;
top: 6px;
left: 5px;
width: 8px;
height: 4px;
border: 3px solid #cc7a00;
border-top: none;
border-right: none;
transform: rotate(-45deg);
opacity: 0;
}
input[type=radio]:checked + label:after {
opacity: 1;
}
.btn-block {
margin-top: 10px;
text-align: center;
clear: both;
}
button {
width: 150px;
padding: 10px;
border: none;
border-radius: 5px; 
font-size: 16px;
color: #fff;
cursor: pointer;
}

