.card,
.block {
    border: 0;
    border-radius: var(--radius-md);
    -webkit-box-shadow: var(--shadow-sm);
    box-shadow: var(--shadow-sm);
    background: var(--bg-base);
}

.card-header {
    background-color: transparent;
    border-width: 0;
    padding: 1.25rem 1.25rem 0;
    margin: 0 0 -0.5rem;
    position: relative;
    font-size: 1.625rem;
    margin: 0 0.5rem 0 0;
    top: -0.02em;

    .h4,
    h4 {
        margin: 0 0.5rem 0 0.5rem;
    }

    .card-tab {
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none;

        &::-webkit-scrollbar {
            display: none;
        }
    }
}

.card-body {
    margin: 1.25rem;
    padding: 0 !important;
}

.card-xl {
    .card-header {
        padding: 1.75rem 1.75rem 0;
        margin: 0 0 -0.5rem;
    }

    .card-body {
        margin: 1.75rem;
    }
}

.index-sudoku {
    height: 14.5rem;
}

@media (max-width: 767.98px) {
    .card-header {
        padding: 1rem 1rem 0;
        margin: 0 0 -0.125rem;
    }

    .card-body {
        margin: 1rem;
    }

    .card-xl {
        .card-header {
            padding: 1.125rem 1.125rem 0;
            margin: 0 0 -0.375rem;
        }

        .card-body {
            margin: 1.125rem;
        }
    }
}

@media (max-width: 767.98px) {
    .card-header {

        .h4,
        h4 {
            font-size: 1.125rem !important;
            margin: 0 0.375rem 0 0 !important;
        }
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .card-header {
        padding: 1.25rem 1.25rem 0;
        margin: 0 0 -0.4375rem;
    }

    .card-body {
        margin: 1.25rem;
    }

    .card-xl {
        .card-header {
            padding: 1.25rem 1.25rem 0;
            margin: 0 0 -0.25rem;
        }

        .card-body {
            margin: 1.25rem;
        }
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .card-header {
        padding: 1.375rem 1.375rem 0;
        margin: 0 0 -0.4375rem;
    }

    .card-body {
        margin: 1.375rem;
    }

    .card-xl {
        .card-header {
            padding: 1.125rem 1.125rem 0;
            margin: 0 0 -0.25rem;
        }

        .card-body {
            margin: 1.125rem;
        }
    }
}

@media (min-width: 1400px) {
    .post .card {
        padding: 2em 3em;
    }
}