 /* Layout wrappers */
 .devices-page-wrapper {
     padding: 24px;
     background-color: #f8f9fb;
     font-family: "Helvetica Neue", Arial, sans-serif;
     color: #1a1a1a;
 }

 /* Error banner */
 .error-banner {
     background: #ffe9e9;
     border: 1px solid #ffb3b3;
     color: #a10000;
     padding: 10px 14px;
     border-radius: 4px;
     margin-bottom: 16px;
     font-size: 13px;
 }

 /* Cards */
 .card {
     background: #fff;
     border: 1px solid #dfe3e8;
     border-radius: 4px;
     margin-bottom: 16px;
     box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
 }

 .devices-card {
     padding: 16px 16px 8px;
 }

 .table-card {
     padding: 16px;
 }

 .table>thead>tr>th {
     background: #fff;
 }

 /* Card header */
 .card-header-row {
     display: flex;
     justify-content: space-between;
     align-items: flex-start;
     margin-bottom: 8px;
 }

 .card-title {
     font-weight: 600;
     font-size: 14px;
     color: #1a1a1a;
 }

 /* Card rows */
 .card-row {
     width: 100%;
     display: flex;
     flex-wrap: wrap;
     row-gap: 12px;
     column-gap: 12px;
     margin-bottom: 8px;
 }

 .card-row-wrap .field-col {
     display: flex;
     flex-direction: column;
     position: relative;
 }

 /* column sizing that roughly matches screenshot grid */
 .field-col {
     min-width: 140px;
 }

 .search-col {
     flex: 1 1 240px;
     min-width: 240px;
 }

 .small-col {
     flex: 0 0 auto;
 }

 .fast-search-col {
     flex: 0 0 auto;
     display: flex;
     align-items: center;
     min-width: 160px;
 }

 .group-action-col {
     flex: 0 0 auto;
     display: flex;
     align-items: center;
 }

 .more-params-trigger {
     flex: 0 0 auto;
     min-width: 160px;
     display: flex;
     align-items: center;
 }

 /* search input with icon */
 .search-wrapper {
     position: relative;
 }

 .search-icon {
     position: absolute;
     left: 10px;
     top: 50%;
     transform: translateY(-50%);
     font-size: 12px;
     color: #9ca3af;
 }

 .search-input {
     padding-left: 28px;
     font-size: 13px;
     height: 32px;
 }

 /* select look like screenshot: light border, chevron on right */
 .select-wrapper {
     position: relative;
 }

 .ghost-select {
     -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     background-color: #fff;
     padding-right: 28px;
     height: 32px;
     font-size: 13px;
     border-radius: 4px;
     border: 1px solid #d1d5db;
     color: #1a1a1a;
 }

 .select-wrapper .chevron {
     position: absolute;
     right: 8px;
     top: 50%;
     transform: translateY(-50%);
     font-size: 10px;
     color: #6b7280;
     pointer-events: none;
 }

 /* more params */
 .btn-link-more {
     background: transparent;
     border: 0;
     color: #1a1a1a;
     font-size: 13px;
     font-weight: 500;
     padding: 0;
     cursor: pointer;
     display: flex;
     align-items: center;
     gap: 4px;
 }

 .btn-link-more .glyphicon-menu-down,
 .btn-link-more .glyphicon-menu-up {
     font-size: 10px;
 }

 /* fast search */
 .fast-search-label {
     font-size: 12px;
     color: #1a1a1a;
     font-weight: 400;
     display: flex;
     align-items: center;
     gap: 6px;
 }

 .fast-search-label input[type="checkbox"] {
     margin: 0;
 }

 /* ADD button (blue in screenshot) */
 .add-btn.btn-primary {
     background-color: #007bff;
     border-color: #007bff;
     color: #fff;
     font-size: 13px;
     height: 32px;
     line-height: 20px;
     padding: 6px 14px;
     border-radius: 4px;
 }

 /* SEARCH button */
 .btn-search {
     font-size: 13px;
     height: 32px;
     line-height: 20px;
     padding: 6px 12px;
 }

 /* GROUP ACTION button state rules */
 .group-action-btn {
     font-size: 13px;
     height: 32px;
     line-height: 20px;
     padding: 6px 12px;
     border-radius: 4px;
     border: 1px solid transparent;
     min-width: 120px;
     display: flex;
     align-items: center;
     gap: 6px;
 }

 .groupaction-btn {
     padding-left: 3rem;
 }

 .group-action-enabled {
     background-color: #007bff;
     border-color: #007bff;
     color: #fff;
 }

 .group-action-disabled {
     background-color: #e5e7eb;
     /* grey */
     border-color: #d1d5db;
     color: #6b7280;
 }

 .caret-fix {
     font-size: 10px;
 }

 /* Extra filter row */
 .extra-filter-row {
     border-top: 1px solid #e5e7eb;
     padding-top: 12px;
     margin-top: 8px;
 }

 .date-col .date-label {
     font-size: 11px;
     color: #4b5563;
     margin-bottom: 4px;
     font-weight: 500;
 }

 .date-picker-group {
     display: flex;
     align-items: center;
     gap: 4px;
 }

 .date-input-wrap .form-control {
     height: 32px;
     font-size: 13px;
 }

 .date-btn {
     height: 32px;
     padding: 6px 8px;
     font-size: 12px;
 }

 /* checkbox inline on filter row */
 .modern-check {
     font-size: 12px;
     display: flex;
     align-items: center;
     gap: 6px;
     margin-top: 22px;
     color: #1a1a1a;
 }

 .modern-check input {
     margin: 0;
 }

 /* little under-label for some selects */
 .mini-label {
     font-size: 10px;
     color: #6b7280;
     margin-top: 4px;
 }

 /* inline status bits after "custom time" */
 .inline-label {
     font-size: 12px;
     color: #1a1a1a;
     line-height: 32px;
 }

 /* TABLE CARD */
 .table-card-header {
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     align-items: center;
     border-bottom: 1px solid #e5e7eb;
     padding-bottom: 8px;
     margin-bottom: 12px;
 }

 .records-label {
     font-size: 12px;
     color: #4b5563;
 }

 .table-responsive {
     width: 100%;
 }

 .devices-table {
     width: 100%;
     border-collapse: collapse;
     font-size: 12px;
 }

 .devices-table thead th {
     white-space: nowrap;
     font-weight: 500;
     font-size: 12px;
     color: #4b5563;
     background-color: #f9fafb;
     border-bottom: 1px solid #e5e7eb;
     padding: 8px 10px;
     vertical-align: middle;
 }

 .devices-table tbody td {
     border-bottom: 1px solid #f1f2f5;
     padding: 10px;
     background-color: #fff;
     vertical-align: middle;
     color: #1a1a1a;
     font-size: 12px;
     margin-left: 10px;
 }

 .sortable {
     cursor: pointer;
     text-align: center;
     background-color: #ffffff;
 }

 .th-chip {
     text-align: center;
     background: #f8f9fa;
     padding: 5px 0;
     border-radius: 3px;
 }

 .col-check {
     width: 28px;
 }

 /* status pill "ON" like screenshot */
 .status-pill {
     display: inline-block;
     background-color: #00b341;
     color: #fff;
     font-size: 11px;
     font-weight: 500;
     line-height: 1;
     padding: 4px 8px;
     border-radius: 3px;
     text-transform: uppercase;
 }

 /* row action buttons */
 .row-action-btn {
     height: 28px;
     width: 28px;
     padding: 4px;
     line-height: 1;
     font-size: 12px;
     border-radius: 4px;
     margin-right: 4px;
 }

 .row-action-btn .glyphicon {
     font-size: 12px;
 }

 .caret-inline {
     margin-left: 2px;
     font-size: 10px;
 }

 /* empty states */
 .empty-state {
     text-align: center;
     color: #9ca3af;
     font-size: 13px;
     padding: 24px 0;
 }

 /* misc helpers */
 .nowrap {
     white-space: nowrap;
 }

 .sr-only {
     position: absolute;
     width: 1px;
     height: 1px;
     padding: 0;
     margin: -1px;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
 }


 /* -------------------- CARD WRAPPERS -------------------- */

 .devices-section-card {
     background-color: #ffffff;
     border: 1px solid #E1E4E8;
     /* light gray like screenshot */
     border-radius: 4px;
     padding: 12px 16px;
     margin-bottom: 12px;
     box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02);
     /* super subtle */
     font-family: "Helvetica Neue", Arial, sans-serif;
     color: #1a1a1a;
     font-size: 13px;
     line-height: 1.4;
 }

 /* HEADER CARD */
 .devices-header-card {
     padding: 20px;
     margin-top: -20px;
 }

 .devices-header-content {
     display: flex;
     justify-content: space-between;
     align-items: center;
 }

 .devices-header-text {
     font-size: 13px;
     color: #4a4f63;
     /* muted purple-grey like screenshot text */
     font-weight: 500;
     font-size: 24px;
 }

 .header-settings-btn {
     display: flex;
     align-items: center;
     justify-content: center;
     width: 36px;
     height: 36px;
     border-radius: 6px;
     background-color: #f3f4f6;
     border: 1px solid #e5e7eb;
     color: #4a4f63;
     text-decoration: none;
     transition: all 0.2s ease;
 }

 .header-settings-btn:hover {
     background-color: #e5e7eb;
     color: #1a1a1a;
     text-decoration: none;
 }

 .header-settings-btn .glyphicon {
     font-size: 16px;
 }

 /* FILTERS CARD LAYOUT */
 .devices-filters-card {
     display: flex;
     flex-direction: column;
     row-gap: 12px;
 }

 /* top row with dropdowns + More Parameters */
 .filters-top-row {
     display: flex;
     flex-wrap: wrap;
     align-items: flex-start;
     column-gap: 81px;
     row-gap: 8px;
 }

 /* bottom row with search, fast search, buttons */
 .filters-bottom-row {
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     column-gap: 19px;
     row-gap: 8px;
 }

 /* Makes "More Parameters" sit on far right */
 .filters-flex-spacer {
     flex: 1 1 auto;
     min-width: 0;
 }

 /* individual mini-blocks */
 .filters-field {
     display: flex;
     flex-direction: column;
     min-width: 150px;
 }

 /* -------------------- SELECTS -------------------- */

 .select-field {
     width: 200px;
     min-width: 180px;
     max-width: 240px;
 }

 .select-shell {
     position: relative;
 }

 .filters-select {
     appearance: none;
     -webkit-appearance: none;
     -moz-appearance: none;
     width: 130%;
     height: 32px;
     padding: 6px 28px 6px 8px;
     font-size: 13px;
     line-height: 20px;
     color: #1a1a1a;
     background-color: #fff;
     border: 1px solid #D5D8DC;
     border-radius: 3px;
 }

 .select-chevron {
     position: absolute;
     right: -40px;
     top: 50%;
     transform: translateY(-50%);
     font-size: 11px;
     color: #1a1a1a;
     pointer-events: none;
 }

 /* -------------------- MORE PARAMETERS BUTTON -------------------- */

 .more-params-btn {
     display: flex;
     align-items: center;
     gap: 4px;
     background: transparent;
     border: none;
     padding: 0;
     font-size: 12px;
     line-height: 16px;
     color: #1a1a1a;
     font-weight: 500;
     cursor: pointer;
 }

 .more-params-btn .glyphicon {
     font-size: 10px;
     color: #1a1a1a;
     margin-right: 49px;
 }

 .more-params-text {
     white-space: nowrap;
 }

 /* -------------------- SEARCH INPUT WITH ICON -------------------- */

 .search-field {
     position: relative;
     min-width: 220px;
     flex: 0 0 260px;
 }

 .filters-search-input {
     height: 32px;
     width: 100%;
     padding: 6px 8px 6px 28px;
     /* left padding to clear icon */
     font-size: 13px;
     line-height: 20px;
     color: #1a1a1a;
     background-color: #fff;
     border: 1px solid #D5D8DC;
     border-radius: 2px;
 }

 /* -------------------- SEARCH BUTTON -------------------- */

 .btn-light-outline.filters-search-btn {
     background-color: #ffffff;
     border: 1px solid #D5D8DC;
     border-radius: 2px;
     color: #1a1a1a;
     font-size: 12px;
     line-height: 20px;
     height: 32px;
     padding: 6px 12px;
     width: 90px;
     border-radius: 3px;
     margin-left: -6rem;
 }

 .btn-light-outline.filters-search-btn i {
     margin-right: -29px;
     font-size: 16px;
 }

 /* -------------------- FAST SEARCH CHECKBOX -------------------- */

 .filters-fastsearch-field {
     display: flex;
     flex-direction: row;
     align-items: center;
     gap: 6px;
     font-size: 12px;
     line-height: 16px;
     min-width: max-content;
 }

 .fastsearch-checkbox {
     /* make it look like system checkbox; keeping native for now */
     width: 14px;
     height: 14px;
     margin: 0;
     accent-color: #007bff;
     /* modern browsers => blue tick  */
 }

 .fastsearch-label {
     color: #1a1a1a;
     white-space: nowrap;
     font-size: 12px;
 }

 /* -------------------- GROUP ACTION BUTTON -------------------- */

 .group-action-btn {
     min-width: 100px;
     height: 32px;
     padding: 6px 10px;
     font-size: 12px;
     line-height: 20px;
     border-radius: 2px;
     border: 1px solid #D5D8DC;
     background-color: #ffffff;
     color: #1a1a1a;
     cursor: default;
     margin-left: 29px;
     border-radius: 3px;
 }

 /* grey disabled look = screenshot default */
 .group-action-disabled {
     background-color: #ffffff;
     border-color: #D5D8DC;
     color: #1a1a1a;
     opacity: 1;
 }

 /* active (at least one row checked) -> solid blue like your request */
 .group-action-enabled {
     background-color: #007bff;
     border-color: #007bff;
     color: #ffffff;
     cursor: pointer;
 }

 /* -------------------- ADD BUTTON (BLUE) -------------------- */

 .add-device-btn.btn-primary {
     min-width: 100px;
     background-color: #007bff;
     border: 1px solid #007bff;
     color: #ffffff;
     border-radius: 3px;
     font-size: 12px;
     line-height: 20px;
     height: 32px;
     padding: 6px 14px;
     margin-right: 36px;
 }


 /* float above ANY cards/tables */
 .dropdown-menu-devices {
     z-index: 99999 !important;
     min-width: 180px;
 }

 /* make sure the trigger wrapper doesn't clip anything */
 .groupaction-btn .btn-group,
 .row-action-btn+.dropdown-menu-devices {
     overflow: visible !important;
 }


 /* -------------------- RESPONSIVE TWEAKS -------------------- */

 @media (max-width: 768px) {

     .filters-top-row,
     .filters-bottom-row {
         flex-direction: column;
         align-items: flex-start;
     }

     .filters-flex-spacer {
         display: none;
     }

     .more-params-btn {
         margin-top: 4px;
     }

     .filters-bottom-row {
         column-gap: 8px;
         row-gap: 8px;
     }
 }


 /* ========== FILTER BAR THEME (scoped) ========== */
 .extra-filter-row {
     --bg: #fafbfc;
     --card: #ffffff;
     --text: #1f2937;
     --muted: #6b7280;
     --line: #e5e7eb;
     --accent: #2563eb;
     /* blue tick */
     --focus: #dbeafe;
     --shadow: 0 1px 2px rgba(0, 0, 0, .06), 0 6px 18px rgba(17, 24, 39, .06);

     display: flex;
     flex-wrap: wrap;
     gap: 14px 16px;
     align-items: flex-start;
     background: var(--bg);
     padding: 14px 16px;
     border-radius: 12px;
 }

 /* a single control "tile" */
 .extra-filter-row .field-col {
     display: flex;
     flex-direction: column;
     gap: 6px;
     min-width: 180px;
     max-width: 260px;
     flex: 1 1 200px;
 }

 /* tiny inline label beneath selects (right caption) */
 .extra-filter-row .mini-label {
     font-size: 12px;
     line-height: 1.2;
     color: var(--muted);
     margin-top: 6px;
 }

 /* ---------- Inputs (pill, subtle shadow) ---------- */
 .extra-filter-row .form-control,
 .extra-filter-row .filters-select,
 .extra-filter-row input[type="number"],
 .extra-filter-row input[type="text"],
 .extra-filter-row select {
     border-radius: 5px !important;
     border: 1px solid var(--line) !important;
     background: #fff !important;
     box-shadow: var(--shadow);
     height: 40px;
     padding: 0 14px;
     color: var(--text);
     outline: none;
 }

 .extra-filter-row .form-control:focus,
 .extra-filter-row .filters-select:focus,
 .extra-filter-row select:focus {
     border-color: var(--accent) !important;
     box-shadow: 0 0 0 3px var(--focus), var(--shadow);
 }

 /* placeholders */
 .extra-filter-row ::placeholder {
     color: #9ca3af;
 }

 /* disabled look */
 .extra-filter-row .form-control[disabled],
 .extra-filter-row select[disabled] {
     opacity: .65;
     background: #f3f4f6 !important;
 }

 /* ---------- Date picker group ---------- */
 .date-fileds-box {
     width: 100%;
     display: flex;
     gap: 8px;
     align-items: center;
 }

 /* make the calendar button minimal (optional) */
 .extra-filter-row .date-btn {
     border: 1px solid var(--line);
     background: #fff;
     color: #111;
     width: 40px;
     height: 40px;
     border-radius: 10px;
     box-shadow: var(--shadow);
 }

 .extra-filter-row .date-btn .glyphicon {
     top: 2px;
 }

 /* ---------- Select shells with right chevron ---------- */
 .extra-filter-row .select-shell {
     position: relative;
     display: block;
 }

 .extra-filter-row .filters-select,
 .extra-filter-row select {
     appearance: none;
     -webkit-appearance: none;
     -moz-appearance: none;
     width: 100%;
     padding-right: 34px;
     background-image: none !important;
 }

 .extra-filter-row .select-chevron {
     position: absolute;
     right: 10px;
     top: 50%;
     transform: translateY(-50%);
     color: #6b7280;
     pointer-events: none;
 }

 /* ---------- Checkbox: modern blue tick ---------- */
 .extra-filter-row .modern-check {
     display: flex;
     align-items: center;
     gap: 10px;
     user-select: none;
     cursor: pointer;
     font-size: 14px;
     color: var(--text);
 }

 .extra-filter-row .modern-check input[type="checkbox"] {
     appearance: none;
     -webkit-appearance: none;
     width: 18px;
     height: 18px;
     border: 2px solid var(--line);
     border-radius: 6px;
     background: #fff;
     display: inline-grid;
     place-items: center;
     transition: all .18s ease;
     box-shadow: var(--shadow);
 }

 .extra-filter-row .modern-check input[type="checkbox"]:checked {
     border-color: var(--accent);
     background: var(--accent);
 }

 .extra-filter-row .modern-check input[type="checkbox"]:checked::after {
     content: "";
     width: 8px;
     height: 8px;
     border: 2px solid #fff;
     border-top: none;
     border-left: none;
     transform: rotate(45deg);
     margin-top: -2px;
 }

 /* ---------- Tighten the short selects row look ---------- */
 .extra-filter-row .short-select .filters-select,
 .extra-filter-row .short-select select {
     height: 40px;
 }

 /* ---------- Responsive tweaks ---------- */
 @media (max-width: 992px) {
     .extra-filter-row {
         gap: 12px;
     }

     .extra-filter-row .field-col {
         min-width: 160px;
     }
 }

 @media (max-width: 600px) {
     .extra-filter-row {
         padding: 12px;
         border-radius: 10px;
     }

     .extra-filter-row .field-col {
         flex: 1 1 100%;
         max-width: none;
     }
 }

 /* ==================== FILTER SIDEBAR ==================== */

 .sidebar-overlay {
     position: fixed;
     top: 0;
     left: 0;
     width: 100vw;
     height: 100vh;
     background-color: rgba(0, 0, 0, 0.4);
     z-index: 2000;
     opacity: 0;
     visibility: hidden;
     transition: opacity 0.3s ease;
 }

 .sidebar-overlay.visible {
     opacity: 1;
     visibility: visible;
 }

 .filter-sidebar {
     position: fixed;
     top: 0;
     right: -400px;
     /* Start off-screen */
     width: 400px;
     height: 100vh;
     background-color: #ffffff;
     z-index: 2001;
     box-shadow: -2px 0 8px rgba(0, 0, 0, 0.15);
     transition: right 0.3s cubic-bezier(0.4, 0, 0.2, 1);
     display: flex;
     flex-direction: column;
 }

 .filter-sidebar.open {
     right: 0;
 }

 .filter-sidebar-header {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 20px 24px;
     border-bottom: 1px solid #e5e7eb;
     background-color: #fff;
 }

 .filter-sidebar-title {
     font-size: 18px;
     font-weight: 600;
     color: #111827;
     margin: 0;
 }

 .filter-sidebar-close {
     background: transparent;
     border: none;
     color: #6b7280;
     cursor: pointer;
     padding: 8px;
     border-radius: 50%;
     transition: background-color 0.2s;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .filter-sidebar-close:hover {
     background-color: #f3f4f6;
     color: #111827;
 }

 .filter-sidebar-content {
     flex: 1;
     overflow-y: auto;
     padding: 24px;
     display: flex;
     flex-direction: column;
     gap: 20px;
 }

 /* Reuse existing field styles but adjust for vertical layout */
 .filter-sidebar-content .field-col {
     width: 100%;
     max-width: 100%;
     min-width: 0;
 }

 .filter-sidebar-content .date-fileds-box {
     flex-direction: column;
 }

 .filter-sidebar-content .select-field,
 .filter-sidebar-content .search-field {
     width: 100%;
     max-width: 100%;
 }

 .filter-sidebar-content .filters-select {
     width: 100%;
 }

 /* Footer with actions */
 .filter-sidebar-footer {
     padding: 16px 24px;
     border-top: 1px solid #e5e7eb;
     background-color: #f9fafb;
     display: flex;
     justify-content: flex-end;
     gap: 12px;
 }

 .btn-sidebar-apply {
     background-color: #2563eb;
     color: white;
     border: none;
     padding: 8px 16px;
     border-radius: 6px;
     font-weight: 500;
 }

 .btn-sidebar-apply:hover {
     background-color: #1d4ed8;
 }

 .btn-sidebar-reset {
     background-color: white;
     color: #374151;
     border: 1px solid #d1d5db;
     padding: 8px 16px;
     border-radius: 6px;
     font-weight: 500;
 }

 .btn-sidebar-reset:hover {
     background-color: #f3f4f6;
 }

 @media (max-width: 480px) {
     .filter-sidebar {
         width: 100%;
         right: -100%;
     }
 }

 /* ==================== MODERN FILTERS LAYOUT ==================== */

 .filters-modern-wrapper {
     display: flex;
     flex-direction: column;
     gap: 12px;
     width: 100%;
     padding: 4px 0;
 }

 /* Row 1: Primary Filters */
 .filters-row-top {
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     gap: 16px;
     width: 100%;
 }

 /* Row 2: Options & Actions */
 .filters-row-bottom {
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     gap: 16px;
     width: 100%;
 }

 .filter-cell {
     display: flex;
     align-items: center;
 }

 /* Search Group Styling */
 .search-cell {
     flex: 2 1 300px;
     /* Takes more space */
     min-width: 200px;
 }

 .modern-search-group {
     display: flex;
     width: 100%;
     align-items: stretch;
 }

 .modern-search-group .filters-search-input {
     border-top-right-radius: 0 !important;
     border-bottom-right-radius: 0 !important;
     border-right: none;
     width: 100%;
 }

 .modern-search-group .filters-search-btn {
     border-top-left-radius: 0 !important;
     border-bottom-left-radius: 0 !important;
     margin-left: 0 !important;
     width: 40px !important;
     display: flex;
     align-items: center;
     justify-content: center;
     background-color: #f9fafb;
 }

 .modern-search-group .filters-search-btn i {
     margin-right: 0 !important;
     font-size: 14px;
 }

 /* Selects */
 .select-cell {
     flex: 1 1 200px;
 }

 .select-cell .select-shell {
     width: 100%;
 }

 .select-cell .filters-select {
     width: 100%;
 }

 /* Options (Fast search + More params) - Horizontal Layout */
 .options-cell-horizontal {
     display: flex;
     align-items: center;
     gap: 24px;
 }

 .options-cell-horizontal .fast-search-label {
     margin: 0;
     font-size: 13px;
     color: #4b5563;
     cursor: pointer;
     display: flex;
     align-items: center;
     gap: 6px;
 }

 .options-cell-horizontal .more-params-btn {
     font-size: 13px;
     color: #2563eb;
     padding: 0;
     display: flex;
     align-items: center;
     gap: 4px;
 }

 .options-cell-horizontal .more-params-btn .glyphicon {
     margin-right: 0;
     font-size: 10px;
 }

 /* Spacer */
 .filters-spacer {
     flex-grow: 1;
     min-width: 20px;
 }

 /* Actions */
 .actions-cell {
     gap: 12px;
 }

 .actions-cell .group-action-btn {
     margin-left: 0 !important;
 }

 .actions-cell .add-device-btn {
     margin-right: 0 !important;
 }

 /* Responsive */
 @media (max-width: 768px) {

     .filters-row-top,
     .filters-row-bottom {
         flex-direction: column;
         align-items: stretch;
     }

     .filters-spacer {
         display: none;
     }

     .options-cell-horizontal {
         justify-content: space-between;
     }

     .actions-cell {
         justify-content: flex-end;
     }
 }