.portal-items-filter-top { display: grid; grid-template-columns: max-content minmax(0, 1fr); align-items: end; gap: 16px; }
.portal-items-segment-field { min-width: 0; }
.portal-items-page .portal-items-segments { flex-wrap: wrap; gap: 8px; }
.portal-items-page .portal-items-segments .portal-dashboard-segment { flex: 0 0 auto; min-height: 36px; padding: 7px 12px; font-size: .78rem; }
.portal-items-search-fields { display: grid; grid-template-columns: minmax(160px, 200px) minmax(0, 1fr); gap: 12px; min-width: 0; }
.portal-items-search-field { min-width: 0; }
.portal-items-search-field label { display: block; margin-bottom: 6px; color: #15304d; font-size: .9rem; font-weight: 600; }
.portal-items-subtitle { margin: 8px 0 0; color: #60758a; font-size: .95rem; }
.portal-items-page .portal-console-card { margin-bottom: 20px; }
.portal-items-filter-row, .portal-items-result-header, .portal-items-pagination, .portal-items-page-controls { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.portal-items-filter-row { margin-top: 16px; }
.portal-items-result-header { margin-bottom: 18px; }
.portal-items-result-header h5 { margin: 0; color: #15304d; font-weight: 700; }
#consultaItensResumo, #consultaItensPagina { color: #60758a; font-size: .9rem; }
.portal-items-stock-switch { position: relative; display: inline-flex; align-items: center; gap: 12px; cursor: pointer; color: #15304d; font-weight: 600; margin: 0; }
.portal-items-stock-switch input { position: absolute; opacity: 0; z-index: 1; cursor: pointer; width: 44px; height: 26px; left: 0; top: 0; }
.portal-items-switch-track { position: relative; display: inline-block; flex: 0 0 44px; width: 44px; height: 26px; border-radius: 20px; background: #a5b3c0; transition: background .15s; }
.portal-items-switch-track::after { content: ''; position: absolute; left: 3px; top: 3px; width: 20px; height: 20px; border-radius: 50%; background: white; box-shadow: 0 1px 3px #0002; transition: transform .15s; }
.portal-items-stock-switch input:checked + .portal-items-switch-track { background: #154a73; }
.portal-items-stock-switch input:checked + .portal-items-switch-track::after { transform: translateX(18px); }
.portal-items-stock-switch input:focus-visible + .portal-items-switch-track { outline: 3px solid #509bc9; outline-offset: 3px; }
.portal-items-table-wrap { overflow-x: auto; border: 1px solid #e0e7ee; border-radius: 12px; }
.portal-items-table { width: 100%; min-width: 860px; margin: 0; color: #15304d; }
.portal-items-table th { background: #f3f6fa; border-top: 0; white-space: nowrap; padding: 14px 16px; }
.portal-items-table td { padding: 13px 16px; border-top: 1px solid #e6edf3; vertical-align: middle; }
.portal-items-table td:first-child { white-space: nowrap; }
.portal-items-table td:nth-child(2) { width: 44%; min-width: 260px; overflow-wrap: anywhere; }
.portal-items-table tbody tr:nth-child(even) { background: #f7fafc; }
.portal-items-table tbody tr:hover { background: #eef4f9; }
.portal-items-table .portal-items-number { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.portal-items-table .portal-items-empty { text-align: center; color: #60758a; padding: 44px 16px; }
.portal-items-pagination { margin-top: 20px; }
.portal-items-pagination label { display: flex; gap: 12px; align-items: center; margin: 0; font-size: .9rem; color: #60758a; }
.portal-items-pagination select { width: 82px; }
.portal-items-page-controls { justify-content: flex-end; gap: 12px; }
@media (max-width: 991px) {
    .portal-items-filter-top { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767px) {
    .portal-items-search-fields { grid-template-columns: minmax(0, 1fr); }
    .portal-items-pagination, .portal-items-result-header { align-items: flex-start; }
    .portal-items-page-controls { width: 100%; justify-content: space-between; gap: 6px; }
    .portal-items-page-controls .btn { padding: 8px 10px; }
}
.portal-items-table th[data-items-sort] { padding: 0; }
.portal-items-sort { display: inline-flex; align-items: center; gap: 8px; width: 100%; padding: 14px 16px; border: 0; background: transparent; color: inherit; font: inherit; text-align: inherit; cursor: pointer; }
.portal-items-table th.text-right .portal-items-sort { justify-content: flex-end; }
.portal-items-sort:hover { background: #e6edf5; }
.portal-items-sort:focus-visible { outline: 2px solid #154a73; outline-offset: -3px; }
.portal-items-sort:disabled { cursor: wait; }
.portal-items-sort-icon { color: #60758a; }
.portal-items-table th[aria-sort="ascending"] .portal-items-sort-icon, .portal-items-table th[aria-sort="descending"] .portal-items-sort-icon { color: #154a73; }
