/** 
* basic style
**/
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-bottom: 1.5rem;
}

h1,
.heading1 {
    font-size: 1.75rem;
    line-height: 2rem;
}
h2,
.heading2 {
    font-size: 1.5rem;
    line-height: 1.75rem;
}
h3,
.heading3 {
    font-size: 1.25rem;
    line-height: 1.5rem;
}

@media (max-width: 1023px) {
    h1,
    .heading1 {
        font-size: 1.5rem;
        line-height: 1.75rem;
    }
    h2,
    .heading2 {
        font-size: 1.25rem;
        line-height: 1.5rem;
    }
    h3,
    .heading3 {
        font-size: 1rem;
        line-height: 1.25rem;
    }
}


/**
* layout style
**/
html {
    position: relative;
    min-height: 100%;
}
body {
    margin-bottom: 40px;
}
#sidebar-wrapper {
    min-height: calc(100vh - 40px);
    margin-left: -15rem;
    transition: margin .25s ease-out;
}

#sidebar-wrapper .sidebar-heading {
    padding: 0.875rem 1.25rem;
    font-size: 1.2rem;
}
#sidebar-wrapper .sidebar-subheading {
    padding: 0.875rem 1.25rem 0;
    font-size: 1rem;
}

#sidebar-wrapper .list-group {
    width: 15rem;
}

#page-content-wrapper {
    min-width: 100vw;
}

#wrapper.toggled #sidebar-wrapper {
    margin-left: 0;
}

@media (min-width: 768px) {
    #sidebar-wrapper {
        margin-left: 0;
    }

    #page-content-wrapper {
        min-width: 0;
        width: 100%;
    }

    #wrapper.toggled #sidebar-wrapper {
        margin-left: -15rem;
    }
}

#menu-toggle i::before {
    content: "\f100";
}
.toggled #menu-toggle i::before {
    content: "\f101";
}
@media (max-width: 767px) {
    #menu-toggle i::before {
        content: "\f101";
    }
    .toggled #menu-toggle i::before {
        content: "\f100";
    }
    #top-menu-toggle.collapsed i:before {
        content: '\f0c9';
    }
    #top-menu-toggle i:before {
        content:'\f00d';
    }
}

.breadcrumb {
    font-size: 80%;
    padding: 0 0 0.75rem;
    background: none;
    border-bottom: 1px dotted #ced4da;
    border-radius: 0;
}

.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 40px;
    font-size: 75%;
    line-height: 40px;
    background-color: #f8f9fa;
}

#toast-container {
    position: relative;
    z-index: 100;
}
#toast-wrapper {
    position: absolute;
    bottom: 0;
    right: 0;
}

.form-required::after {
    content: '*';
    display: inline-block;
    position: absolute;
    top: 0;
    right: 25px;
    line-height: 38px;
}
.form-control:disabled, .form-control[readonly] {
    background-color: #f4f5f7;
}
.input-group-prepend {
    /*width: 22%;*/
}
.input-group-prepend .input-group-text {
    width: 100%;
    font-weight: bold;
}

@media (max-width: 1023px) {
    .input-group-prepend {
        width: 33%;
    }

    .input-group-prepend .input-group-text {
        overflow-x: auto;
    }
}

.custom-file-label {
    overflow: hidden;
}

details {
    border: 1px dotted #ced4da;
}
details > * {
    margin: 5px;
}
details summary:focus {
    outline: none;
}

#wrapper {
    overflow: hidden;
}

.list-group-item .fas,
.sidebar-subheading .fas {
    width: 25px;
    text-align: center;
    padding-right: 5px;
}


.card-same-height .card {
    height: 100%;
}

@media (max-width: 767px) {
    table .card-view {
        padding-bottom: 5px;
    }
}
.bootstrap-table .fixed-table-container .table {
    text-align: center;
}
.bootstrap-table .fixed-table-container .table tbody tr .card-view .card-view-title {
    overflow-x: auto;
}
.bootstrap-table .fixed-table-container .table tbody tr .card-view .card-view-value {
    padding-left: 5px;
}


/**
* news style
**/
@media (min-width: 768px) {
    .news-container .fixed-table-container {
        margin-left: -12px;
        margin-right: -12px;
    }
    .news-container table.news tbody {
        display: flex;
        flex-wrap: wrap;
    }
    .news-container table.news tbody tr {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
    .news-container table.news tbody tr td {
        display: block;
        height: 100%;
    }
}

@media (max-width: 767px) {
    .news-container table.news tbody tr td {
        padding-left: 0;
        padding-right: 0;
    }
}
.news-container .news .card {
    height: 100%;
}
.news-container .pagination-detail {
    display: none;
}



/**
* wishlist style
**/
.add-to-wishlist,
.remove-from-wishlist {
    color: #007bff;
    cursor: pointer;
}
.add-to-wishlist:hover,
.remove-from-wishlist:hover {
    color: #0056b3;;
}
.mastered {
    color: #007bff;
}
.wishlist-text {
    padding-left: 5px;
}

/**
* card style
**/
table.carddeck th {
    width: 1%;
    padding-left: 0;
    white-space: nowrap;
}
table.carddeck td {
    padding-right: 0;
}
.carddeck-wrapper {
    font-size: 0;
    margin: auto;
    overflow-x: auto;
}
.carddeck-wrapper[data-is-puzzle="1"] {
    font-size: 0;
}
.carddeck-wrapper .card-wrapper {
    margin: 2px;
}
.carddeck-wrapper[data-is-puzzle="1"] .card-wrapper {
    margin: 0;
}
.card-wrapper {
    display: inline-block;
    background-position: center;
    background-origin: content-box;
    background-repeat: no-repeat;
    background-size: contain;
}
.card-wrapper:not([style]) {
    position: relative;
    background-color: grey;
}
.carddeck-wrapper .card-wrapper.mastercard {
    margin-top: 5px;
}


/**
* member and card sorting style
**/
.member-profile .card {
    height: 100%;
}
.cards-sorting-container .fixed-table-container,
.member-cards-container .fixed-table-container {
    margin-left: -12px;
    margin-right: -12px;
}
.cards-sorting-container .cards-sorting-wrapper,
.member-cards-container .profile-cards-wrapper {
    position: relative;
}
.member-cards-container .profile-cards-wrapper.show-counter::after {
    content: attr(data-count);
    display: inline-block;
    position: absolute;
    top: -3px;
    right: -3px;
    padding: 4px 5px;
    font-size: 60%;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    background-color: rgba(248, 249, 250, 0.8);
    border: 1px solid #4e555b;
    border-radius: 50%;
}
.cards-sorting-container .cards-sorting-wrapper.mastered::after {
    content: '\f559';
    display: inline-block;
    position: absolute;
    top: -3px;
    right: -3px;
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    padding: 4px 5px;
    font-size: 60%;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    background-color: rgba(248, 249, 250, 0.8);
    border: 1px solid #4e555b;
    border-radius: 50%;
}
.cards-sorting-container .cards-sorting-table .carddeck-wrapper,
.member-cards-container .profile-cards .carddeck-wrapper {
    margin-top: 5px;
}
.cards-sorting-container table.cards-sorting-table,
.member-cards-container table.profile-cards {
    margin: auto;
}
.cards-sorting-container table.cards-sorting-table thead,
.member-cards-container table.profile-cards thead {
    display: none !important;
}
.cards-sorting-container table.cards-sorting-table tbody tr,
.member-cards-container table.profile-cards tbody tr {
    vertical-align: top;
}
.cards-sorting-container table.cards-sorting-table tbody tr td,
.member-cards-container table.profile-cards tbody tr td {
    line-height: 1;
    text-align: center;
}
@media (min-width: 768px) {
    .cards-sorting-container table.cards-sorting-table tbody,
    .member-cards-container table.profile-cards tbody {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    .cards-sorting-container table.cards-sorting-table tbody tr td,
    .member-cards-container table.profile-cards tbody tr td {
        display: block;
        height: 100%;
    }
}

@media (min-width: 768px) {
    .cards-sorting-container table.cards-sorting-table tbody tr td,
    .member-cards-container table.profile-cards tbody tr td {
        padding: 12px;
    }
}
@media (max-width: 767px) {
    .cards-sorting-container table.cards-sorting-table tbody tr,
    .member-cards-container table.profile-cards tbody tr {
        display: inline-block;
    }
    .cards-sorting-container table.cards-sorting-table tbody tr td,
    .member-cards-container table.profile-cards tbody tr td {
        padding: 6px;
    }
}
.cards-sorting-container .pagination-detail,
.member-cards-container .pagination-detail,
.member-wishlist-container .pagination-detail,
.member-log-container .pagination-detail {
    display: none;
}
.administration .card .media a,
.cards-sorting .card .media a,
.memberarea .card .media a {
    display: block;
}
.cards-sorting .card .media .fas,
.memberarea .card .media .fas {
    width: 20px;
    text-align: center;
}
.cards-sorting .card .media .fa-2x,
.memberarea .card .media .fa-2x {
    width: 40px;
    text-align: center;
}

/**
* games style
**/
table.memorygame {
    margin: auto;
}
@media (min-width: 576px) {
    table.memorygame {
        display: inline-block;
        width: auto;
    }
}
.memory_found {
    opacity: 0.25;
}
.memory_not_found {
    opacity: 1;
}


/**
* online style
**/
span.online {
    color: #089408;
}
span.offline {
    color: #ff0000;
}
span.inaktiv {
    color: #a0a0a0;
    font-style: italic;
}
span.admin, a.admin {
    color: #AA0000;
    font-weight: bold;
}
span.admin:hover, a.admin:hover {
    color: #860202;
    font-weight: bold;
    cursor: pointer;
}
span.coadmin, a.coadmin {
    color: #993333;
    font-weight: bold;
}
span.coadmin:hover, a.coadmin:hover {
    color: #822C2C;
    font-weight: bold;
    cursor: pointer;
}
span.cm, a.cm {
    color: #996633;
    font-weight: bold;
}
span.cm:hover, a.cm:hover {
    color: #865A2E;
    font-weight: bold;
    cursor: pointer;
}
span.mod, a.mo {
    color: #336633;
    font-weight: bold;
}
span.mod:hover, a.mod:hover {
    color: #2B562B;
    font-weight: bold;
    cursor: pointer;
}