/* Admin list standard ("tabela limpa"), approved on the product list in 2026-10.
   Markup contract (see Views/Product/Index.cshtml):
   .admin-list
     section.admin-filters > form.admin-searchbar (search + Pesquisar + "+ Filtros")
                            > .collapse > .admin-advanced > .admin-advanced-grid + .admin-advanced-actions
     section.admin-results > .admin-results-head > .admin-results-summary
                            > Kendo grid (no toolbar, no Excel)
   Cells: .admin-cell (thumb + title link + meta line + .admin-tag), .admin-text, .admin-num, rowMenu() in grid.functions.js. */

.admin-list { display: grid; gap: 16px; min-width: 0; }
.admin-list .admin-filters,
.admin-list .admin-results {
    background: var(--mkp-surface);
    border: 1px solid var(--mkp-border);
    border-radius: var(--mkp-radius-lg);
    box-shadow: var(--mkp-shadow);
}

/* ---- Search bar ---------------------------------------------------------------------- */
.admin-searchbar { display: flex; flex-wrap: wrap; gap: 8px; padding: 12px; }
.admin-searchbar .admin-search-field { flex: 1 1 18rem; min-width: 0; }
.admin-searchbar .admin-search-field .input-group-text { background: var(--mkp-surface); color: var(--mkp-muted-foreground); border-right: 0; }
.admin-searchbar .admin-search-field .form-control { border-left: 0; padding-left: 0; }
.admin-filters-toggle { display: inline-flex; align-items: center; gap: 6px; }
.admin-filters-toggle .fa-plus { transition: transform .15s; }
.admin-filters-toggle[aria-expanded="true"] .fa-plus { transform: rotate(45deg); }
.admin-filter-count { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 10px; background: var(--mkp-primary); color: var(--mkp-on-primary); font-size: 11px; font-weight: 600; line-height: 1; }
.admin-filter-count[hidden] { display: none; }

/* ---- Advanced filters ---------------------------------------------------------------- */
.admin-advanced { padding: 16px 12px 12px; border-top: 1px solid var(--mkp-border); }
.admin-advanced-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 13.5rem), 1fr)); gap: 16px; align-items: start; }
.admin-advanced-grid > * { min-width: 0; }
.admin-advanced-grid > .mb-3 { margin-bottom: 0 !important; }
.admin-filter-checks { margin: 0; padding: 0; border: 0; }
.admin-filter-checks legend { float: none; width: auto; margin-bottom: 6px; padding: 0; font-size: inherit; }
.admin-filter-checks .form-check { margin-bottom: 6px; }
.admin-advanced-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 16px; padding-top: 12px; border-top: 1px dashed var(--mkp-border); }

/* bootstrap-multiselect inside filters: full-width trigger, padded options aligned to the first text line. */
.admin-filters .multiselect-native-select,
.admin-filters .multiselect-native-select > .btn-group { display: block; width: 100%; }
.admin-filters .multiselect-native-select .multiselect { width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-filters .multiselect-container { min-width: 100%; max-width: 22rem; padding: 4px; }
.admin-filters .multiselect-container .multiselect-option,
.admin-filters .multiselect-container .multiselect-all { padding: 6px 10px; border-radius: var(--mkp-radius-sm); white-space: normal; }
.admin-filters .multiselect-container .form-check { display: flex; align-items: flex-start; gap: 10px; min-height: 0; margin: 0; padding: 0; }
.admin-filters .multiselect-container .form-check-input { float: none; flex: none; margin: 2px 0 0; }
.admin-filters .multiselect-container .form-check-label { font-size: 13px; line-height: 18px; cursor: pointer; }
.admin-filters .multiselect-container .multiselect-group { padding: 8px 10px 4px; font-size: 11px; font-weight: 600; color: var(--mkp-muted-foreground); text-transform: uppercase; letter-spacing: .03em; }
.admin-filters .multiselect-container .multiselect-filter { position: sticky; top: -4px; z-index: 1; background: var(--mkp-surface); }

/* ---- Results panel + clean table ------------------------------------------------------ */
.admin-results { min-width: 0; padding: 0; overflow: hidden; }
.admin-results-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding: 12px 16px; border-bottom: 1px solid var(--mkp-border); }
.admin-results-summary { margin: 0; }
.admin-results .k-grid { border: 0; border-radius: 0; }
/* base.css gives width-less columns 12.5rem, which makes the browser scale every column; width-less columns share the rest. */
.admin-results .k-grid :is(.k-grid-header-table, .k-grid-table) > colgroup > col:not([style*="width"]):not(.k-hierarchy-col):not(.k-group-col) { width: auto; }
.admin-results .k-grid .k-grid-header,
.admin-results .k-grid .k-grid-header .k-table-th { background: var(--mkp-surface); }
.admin-results .k-grid .k-grid-header .k-table-th { padding: 0 16px; vertical-align: middle; color: var(--mkp-muted-foreground); font-size: 11px; font-weight: 600; letter-spacing: .03em; text-transform: uppercase; border-color: var(--mkp-border); }
.admin-results .k-grid .k-grid-header .k-table-th > .k-cell-inner { min-height: 0; margin: 0; padding: 0; }
.admin-results .k-grid .k-grid-header .k-table-th .k-link { padding: 10px 0; }
.admin-results .k-grid .k-table-td { padding: 8px 16px; vertical-align: middle; border-color: var(--mkp-border); }
.admin-results .k-grid .k-table-row:hover > .k-table-td { background: var(--mkp-muted); }
.admin-results .k-grid .k-table-th.admin-col-num { text-align: right; }
.admin-results .k-grid .dropdown-item { color: var(--bs-dropdown-link-color); }

/* ---- Cells --------------------------------------------------------------------------- */
.admin-cell { display: flex; align-items: center; gap: 12px; min-width: 0; }
.admin-thumb { flex: none; width: 36px; height: 36px; object-fit: contain; border: 1px solid var(--mkp-border); border-radius: var(--mkp-radius-sm); background: var(--mkp-surface); }
.admin-thumb.is-round { border-radius: 50%; object-fit: cover; }
.admin-cell-text { min-width: 0; }
.admin-results .k-grid .admin-cell-title,
.admin-cell-title { display: block; overflow: hidden; color: var(--mkp-foreground); font-weight: 500; line-height: 18px; white-space: nowrap; text-overflow: ellipsis; }
.admin-results .k-grid a.admin-cell-title:hover { color: var(--mkp-link); text-decoration: underline; }
.admin-cell-meta { display: flex; align-items: center; gap: 8px; min-width: 0; color: var(--mkp-muted-foreground); font-size: 12px; line-height: 18px; }
.admin-cell-meta > span:first-child { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.admin-tag { flex: none; padding: 0 6px; border: 1px solid var(--mkp-border); border-radius: var(--mkp-radius-sm); color: var(--mkp-foreground); font-size: 11px; font-weight: 500; line-height: 16px; white-space: nowrap; }
.admin-text { color: var(--mkp-foreground); font-size: 12px; }
.admin-text.is-muted { color: var(--mkp-muted-foreground); }
.admin-num { text-align: right; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--mkp-foreground); white-space: nowrap; }
.admin-num.is-low { color: #b45309; }
.admin-num.is-empty { color: #b91c1c; }
.admin-num.is-muted { color: var(--mkp-muted-foreground); font-weight: 400; }

/* Row actions: one ghost button, "⋯" menu or a single icon. */
.admin-row-actions { display: flex; justify-content: flex-end; }
.btn.admin-row-menu { width: 32px; height: 32px; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; border-radius: var(--mkp-radius-sm); background: transparent; color: var(--mkp-muted-foreground); }
.btn.admin-row-menu:hover,
.btn.admin-row-menu:focus-visible,
.btn.admin-row-menu[aria-expanded="true"] { background: var(--mkp-selection); color: var(--mkp-foreground); }
.admin-row-menu-list { min-width: 12rem; }
.admin-row-menu-list .dropdown-item { color: var(--bs-dropdown-link-color); }
.admin-row-menu-list .dropdown-item.text-danger { color: var(--mkp-danger) !important; }
.admin-row-menu-list .dropdown-divider { margin: 4px 0; border-top: 1px solid var(--mkp-border); opacity: 1; }

@media (prefers-reduced-motion: reduce) {
    .admin-filters-toggle .fa-plus { transition: none; }
}
@media (max-width: 575.98px) {
    .admin-searchbar > .btn { flex: 1; }
}

/* kendo.css colors every grid link with .k-grid a:not(.k-button):not(.k-link):not(.btn) (0,4,1).
   Match that specificity here (list.css loads later) so titles and menu items stay neutral. */
.k-grid a.admin-cell-title:not(.btn):not(.k-link) { color: var(--mkp-foreground); }
.k-grid a.admin-cell-title:not(.btn):not(.k-link):hover { color: var(--mkp-link); text-decoration: underline; }
.k-grid .admin-row-menu-list a.dropdown-item:not(.btn) { color: var(--bs-dropdown-link-color); }
.k-grid .admin-row-menu-list a.dropdown-item:not(.btn):hover { color: var(--bs-dropdown-link-hover-color); }
.k-grid a.admin-num:not(.btn):not(.k-link) { color: var(--mkp-foreground); }
.k-grid a.admin-num.is-low:not(.btn):not(.k-link) { color: #b45309; }
.k-grid a.admin-num.is-empty:not(.btn):not(.k-link) { color: #b91c1c; }
.k-grid a.admin-num.is-muted:not(.btn):not(.k-link) { color: var(--mkp-muted-foreground); }
.k-grid a.admin-num:not(.btn):not(.k-link):hover { text-decoration: underline; }
