﻿body {
    color: #212121;
}

h1 small {
    color: #fff;
    font-weight: 300;
}

.panel-body .spinner-dots {
    margin: 50px auto 50px !important;
}

.modal-content {
}

    .modal-content .modal-header h3 {
        margin: 0;
    }

    .modal-content .modal-body p {
        margin: 0;
    }

    .modal-content .modal-footer .btn {
        margin: 0;
    }

        .modal-content .modal-footer .btn + .btn {
            margin-left: 5px;
        }

.board-b72b1 {
    border: 2px solid #ddd;
}

.black-3c85d {
    background-color: rgb(221, 221, 221);
    color: #fff;
}

.white-1e1d7 {
    background-color: rgb(255, 255, 255);
    color: #ddd;
}

.progress {
    margin-bottom: 0;
    border-radius: 0;
    box-shadow: none;
}

.progress-bar-success {
    background-image: none;
    background-color: #03cc85;
}

.form-control {
    box-shadow: none;
}

select.form-control {
    height: 36px;
}

.pagination-select {
    margin: 0 3px;
}

.btn-ready {
    margin-top: 15px;
}

    .btn-ready b {
        padding-right: 25px;
    }

.btn {
    text-transform: uppercase;
    border: 0;
    border-radius: 2px;
    -moz-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}

.btn-info {
    color: #fff;
    background-color: #03a9f4;
    border-color: #46b8da;
}

    .btn-info:hover {
        background-color: #039be5;
        border-color: #269abc;
    }

.btn.btn.btn-link.btn-leave {
    padding: 0;
    margin: 0;
    text-transform: none;
    text-decoration: none;
}

.ripple-effect {
    position: relative;
    overflow: hidden;
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.form-control {
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

.login-content .form-group.button-group {
    padding: 15px 10px;
}

.card {
    /*-webkit-animation: cardEnter 0.75s ease-in-out 0.5s;
    animation: cardEnter 0.75s ease-in-out 0.5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    opacity: 0;*/
}

#current-problem {
    margin-bottom: 20px;
}

@media only screen and (max-width: 800px) {

    /* Force table to not be like tables anymore */
    #no-more-tables table,
    #no-more-tables thead,
    #no-more-tables tbody,
    #no-more-tables th,
    #no-more-tables td,
    #no-more-tables tr {
        display: block;
    }

        /* Hide table headers (but not display: none;, for accessibility) */
        #no-more-tables thead tr {
            position: absolute;
            top: -9999px;
            left: -9999px;
        }

    #no-more-tables tr {
        border: 1px solid #ccc;
    }

    #no-more-tables td {
        /* Behave  like a "row" */
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 50%;
        white-space: normal;
        text-align: left;
    }

        #no-more-tables td:before {
            /* Now like a table header */
            position: absolute;
            /* Top/left values mimic padding */
            top: 8px;
            left: 6px;
            width: 45%;
            white-space: nowrap;
            text-align: left;
            font-weight: bold;
        }

        /*
	Label the data
	*/
        #no-more-tables td:before {
            content: attr(data-title);
        }
}

@-webkit-keyframes cardEnter {
    0%, 20%, 40%, 60%, 80%, 100% {
        -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }

    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        -ms-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }

    40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        -ms-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        -ms-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03);
    }

    80% {
        -webkit-transform: scale3d(0.97, 0.97, 0.97);
        -ms-transform: scale3d(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
    }

    100% {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@keyframes cardEnter {
    0%, 20%, 40%, 60%, 80%, 100% {
        -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }

    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        -ms-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }

    40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        -ms-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        -ms-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03);
    }

    80% {
        -webkit-transform: scale3d(0.97, 0.97, 0.97);
        -ms-transform: scale3d(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
    }

    100% {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

.stats {
    margin-top: 30px;
}

    .stats .stat {
        color: #757575;
        /*padding: 15px;
    border-radius: 3px;
    color: rgba(0,0,0, 0.87);
    background: #fff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
    margin: 10px;*/
    }

        .stats .stat p {
            font-size: 18px;
        }

        .stats .stat i {
            font-size: 50px;
            padding-bottom: 10px;
        }

        .stats .stat h4 {
            font-size: 35.2px;
            line-height: 0.8;
            font-weight: 400;
        }

/*.stat-1 {
    background: #0091EA;
}

.stat-2 {
    background: #00B0FF;
}

.stat-3 {
    background: #40C4FF;
}

.stat-4 {
    background: #80D8FF;
}*/

.charts {
    margin: 20px 0;
}

    .charts a {
        text-transform: uppercase;
        padding: 5px 10px;
        font-weight: 300;
        font-family: Lato, sans-serif;
        font-size: 22.4px;
        color: #424242;
        border: 1px solid #424242;
    }

        .charts a:hover {
            color: #fff;
            text-decoration: none;
            border-color: #fff;
        }

        .charts a:focus {
            text-decoration: none;
            outline: none;
        }

.container-puzzle {
    height: 100%;
}

.background-puzzle {
    background-image: url(images/backgrounds/background.jpg);
    background-size: cover;
    background-position: center;
    min-height: 100%;
}

.puzzle-header {
    background: #00B0FF;
}

.panel-puzzle {
    background-color: rgba(255, 255, 255, 0.7);
}

.bt-menu-trigger {
    top: 1px;
    left: 20px;
    width: 30px;
    height: 50px;
}

    .bt-menu-trigger span {
        height: 2px;
    }

.panel .panel-footer {
    padding: 20px 30px;
    border-top: 1px solid #eee;
}

.container-main {
    padding-top: 40px;
}

.panel .panel-body h1 {
    margin-bottom: 20px;
}

#user-menu {
    position: fixed;
    top: 5px;
    right: 30px;
    display: block;
    width: 40px;
    height: 40px;
    cursor: pointer;
    z-index: 1499;
}

    #user-menu .btn {
        font-size: 20px;
        font-weight: bold;
    }

.menu-item {
    padding: 15px 5px 5px 5px;
    background-color: transparent;
    color: #fff;
    box-shadow: none;
}

    .menu-item i {
        font-size: 40px;
        color: #fff;
    }

    .menu-item:hover {
        background-color: #0099CC;
        border-radius: 3px;
    }

    .menu-item.disable {
        color: #337ab7;
        cursor: default;
    }

        .menu-item.disable i {
            color: #337ab7;
        }

        .menu-item.disable:hover {
            background-color: transparent;
        }

.table-lesson {
    display: table;
    border-collapse: collapse;
    border: 0;
    width: 100%;
    position: relative;
}

    .table-lesson h3 {
        margin: 5px 0 5px 0;
    }

    .table-lesson p {
        margin: 0;
    }

    .table-lesson .items-header {
        display: table-row;
    }

        .table-lesson .items-header .item-header {
            display: table-cell;
            padding: 10px 20px;
        }

    .table-lesson .items {
        display: table-row-group;
        border-radius: 3px;
        color: rgba(0,0,0, 0.87);
        background: #fff;
        box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
        width: 100%;
        border: 0;
    }

        .table-lesson .items > .item:hover {
            cursor: default;
            background: none;
        }

        .table-lesson .items .item {
            display: table-row;
            position: relative;
            border-bottom: 1px solid #ddd;
        }

            .table-lesson .items .item > div {
                display: table-cell;
                padding: 20px 30px;
                vertical-align: middle;
            }

            .table-lesson .items .item:last-child {
                border-bottom: 0;
            }

.margin-bottom-10 {
    margin-bottom: 10px;
}

.margin-bottom-40 {
    margin-bottom: 40px;
}

.items-last {
    display: table;
    padding: 10px 0;
    color: #999;
}

    .items-last .item-last {
        display: table-row;
    }

        .items-last .item-last i {
            font-size: 12px;
        }

        .items-last .item-last .item-last-1,
        .items-last .item-last .item-last-2,
        .items-last .item-last .item-last-3,
        .items-last .item-last .item-last-4,
        .items-last .item-last .item-last-5 {
            display: table-cell;
            padding: 5px 20px 5px 20px;
        }

        .items-last .item-last .item-last-1 {
            padding-left: 5px;
        }

        .items-last .item-last .item-last-5 {
            padding-right: 0;
        }

        .items-last .item-last .item-last-2,
        .items-last .item-last .item-last-3,
        .items-last .item-last .item-last-4,
        .items-last .item-last .item-last-5 {
            border-left: 1px solid #e2e2e2;
        }

small {
    font-weight: 100 !important;
    color: #999 !important;
}

@media (max-width:767px) {

    .items-last,
    .items-last .item-last,
    .items-last .item-last .item-last-1,
    .items-last .item-last .item-last-2,
    .items-last .item-last .item-last-3,
    .items-last .item-last .item-last-5,
    .items-last .item-last .item-last-4 {
        display: block;
        border: 0;
        padding: 0;
    }

        .items-last .item-last .item-last-5 {
            border-bottom: 1px solid #e2e2e2;
            margin-bottom: 10px;
            padding-bottom: 10px;
        }

    .table-lesson .items .item {
        display: inline-block;
        width: 100%;
        padding: 5px;
    }

        .table-lesson .items .item > div {
            display: block;
            width: 33%;
            float: left;
            padding: 5px;
        }

            .table-lesson .items .item > div.item-info {
                padding: 5px;
                width: 100%;
                float: initial;
            }

            .table-lesson .items .item > div.item-start {
                width: auto;
                position: absolute;
                top: 50%;
                right: 0;
                transform: translate(0, -50%);
            }

    .container-main {
        padding-top: 20px;
    }

    .vex.vex-theme-flat-attack {
        padding-top: 0;
    }

    h1, .h1 {
        font-size: 26px;
    }

    h1, .h1, h2, .h2, h3, .h3 {
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .opening-header,
    .lesson-header,
    .page-header {
    }

        .opening-header h1 {
            margin: 19px 0;
            padding: 0;
            font-size: 20px;
            text-align: right;
        }

        .page-header h2 {
            margin: 10px 0;
            padding: 0;
            font-size: 36px;
        }

        .opening-header h1, .trening-header h1, .lesson-header h1 {
            margin: 15px 0;
            text-align: right;
        }

    #current-problem, .opening-header, .trening-header, .lesson-header {
        margin-bottom: 10px;
    }

        .opening-header .pull-left, .trening-header .pull-left, .lesson-header .pull-left {
            float: right !important;
        }

    .filters {
        margin-bottom: 10px;
        padding: 10px 0 !important;
    }

    .container-login {
        padding-top: 0;
    }

    .bt-menu .bt-menu-logout {
        left: 12px;
    }

    .bt-menu ul {
        top: 45px;
        width: 70px;
    }

        .bt-menu ul li {
            padding: 10px 0;
        }

            .bt-menu ul li a i {
                font-size: 38px;
            }

    .bt-menu.bt-menu-open {
        border-width: 60px 20px 20px 70px;
    }

    .bt-menu .bt-menu-logout i {
        font-size: 38px;
    }

    .loading-spinner {
        top: 15px;
        right: 12px;
        width: 30px;
        height: 30px;
        border-width: 3px;
    }

    .bt-menu-trigger {
        left: 10px;
    }

    #user-menu {
        right: 10px;
    }

    .panel-lesson {
        margin-left: 0;
    }

    .item-subject {
        margin-left: 0;
    }

    .btn-ready {
        padding: 6px 12px;
    }

    .panel-puzzle .panel-footer,
    .panel-puzzle .panel-body,
    .panel-lesson .panel-footer,
    .panel-lesson .panel-body {
        padding: 10px;
    }

        .panel-lesson .panel-footer .btn {
            padding: 3px 6px;
        }

    .hvr-icon-spin:before,
    .hvr-icon-pulse:before,
    .hvr-icon-forward:before,
    .hvr-icon-back:before {
        left: 0.5em;
    }

    .btn-lg.hvr-icon-back:before {
        left: 1em;
    }

    .games-header {
        margin: 10px 0 5px 0;
    }

    ul.games > li {
        height: 40px;
        width: 40px;
        line-height: 36px;
        margin: 3px;
    }

    .panel-training-heading {
        background-color: transparent;
    }

        .panel-training-heading .col-xs-6 {
            padding: 0;
        }

        .panel-training-heading h1 {
            margin: 5px 0;
            font-size: 24px;
        }

    .items > .item > td {
        vertical-align: baseline;
        padding: 8px;
    }

    .stats .stat {
        margin-bottom: 10px;
        padding-bottom: 5px;
    }

        .stats .stat h4 {
            font-size: 30px;
            margin: 0;
        }

        .menu-item i,
        .stats .stat i {
            font-size: 44px;
            float: left;
        }

        .stats .stat p {
            font-size: 14px;
            margin: 5px 0 0 0;
        }

    .main {
        padding-bottom: 30px;
    }

    .menu-item {
        padding: 10px;
        margin: 0;
    }

        .menu-item h4 {
            float: left;
            margin-left: 10px;
        }

    .panel .panel-body h1 {
        margin-bottom: 0;
    }

    .panel-lesson .panel-footer .form-inline .form-group {
        margin: 0 5px 0 0;
    }

    .container-books {
        padding-top: 30px;
    }

        .container-books .book-info {
            margin: 0;
        }

        .container-books .chapters {
            width: 100%;
        }

        .container-books .book-desc {
            margin-left: 230px;
            height: 275px;
            overflow: hidden;
            margin-bottom: 25px;
        }

            .container-books .book-desc div p {
                overflow: hidden;
                text-overflow: ellipsis;
            }

        .container-books h2 {
            font-size: 20px;
        }

        .container-books .book-info p {
            font-size: 14px;
        }

    .chapters .table span {
        font-size: 14px;
    }
}

.header-menu {
    display: none;
}

/*body {
    font-size: 14px;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: "Roboto", sans-serif;
    font-weight: 100;
}

.page-header {
    background-color: #00C851 !important;
    height: 56px;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 22;
    display: -webkit-flex;
    display: flex;
    padding: 0;
}

.page-header:before {
    box-shadow: 0 0 4px rgba(0,0,0,.14),0 4px 8px rgba(0,0,0,.28);
    content: "";
    height: 56px;
    left: -2%;
    position: fixed;
    width: 104%;
}

    .page-header h2 {
        font-size: 1.5em;
        margin: 0;
        padding: 0 0 20px 0;
        color: #fff;
    }*/

.login-content {
    border-radius: 2px;
    border: 0;
    box-shadow: 0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);
}

.section-title {
    background-color: transparent;
}

.container-login {
    /*background: linear-gradient( rgba(14, 198, 251, 0.8), 
        rgba(14, 198, 251, 0.95) ),url('http://www.szkolkaszachowa.pl/wp-content/gallery/moj-pierwszy-turniej-szachowy-cz-1-23-01-2016/img_4119-1200.jpg') no-repeat;
    background-size: cover;*/
}

    .container-login .container {
        background-color: transparent;
    }

.background-green {
    background-color: transparent;
    /*background: url('http://www.szkolkaszachowa.pl/wp-content/gallery/moj-pierwszy-turniej-szachowy-cz-1-23-01-2016/img_4119-1200.jpg') no-repeat center center fixed;
    background-size: cover;
    background: linear-gradient(135deg, #33b5e5 0,#0099CC 100%);*/
}

/*.login-form-section {
    position: relative;
    z-index: 1002;
}*/

body {
    font-family: 'Open Sans',sans-serif;
    font-weight: 400;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4 {
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-weight: 400;
}

/*.overlay {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    -moz-animation: huerotator 3s infinite alternate;
    -o-animation: huerotator 3s infinite alternate;
    -webkit-animation: huerotator 3s infinite alternate;
    animation: huerotator 3s infinite alternate;
    min-height: 100vh;
    opacity: 0.9;
    background: linear-gradient(135deg, #33b5e5 0,#0099CC 100%);
    z-index: 0;
}*/

.overlay {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    -moz-animation: huerotator 3s infinite alternate;
    -o-animation: huerotator 3s infinite alternate;
    -webkit-animation: huerotator 3s infinite alternate;
    animation: huerotator 3s infinite alternate;
    min-height: 100vh;
    opacity: 0.9;
    background: url('images/pattern.png'),linear-gradient(135deg, #33b5e5 0,#0099CC 100%);
}

.modal-overlay, .table-overlay {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    opacity: .6;
    background: #F9F9F9;
    height: 100%;
    z-index: 1000;
    transition: opacity .25s ease-in-out;
}

.page-header {
    overflow: hidden;
    background-color: #00C851;
    border: 0;
    border-radius: 0px 0px 3px 3px;
    box-shadow: 0 16px 38px -12px rgba(0, 0, 0, 0.56), 0 4px 25px 0px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2);
    padding: 0;
    position: relative;
    height: 50px;
    width: 100%;
    z-index: 1050;
}

    .page-header h2 {
        font-size: 20px;
        margin: 0;
        padding: 0;
        color: #fff;
        text-transform: uppercase;
        line-height: 50px;
    }

.background-puzzle {
    background: none;
}

.filters {
    background-color: transparent;
}

.bt-menu {
    border-color: transparent;
}

    .bt-menu.bt-menu-open {
        border-width: 0 0 0 70px;
    }

    .bt-menu .bt-menu-logout i,
    .bt-menu ul li a i {
        font-size: 30px;
        color: #fff;
    }

    .bt-menu ul li {
        padding: 10px 0;
    }

    .bt-menu ul {
        width: 70px;
        top: 60px;
    }

    .bt-menu .bt-menu-user {
        top: 10px;
        text-transform: uppercase;
    }

.page-header label {
    display: none;
}

.page-header .form-control {
    border-radius: 0;
    border: 0;
    background-color: #00e676;
    color: #fff;
    margin: 8px 0;
}

    .page-header .form-control::-webkit-input-placeholder {
        color: white;
    }

    .page-header .form-control:-moz-placeholder {
        color: white;
    }

    .page-header .form-control::-moz-placeholder {
        color: white;
    }

    .page-header .form-control:-ms-input-placeholder {
        color: white;
    }

.panel {
    /*display: inline-block;*/
    position: relative;
    width: 100%;
    border-radius: 3px;
    color: rgba(0,0,0, 0.87);
    background: #fff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}

.page-header .btn-link {
    color: #fff;
}

    .page-header .btn-link .fa {
        font-size: 18px !important;
        vertical-align: bottom !important;
    }

.board-b72b1 {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
    border: 0;
}

.panel-footer {
    background-color: transparent;
}

.pagination > li:last-child > a,
.pagination > li:last-child > span,
.pagination > li > a,
.pagination > li > span {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #fff;
    color: rgba(0,0,0, 0.87);
    padding: 0;
    text-align: center;
    line-height: 40px;
    border: 0;
    box-shadow: 0 1px 1.5px 0 rgba(0, 0, 0, 0.12), 0 1px 1px 0 rgba(0, 0, 0, 0.24);
    transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    margin: 0 3px;
}

    .pagination > li:last-child > a:hover,
    .pagination > li > a:hover {
        box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36);
    }

.pagination > li:last-child.disabled > a,
.pagination > li.disabled > a {
    background-color: #F9F9F9;
    box-shadow: none;
    transition: none;
    color: #888;
}

    .pagination > li:last-child.disabled > a:hover,
    .pagination > li.disabled > a:hover {
        background-color: #F9F9F9;
        box-shadow: none;
        transition: none;
        color: #888;
    }

.btn, .input-group-btn .btn {
    border: none;
    border-radius: 3px;
    text-transform: uppercase;
    letter-spacing: 0;
    will-change: box-shadow, transform;
    transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

    .btn.btn-fab,
    .input-group-btn .btn.btn-fab {
        border-radius: 50%;
        height: 56px;
        margin: auto;
        min-width: 56px;
        width: 56px;
        padding: 0;
        overflow: hidden;
        box-shadow: 0 1px 1.5px 0 rgba(0, 0, 0, 0.12), 0 1px 1px 0 rgba(0, 0, 0, 0.24);
        position: relative;
        line-height: normal;
        height: 40px;
        min-width: 40px;
        width: 40px;
    }

        .btn.btn-fab:hover {
            box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36);
        }

        .btn.btn-fab[disabled] {
            opacity: .35;
        }

            .btn.btn-fab[disabled]:hover {
                box-shadow: 0 1px 1.5px 0 rgba(0, 0, 0, 0.12), 0 1px 1px 0 rgba(0, 0, 0, 0.24);
            }

    .btn.btn-default.btn-fab[disabled]:hover {
        background-color: #f7f7f7;
    }

    .btn.btn-fab.btn-sm {
        height: 30px;
        min-width: 30px;
        width: 30px;
    }

    .btn.btn-default {
        background-color: #EEEEEE;
        color: rgba(0,0,0, 0.87);
    }

        .btn.btn-default:hover {
            color: #333;
            background-color: #e6e6e6;
        }

.progress-bar {
    float: left;
    width: 0;
    height: 100%;
    font-size: 12px;
    line-height: 20px;
    color: #fff;
    text-align: center;
    background-color: #337ab7;
    -webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,.15);
    box-shadow: inset 0 -1px 0 rgba(0,0,0,.15);
    -webkit-transition: width .6s ease;
    -o-transition: width .6s ease;
    transition: width .6s ease;
    box-shadow: none;
}

.progress {
    height: 4px;
}

    .progress .progress-bar.progress-bar-success {
        background-color: #00C851;
    }

.panel-heading {
    padding: 0;
}

    .panel-heading .progress {
        border-top-left-radius: 3px;
        border-top-right-radius: 3px;
    }

ul.games > li.success,
ul.problems > li.success {
    background-color: #00C851 !important;
    /*border-color: #00C851 !important;*/
}

ul.games > li.error,
ul.problems > li.error {
    background-color: #f70a0a !important;
    border-color: #f70a0a !important;
}

.board.success > div > .board-b72b1 {
    box-shadow: 0px 0px 50px 0px #00C851 !important;
}

.bg-blue {
    background-color: #33b5e5;
}

.bg-yellow {
    background-color: #ffbb33;
}

.page-header.bg-yellow .form-control {
    background-color: #f9a825;
}

.bg-red {
    background-color: #ff4444;
}

.page-header.bg-red .form-control {
    background-color: #c62828;
}

.bg-purple {
    background-color: #9c27b0;
}

.bg-brown {
    background-color: #795548;
}

.page-purple.bg-red .form-control {
    background-color: #6a1b9a;
}

.left-btns .btn {
    margin-right: 2px;
}

.right-btns .btn {
    margin-left: 2px;
}

.item-header {
    color: #616161;
    font-weight: normal;
}

label {
    margin-bottom: 2px;
}

.label {
    border-radius: 3px;
    padding: 5px 12px;
    text-transform: uppercase;
    font-size: 10px;
    display: inline;
    padding: .3em .6em;
    font-size: 75%;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25em;
}

    .label.label-danger {
        background-color: #f44336;
    }

    .label.label-success {
        background-color: #4caf50;
    }

.container-statistics {
    background-color: transparent;
}

.bg-orange {
    color: #fff;
    background-color: #fb8754;
}

.btn-orange {
    color: #fff;
    background-color: #fb8754;
}

    .btn-orange:active,
    .btn-orange:focus,
    .btn-orange:hover {
        color: #fff;
    }

.bg-pink {
    background-color: #e91e63;
}

.fa.success {
    color: #4caf50;
}

.login-content form {
    padding: 3em 2em 2em 2em;
}

.has-error .control-label {
    color: #f44336;
}

.has-error .form-control {
    border-color: #f44336;
}

.login-content .form-group {
    border: 0;
    padding: 5px 10px;
}

.login-form-section {
    padding-bottom: 30px;
}

.btn.btn-default.btn-password {
    color: #888;
}

label {
    font-weight: normal;
}

.main {
    position: relative;
    border: 0;
    border-radius: 0px 0px 3px 3px;
    box-shadow: 0 16px 38px -12px rgba(0, 0, 0, 0.56), 0 4px 25px 0px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2);
}

.container-menu {
    padding-bottom: 0;
}

@media (min-width: 1200px) {
    .container-menu .col-lg-1 {
        width: 14%;
    }
}

@media (min-width: 992px) {
    .col-md-2 {
        width: 14%;
    }
}

@media (min-width: 768px) {
    .col-sm-4 {
        width: 25%;
    }
}

.container-login .container {
    padding-top: 40px;
}

.spinner-main {
    width: 40px;
    height: 40px;
    border: 3px solid;
    border-color: #fff #fff #0099CC #0099CC;
}

.loading-spinner {
    width: 40px;
    height: 40px;
    border: 3px solid;
    top: auto;
    bottom: 40px;
    border-color: #fff #fff #0099CC #0099CC;
}

.bt-menu-trigger span,
.bt-menu-trigger span:before,
.bt-menu-trigger span:after {
    box-shadow: 0 1px 1.5px 0 rgba(0, 0, 0, 0.12), 0 1px 1px 0 rgba(0, 0, 0, 0.24);
}

.bt-menu-open .bt-menu-trigger span,
.bt-menu-open .bt-menu-trigger span:before,
.bt-menu-open .bt-menu-trigger span:after {
    box-shadow: none;
}

.award {
    border-radius: 3px;
    color: rgba(0,0,0, 0.87);
    background: #fff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
    margin-bottom: 20px;
}

    .award h4 {
        height: 40px;
        padding: 0 10px;
    }

    .award .label {
        position: absolute;
        top: 10px;
        right: 10px;
    }

.btn.btn-round {
    border-radius: 30px;
}

.btn {
    border: none;
    border-radius: 3px;
    position: relative;
    padding: 12px 30px;
    margin: 10px 1px;
    font-size: 14px;
    font-weight: 100;
    line-height: normal;
    text-transform: uppercase;
    will-change: box-shadow, transform;
    transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}

    .btn.btn-link {
        box-shadow: none;
    }

        .btn.btn-link:hover {
            box-shadow: none;
        }

    .btn.btn-lg {
        font-size: 16px;
        padding: 18px 36px;
    }

    .btn:hover {
        box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36);
    }

.btn-success {
    background-color: #00C851 !important;
    color: #ffffff;
}

.page-header .btn {
    height: 50px;
    margin: 0;
    padding: 0 5px;
    box-shadow: none;
}

.bg-gray {
    background-color: #eee !important;
}

.well {
    margin-bottom: 10px;
    line-height: 24px;
    font-size: 14px;
    border-radius: 3px;
    color: rgba(0,0,0, 0.87);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}

.vex.vex-theme-flat-attack .vex-close:before {
    height: 1em;
    width: 1em;
}

.vex.vex-theme-flat-attack.vex-theme-flat-attack-green .vex-close:before {
    background: #00C851;
    border-top-right-radius: 3px;
}

.vex.vex-theme-flat-attack.vex-theme-flat-attack-green .vex-close:hover {
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36);
}

.modal-content,
.vex.vex-theme-flat-attack .vex-content {
    box-shadow: 0 27px 24px 0 rgba(0, 0, 0, 0.2), 0 40px 77px 0 rgba(0, 0, 0, 0.22);
    border-radius: 3px;
    border: none;
}

.btn:focus {
    outline: none !important;
}

.text-success {
    color: #00C851;
}

.text-danger {
    color: #f44336;
}

.btn.btn-fab.btn-sm.btn-add {
    z-index: 9999;
    position: fixed;
    right: 24px;
    bottom: 24px;
    width: 42px;
    height: 42px;
    border-radius: 28px;
    box-shadow: 0 2px 10px rgba(0,0,0,.3),0 0 1px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.25),inset 0 -1px 0 rgba(0,0,0,.15);
    border: none;
}

.btn-sm {
    padding: 0;
}

.nav-tabs {
    border: none;
}

    .nav-tabs > li > a {
        color: #555;
        border: none;
        padding: 10px 15px;
    }

        .nav-tabs > li.active > a,
        .nav-tabs > li > a:hover {
            border: none;
            color: #4285f4 !important;
            background: transparent;
        }

            .nav-tabs > li.active > a, .nav-tabs > li.active > a:focus, .nav-tabs > li.active > a:hover {
                border: 0;
                background: none;
            }

        .nav-tabs > li > a::after {
            content: "";
            background: #4285f4;
            height: 2px;
            position: absolute;
            width: 100%;
            left: 0;
            bottom: -1px;
            transition: all 250ms ease 0s;
            transform: scale(0);
        }

    .nav-tabs > li.active > a::after, .nav-tabs > li:hover > a::after {
        transform: scale(1);
    }

.tab-pane {
    padding: 15px 0;
}

.panel.bg-green {
    background-color: rgb(0, 200, 81);
}

.panel.bg-yellow,
.panel.bg-blue,
.panel.bg-green,
.panel.bg-red {
    color: #fff;
    border: 0;
}

.fa-opacity {
    opacity: .6;
}

.margin-bottom-10 {
    margin-bottom: 10px !important;
}

.margin-bottom-20 {
    margin-bottom: 20px !important;
}

.margin-bottom-30 {
    margin-bottom: 30px;
}

.payments, .receivables, .activities, .groups {
    padding: 30px 30px 15px 30px;
}

    .groups .table > thead > tr > th,
    .activities .table > thead > tr > th,
    .payments .table > thead > tr > th,
    .receivables .table > thead > tr > th {
        font-size: 14px;
        border: 0;
        padding: 2px;
    }

    .groups .table > tbody > tr > td,
    .activities .table > tbody > tr > td,
    .payments .table > tbody > tr > td,
    .receivables .table > tbody > tr > td {
        background-color: #f7f7f7;
        border: 4px solid #fff;
        vertical-align: middle;
    }

.popover-content {
    padding: 0;
}

.popover {
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.table > thead > tr > th {
    border: 0;
}

.next-lesson .btn {
    margin-left: 10px;
}

.next-lesson small {
    color: #fff !important;
}

.next-lesson {
    color: #fff;
    border-radius: 5px;
    padding: 10px;
    margin-top: 30px;
    margin-bottom: 10px;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}

.btn-course {
    margin-top: 40px;
    margin-bottom: 10px;
    margin-right: 10px;
}

.next-lesson-xs {
    float: left;
    width: 100%;
}

.next-lesson-xs {
    display: table;
}

    .next-lesson-xs .next-lesson {
        margin-top: 0;
        background-color: #eee;
        color: #212121;
        display: table-row;
    }

        .next-lesson-xs .next-lesson > div {
            display: table-cell;
            padding: 10px !important;
            vertical-align: top;
        }


            .next-lesson-xs .next-lesson > div.col-right {
                text-align: right;
            }

        .next-lesson-xs .next-lesson small {
            color: #212121 !important;
        }

.hidden-overflow {
    overflow: hidden;
}

.main-header {
    overflow: hidden;
    background-color: #33b5e5;
    border: 0;
    border-radius: 0px 0px 3px 3px;
    box-shadow: 0 16px 38px -12px rgba(0, 0, 0, 0.56), 0 4px 25px 0px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2);
    padding: 0;
    position: relative;
    height: 50px;
    width: 100%;
    z-index: 1050;
    display: none;
}

    .main-header .container {
        padding-top: 0 !important;
    }

    .main-header h2 {
        font-size: 16px;
        margin: 0;
        padding: 0;
        color: #fff;
        text-transform: uppercase;
        line-height: 50px;
        margin-left: 25px;
    }

.table-lesson {
    margin-bottom: 40px;
}

#moves-scrollbar {
    margin-bottom: 10px;
}

@media (max-width: 768px) {
    .payments, .receivables, .activities, .groups {
        padding: 30px 10px 5px 10px;
    }

        .activities .table,
        .payments .table,
        .receivables .table,
        .groups .table {
            overflow-x: auto;
            display: block;
            white-space: nowrap;
        }

    .container-books .book-desc {
        height: 360px;
    }
}

@media only screen and (max-width : 480px) {

    .panel-lesson {
        margin-bottom: 30px;
    }

    .main-header {
        display: block;
    }

    .main {
        padding-bottom: 20px !important;
    }

    .menu-item i, .stats .stat i {
        font-size: 34px;
    }

    /* ANDROID */

    .container-books .book-img .book,
    .container-books .book-img {
        width: 150px;
        height: 200px;
    }

        .container-books .book-img .book.book-2, .container-books .book-img .book.book-4 {
            height: 200px;
        }

        .container-books .book-img p {
            width: 150px;
        }

    .container-books h2 {
        font-size: 18px;
        margin-top: 0;
    }

    .container-books .book-desc {
        height: 290px;
    }

    .container-books .book-desc {
        margin-left: 165px;
    }

    .badge {
        white-space: normal;
        padding: 1px 2px;
    }

    .next-lesson-xs {
        position: fixed;
        bottom: 0;
        left: 0;
    }

    .next-lesson .btn {
        margin-left: 0px;
    }

    .table-lesson .items .item > div {
        text-align: left;
        padding-top: 0;
    }

    .table-lesson {
        margin-bottom: 20px;
    }

    .container-main {
        padding-top: 20px;
    }

    .alert {
        margin: 10px 0;
        font-size: 12px;
        padding: 10px;
    }

    h3 {
        font-size: 16px;
    }

    .table-lesson h3 {
        margin-right: 35px;
        word-wrap: break-word;
        word-break: break-all;
        white-space: pre-wrap;
    }

    .table-lesson span {
        font-size: 12px;
    }

    .table-lesson p {
        font-size: 14px;
    }

    .table-lesson span.label {
        font-size: 8px;
    }

    .course-header h4 {
        font-size: 14px !important;
        margin-left: 25px;
    }

    .inline-flex img {
        width: 100px;
    }

    .main {
        display: none;
    }

    .container-login .container-menu {
        padding: 0 !important;
    }

    .container-login .container-menu {
        display: none;
    }

    .menu-item {
        position: relative;
        padding: 10px 20px !important;
        text-align: left;
    }

        /*.menu-item.menu-item-1 {
            background-color: #33b5e5;
        }

        .menu-item.menu-item-2 {
            background-color: #00C851;
        }

        .menu-item.menu-item-3 {
            background-color: #ffbb33;
        }

        .menu-item.menu-item-4 {
            background-color: #ff4444;
        }

        .menu-item.menu-item-5 {
            background-color: #33b5e5;
        }

        .menu-item.menu-item-6 {
            background-color: #9c27b0;
        }

        .menu-item.menu-item-7 {
            background-color: #e91e63;
        }*/

        .menu-item h4 {
            margin: 0;
            width: auto;
            float: left;
            line-height: 34px;
        }

        .menu-item i {
            width: 50px;
            float: left;
        }

        .menu-item .fa-fw {
            text-align: left;
        }

    #user-menu {
        display: none;
    }

    .page-header {
        z-index: 1051 !important;
    }

    .header-menu {
        display: block;
    }

    .description {
        padding: 0;
    }

    .bt-menu.bt-menu-open {
        border-width: 0 0 0 210px;
        border-color: #222;
    }

        .bt-menu.bt-menu-open ul li {
            float: left;
        }

    .bt-menu ul li, .bt-menu ul li a {
        width: 70px;
    }

    .bt-menu-trigger {
        width: 20px;
    }

    .bt-menu ul {
        width: 210px;
    }

        .bt-menu ul li {
            padding: 5px 0;
            opacity: 0;
            visibility: hidden;
            /*-webkit-transition: -webkit-transform 0.3s, opacity 0.2s, visibility 0s 0.3s;
            transition: transform 0.3s, opacity 0.2s, visibility 0s 0.3s;*/
        }

            .bt-menu ul li a span {
                margin: 5px 0 0 0;
                font-size: 12px;
                color: #fff;
            }

    .bt-menu.bt-menu-open ul li {
        visibility: visible;
        opacity: 1;
        -webkit-transition: -webkit-transform 0.3s, opacity 0.3s 0.1s;
        transition: transform 0.3s, opacity 0.3s;
        -webkit-transform: translate3d(0,0,0);
        transform: translate3d(0,0,0);
    }

    .bt-menu ul li {
        -webkit-transform: translate3d(-100%,0,0);
        transform: translate3d(-100%,0,0);
    }

        .bt-menu ul li.only-mobile {
            display: block !important;
        }

    .stats {
        margin-top: 10px;
    }

        .stats .stat h4 {
            font-size: 22px;
        }

        .stats .stat p {
            font-size: 12px;
        }

    .speech-bubble {
        font-size: 14px;
        margin-right: 30px;
        margin-bottom: 25px;
    }

    .container-login .container-main {
        padding-top: 20px;
    }

    .main-infos {
        display: none;
    }

    .page-header h2 {
        margin-left: 25px;
        font-size: 18px;
    }

    ul.problems > li {
        height: 30px;
        width: 30px;
    }

        ul.problems > li i {
            font-size: 14px;
        }

    .description-container {
        position: absolute !important;
        bottom: 0;
        margin: 0 auto;
        /*top: 0;
        background-color: rgba(255,255,255,.5);*/
    }

    #current-problem {
        position: relative;
    }

    .solutions {
        margin-top: 10px;
    }

    .mobile-header {
        overflow: hidden;
        background-color: #33b5e5;
        border: 0;
        border-radius: 0px 0px 3px 3px;
        box-shadow: 0 16px 38px -12px rgba(0, 0, 0, 0.56), 0 4px 25px 0px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2);
        padding: 0;
        position: relative;
        height: 50px;
        width: 100%;
        z-index: 1050;
    }

        .mobile-header h2 {
            margin: 0;
            padding: 0;
            color: #fff;
            text-transform: uppercase;
            line-height: 50px;
            margin-left: 25px !important;
            font-size: 18px;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

    #moves-scrollbar {
        height: 50px;
        margin-bottom: 0;
        margin-top: 10px;
    }
}

@media (min-width:481px) {

    .bt-menu ul li {
        padding: 10px 0;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: -webkit-transform 0.3s, opacity 0.2s, visibility 0s 0.3s;
        transition: transform 0.3s, opacity 0.2s, visibility 0s 0.3s;
    }

        .bt-menu ul li:first-child {
            -webkit-transform: translate3d(-100%,200%,0);
            transform: translate3d(-100%,200%,0);
        }

        .bt-menu ul li:nth-child(2) {
            -webkit-transform: translate3d(-100%,100%,0);
            transform: translate3d(-100%,100%,0);
        }

        .bt-menu ul li:nth-child(3) {
            -webkit-transform: translate3d(-100%,0,0);
            transform: translate3d(-100%,0,0);
        }

        .bt-menu ul li:nth-child(4) {
            -webkit-transform: translate3d(-100%,-100%,0);
            transform: translate3d(-100%,-100%,0);
        }

        .bt-menu ul li:nth-child(5) {
            -webkit-transform: translate3d(-100%,-200%,0);
            transform: translate3d(-100%,-200%,0);
        }

        .bt-menu ul li:nth-child(6) {
            -webkit-transform: translate3d(-100%,-200%,0);
            transform: translate3d(-100%,-200%,0);
        }

        .bt-menu ul li:nth-child(7) {
            -webkit-transform: translate3d(-100%,-200%,0);
            transform: translate3d(-100%,-200%,0);
        }

        .bt-menu ul li:nth-child(8) {
            -webkit-transform: translate3d(-100%,-200%,0);
            transform: translate3d(-100%,-200%,0);
        }

    .bt-menu.bt-menu-open ul li {
        visibility: visible;
        opacity: 1;
        -webkit-transition: -webkit-transform 0.3s, opacity 0.3s 0.1s;
        transition: transform 0.3s, opacity 0.3s;
        -webkit-transform: translate3d(0,0,0);
        transform: translate3d(0,0,0);
    }
}

@media (min-width:768px) and (max-width:992px) {
    .panel-lesson {
        margin-left: 0;
    }
}

@media (min-width:992px) {
}

@media (min-width:1200px) {
}


@media (max-width: 768px) {

    .course-header h4 {
        font-size: 16px;
    }

    .course-header h2 {
        font-size: 22px;
        line-height: 1;
        margin: 0;
        margin-right: 40px;
    }


    .btn-course {
        margin-top: 5px;
        margin-bottom: 0;
        margin-right: 5px;
        margin-left: -5px;
    }
}
