/* MyDataTheme - software catalog (Phần mềm bản quyền) and category listing. */

.md-catalog { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 32px; align-items: start; }
@media (max-width: 900px) { .md-catalog { grid-template-columns: minmax(0, 1fr); gap: 24px; } }

.md-catalog__filters {
    background: var(--md-surface);
    border: 1px solid var(--md-border);
    border-radius: var(--md-radius-lg);
    padding: 20px;
}
.md-catalog__filter-group + .md-catalog__filter-group { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--md-border); }
.md-catalog__filter-title {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--md-muted);
    margin-bottom: 12px;
}
.md-catalog__filter-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; font-size: 14.5px; }
.md-catalog__filter-list a {
    display: block;
    padding: 6px 8px;
    margin-inline: -8px;
    border-radius: var(--md-radius-sm);
    color: var(--md-ink-soft);
    font-weight: 500;
}
.md-catalog__filter-list a:hover { background: var(--md-primary-soft); color: var(--md-primary-dark); text-decoration: none; }
.md-catalog__filter-list a[aria-current="true"] { background: var(--md-primary-soft); color: var(--md-primary-dark); font-weight: 700; }

.md-catalog__toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--md-border);
}
.md-catalog__count { margin: 0; font-size: 14px; color: var(--md-muted); }

/* Reset for the whole filter set. Sits beside the result count so the current selection and the way to
   clear it are in the same place (Batch 1 review R1). */
.md-catalog__clear { font-size: 14px; font-weight: 600; color: var(--md-primary-dark); }
.md-catalog__clear:hover { text-decoration: underline; }
.md-catalog__result { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
