html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 50px;
}

.gray-bg {
    background-color: #f3f3f4;
}

a {
    color: #56bc94;
    /*-webkit-transition: all 0.4s ease-in-out;*/
    /*-moz-transition: all 0.4s ease-in-out;*/
    /*-ms-transition: all 0.4s ease-in-out;*/
    /*-o-transition: all 0.4s ease-in-out;*/
}

.table-tour{
    margin: 30px 0;
}


.has-pattern {
    background-image: url(../images/pattern-1.png);
    background-repeat: repeat;
    background-position: left top;
}

.contact {
    background-color: #56bc94;
    color: #fff;
    padding: 80px 0;
}

.footer {
    background: #444444;
    color: #fff;
    padding: 15px 0;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 50px;
}

.footer .copyright {
    color: #b3b3b3;
    margin-right: 15px;
}

.footer .links {
    margin-bottom: 0;
}
.list-inline {
    padding-left: 0;
    margin-left: -5px;
    list-style: none;
}

.footer .links a {
    color: #808080;
}

.text-center {
    text-align: center;
}

.contact .title {
    margin-top: 0;
}

.contact .intro p {
    font-size: 16px;
    font-weight: 300;
}
p {
    margin: 0 0 10px;
}

.contact .intro ul {
    margin-bottom: 30px;
    margin-top: 30px;
}

.contact .contact-form .btn-theme {
    background-color: #317b5e;
    margin-top: 15px;
}
.btn-theme {
    background: #56bc94;
    border: 1px solid #56bc94;
    color: #fff;
}
.btn {
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
}

.btn-theme:hover {
    background: #3fa07a;
    border: 1px solid #3fa07a;
    color: #fff;
}

.contact .intro li a {
    color: #317b5e;
}

.contact .intro li {
    margin-bottom: 10px;
    color: #317b5e;
    font-size: 16px;
}

.contact .intro li .fa {
    margin-right: 10px;
}

.contact .social-icons {
    display: inline-block;
    margin: 0 auto;
    margin-top: 60px;
}
.social-icons {
    list-style: none;
    padding: 10px 0;
    margin-bottom: 0;
}

.social-icons a {
    display: inline-block;
    background: #3fa07a;
    width: 48px;
    height: 48px;
    text-align: center;
    padding-top: 12px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    margin-right: 8px;
    float: left;
}

.social-icons a .fa {
    color: #fff;
}

.social-icons a:hover {
    background: #317b5e;
}

.social-icons a .fa:before {
    font-size: 26px;
    text-align: center;
    padding: 0;
}

.table {
    background-color: #FBFBFB;
    margin-bottom: 0;
}

.table-event thead tr th {
    background-color: #56bc94 !important;
    border-color: #61deb4 #5acfa5 #54ae86 !important;
    color: #fff;
}

.table-striped>tbody>tr:nth-of-type(odd) {
    background-color: #f1f2f4;
}

.table thead tr th {
    background-color: #eeeeee;
    border-color: #e1e1e1 #e1e1e1 #dcdcdc;
    vertical-align: middle;
    border-width: 1px 1px 7px;
    border-style: solid;
    font-weight: 400;
    font-size: 13px;
}

.border-right {
    border-right: 1px solid #dddddd;
}

.border-left {
    border-left: 1px solid #dddddd;
}


.table-event-block h1, .content-inner-block h1{
    font-weight: 100;
    text-transform: uppercase;
    color: #303030;
    margin-bottom: 20px;
    margin-top: 0;
}

.content-inner-block h1{
    text-transform: none;
}

h2 {
    font-weight: 100;
    font-size: 36px;
    color: #303030;
    margin-bottom: 30px;
    text-transform: uppercase;
}

.show-all-events{
    text-align: right;
    font-size: 13px;
    margin-top: 20px;
}

.panel-heading, .panel-group .panel {
    border-radius: 0;
}

.panel-default{
    background: #f1f2f4;
}

.panel-default > .panel-heading {
    border-top: 4px solid #56bc94;
}

.panel-title {
    color: inherit;
    font-size: 16px;
    margin-bottom: 0;
    margin-top: 0;
    padding-bottom: 0;
    color: #34495E;
    font-size: 15px;
}

.table-responsive{
    border: none;
}

.form-block{
    padding: 10px 0;
}

.form-block .t_label{
    font-size: 14px;
    margin-bottom: 3px;
    font-weight: bold;
}

.form-block ul li label{
    font-weight: 400;
    font-size: 13px;
}

.form-block ul li label input{
    margin-right: 5px;
    font-weight: 400;
}

#id_rank, #id_category, #id_age_restriction{
    padding: 0;
}

#id_rank li, #id_category li, #id_age_restriction li{
    display: inline-block;
    list-style: none;
    width: 80px;
}


.profile-navigation li a {
    position: relative;
    display: block;
    padding: 5px 15px;
}

.profile-navigation hr{
    margin: 7px 0;
}

.profile-info p span{
    font-weight: bold;
}

.has-error-er .errorlist{
    display: block;
    margin-bottom: 0;
    list-style: none;
    margin-left: 0;
    padding-left: 10px;
    padding-top: 5px;
    font-size: 0.9em;
    color: red;
}

.help-text-info{
    display: block;
    margin-bottom: 0;
    list-style: none;
    margin-left: 0;
    padding-top: 8px;
    font-size: 0.9em;
    color: #808080;
}


.alert-error{
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1;
}


.middle-box{
    width: 400px;
    margin: 0 auto;
}

.full-width {
    width: 100% !important;
}

.btn-primary {
    background-color: #1ab394;
    border-color: #1ab394;
    color: #FFFFFF;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open .dropdown-toggle.btn-primary {
    background-color: #18a689;
    border-color: #18a689;
    color: #FFFFFF;
}

.btn-white {
    color: inherit;
    background: #fff;
    border: 1px solid #e7eaec;
}

.m-b {
    margin-bottom: 15px;
}
.m-t{
    margin-top: 15px;
}

.dis-bl{
    display: block;
}

.float-r{
    float: right;
}

.bootstrap-wysihtml5-insert-link-modal .modal-body{
    padding: 30px;
}

.tab-pane{
    padding: 15px;
}

.registration-form .help-block{
    font-size: 11px;
    text-align: left;
}

.registration-form .form-group label {
    text-align: left;
    display: block;
}

.registration-form .errorlist{
    list-style: none;
    text-align: left;
    color: red;
    padding-left: 0;
    font-size: 12px;
}

iframe {
  resize: both;
}

.date-m-d{
    font-size: 20px;
    margin-top: 25px;
    margin-right: 35px;
}

.date-m-d span{
    display: block;
    text-align: center;
}

.date-m-d .dd{
    font-size: 4em;
    margin-top: -0.3em;
    margin-bottom: -0.3em;
    font-weight: 400;
}

.date-m-d .yy{
    font-size: 1.2em;
}

.detail{
    line-height: 27px;
}

.detail span{
    font-weight: bold;
}

.detail .fa{
    width: 20px;
    text-align: center;
    margin-right: 10px;
}

.map a{
    font-size: 13.5px;
    border-bottom: 1px dotted;
}

.map a:hover{
    text-decoration: none;
}

.map a.active{
    text-decoration: none;
}

.event-logo img{
    display: block;
    margin: 0 auto;
    margin-bottom: 20px;
}

.coming_events_block a{
    color:#000;
    text-decoration: underline;
}

.form-group.has-error {
    background-color: rgb(242, 222, 222);
    padding: 14px 0;
    border: 1px solid #ebccd1;
    border-radius: 5px;
}


.ui-menu .ui-menu-item{
    padding: 3px 10px;
    font-size: 14px;
}

.ui-menu .ui-state-focus, .ui-menu .ui-state-active {
    margin: 0;
}

.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus, .ui-button:hover, .ui-button:focus {
    border: none;
    background: #dcdcdc;
    font-weight: normal;
    color: #212121;
}


.clear_input {
    position: absolute;
    right: 25px;
    top: 30px;
    color: rgba(0, 0, 0, 0.31);
    font-size: 15px;
    font-weight: bold;
    cursor: pointer;
    display: none;
}

div.error_input {
    color: red;
    padding: 5px 0;
}

.ui-autocomplete{
    z-index: 999999!important;
}

.show_history_btn {
    color: #1ab394;
    cursor: pointer;
    font-weight: bold;
}

.rh_table {
    margin-top: 5px;
    width: 100%;
}

.rh_table__header {
    background-color: lightblue;
}

.rh_table__tournament_title {
    text-align: left;
    padding-left: 30px;
    width: 20%;
}

.rh_table__players_name {
    text-align: left;
    padding-left: 60px;
    width: 20%;
}

.rh_table__opponents_name {
    text-align: center;
    width: 20%;
}

.th_table_td_vs {
    text-align: center;
}

.th_table_td_opponents_name {
    text-align: left;
    padding-left: 60px;
}

.rh_table__results {
    text-align: center;
    width: 20%;
}

.rh_table__rating_changes {
    text-align: right;
    padding-right: 30px;
    width: 20%;
}

.rh_table__matches {
    background-color: lightcyan;   
}

.hr_table__matches--winbg {
    /*background-color: lightgreen;*/
}

.hr_table__matches--losebg {
    /*background-color: lightcoral;*/
}

.subheader{
    font-size: 12px;
    background-color: #51a982 !important;
    color: #fff;
}

.rating_correction{
    background: #55bc94;
    color: #fff;
    padding: 10px;
    margin: 10px 0;
}

.lds-ellipsis {
  display: inline-block;
  position: relative;
  width: 85px;
  height: 10px;
}
.lds-ellipsis div {
  position: absolute;
  top: 0px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #fff;
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}