.sdvob-card-image {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}

.sdvob-filter-link {
    display: block;
    padding: 0.15rem 0;
    color: inherit;
    text-decoration: none;
}

.sdvob-filter-link:hover {
    color: #0d6efd;
}

.sdvob-filter-link.active {
    font-weight: 700;
    color: #0d6efd !important;
}

.sdvob-filter-link span {
    color: #6c757d;
}

.sdvob-detail-content {
    line-height: 1.7;
}

.sdvob-detail-content img {
    max-width: 100%;
    height: auto;
}

#sdvob-sidebar .btn-search {
    letter-spacing: 0.5px;
}

.sdvob-loading #sdvob-grid {
    opacity: 0.55;
    pointer-events: none;
    transition: opacity 0.2s ease;
}

.result-count strong {
    color: #0B2A57;
}

.dropdown-item.sdvob-sort-link.active {
    background: #f0f6ff;
    color: #0d6efd;
}

/* CKEditor table templates */
.sdvob-detail-content table {
    max-width: 100%;
}

table.ck-table-default {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
}

table.ck-table-default th,
table.ck-table-default td {
    border: 1px solid #dee2e6;
    padding: 8px 12px;
    vertical-align: top;
}

table.ck-table-default th {
    background: #f1f3f5;
    font-weight: 600;
}

table.ck-table-striped {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
}

table.ck-table-striped th {
    background: #343a40;
    color: #fff;
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
}

table.ck-table-striped td {
    padding: 8px 12px;
    border-bottom: 1px solid #dee2e6;
    vertical-align: top;
}

table.ck-table-striped tbody tr:nth-child(even) {
    background: #f8f9fa;
}

table.ck-table-bordered {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
    border: 2px solid #495057;
}

table.ck-table-bordered th,
table.ck-table-bordered td {
    border: 1px solid #adb5bd;
    padding: 8px 12px;
    vertical-align: top;
}

table.ck-table-bordered th {
    background: #e9ecef;
    font-weight: 600;
}

table.ck-table-minimal {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
}

table.ck-table-minimal th {
    border-bottom: 2px solid #212529;
    padding: 8px 12px;
    text-align: left;
    font-weight: 600;
    vertical-align: top;
}

table.ck-table-minimal td {
    border-bottom: 1px solid #dee2e6;
    padding: 8px 12px;
    vertical-align: top;
}

table.ck-table-primary {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
    border: 1px solid #0d6efd;
}

table.ck-table-primary thead th {
    background: #0d6efd;
    color: #fff;
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
}

table.ck-table-primary td {
    padding: 8px 12px;
    border: 1px solid #cfe2ff;
    vertical-align: top;
}

table.ck-table-primary tbody tr:nth-child(even) {
    background: #f0f6ff;
}
