/**
 * Influencer Search Page Styles
 * Two-column layout: Left sidebar (filters) + Right main content (results)
 * Features: Horizontal influencer rows, multiple platforms per influencer, minimal bloat
 */

/* ==========================================================================
   Search Layout - Sidebar + Main
   ========================================================================== */

.inzc-search-layout {
    display: grid;
    grid-template-columns: var(--inzc-content-sidebar-width) 1fr;
    gap: var(--inzc-spacing-6);
    align-items: flex-start;
}

/* ── Select2 overrides — match design system ──────────────────────────────── */
.inzc-search-sidebar .select2-container--default.select2-container--focus .select2-selection--single,
.inzc-search-sidebar .select2-container--default .select2-selection--single,
.inzc-search-sidebar .select2-container--default.select2-container--focus .select2-selection--multiple,
.inzc-search-sidebar .select2-container--default .select2-selection--multiple,
.inzc-search-sidebar .select2-dropdown {
    border: var(--inzc-border-width-thin) solid var(--inzc-border-light);
    border-radius: var(--inzc-radius-lg);
    font-family: inherit;
    font-size: var(--inzc-font-size-sm);
    color: var(--inzc-text-primary);
    background-color: var(--inzc-bg-input);
}

.inzc-search-sidebar .select2-container--default .select2-selection--single {
    height: var(--inzc-input-height, 38px);
    line-height: calc(var(--inzc-input-height, 38px) - 2px);
    padding: 0 var(--inzc-spacing-3);
    background-color: var(--inzc-bg-primary);
}

.inzc-search-sidebar .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: calc(var(--inzc-input-height, 38px) - 2px);
    padding: 0 40px 0 0;
    /* reserve space for the × clear button */
    color: var(--inzc-text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.inzc-search-sidebar .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: var(--inzc-text-tertiary);
}

.inzc-search-sidebar .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: calc(var(--inzc-input-height, 38px) - 2px);
    right: var(--inzc-spacing-2);
}

.inzc-search-sidebar .select2-container--default.select2-container--open .select2-selection--single,
.inzc-search-sidebar .select2-container--default.select2-container--focus .select2-selection--single {
    border-color: var(--inzc-border-light);
    outline: none;
    box-shadow: 0 0 0 2px var(rgba 99, 102, 241, .15);
}

.inzc-search-sidebar .select2-dropdown {
    border-radius: var(--inzc-radius-lg);
    box-shadow: var(--inzc-shadow-md);
    z-index: 9999;
}

.inzc-search-sidebar .select2-results__option {
    padding: var(--inzc-spacing-2) var(--inzc-spacing-3);
    font-size: var(--inzc-font-size-sm);
    color: var(--inzc-text-primary);
}

.inzc-search-sidebar .select2-results__option--highlighted {
    background-color: var(--inzc-color-primary);
    color: #fff;
}

.select2-container--default .select2-results__option {
    font-size: var(--inzc-font-size-sm);
    border-bottom: dotted var(--inzc-border-medium) var(--inzc-border-width-medium);
}

.inzc-search-sidebar .select2-search--dropdown .select2-search__field {
    border: var(--inzc-border-width-thin) solid var(--inzc-border-light);
    border-radius: var(--inzc-border-radius-sm);
    padding: var(--inzc-spacing-2) var(--inzc-spacing-3);
    font-size: var(--inzc-font-size-sm);
    color: var(--inzc-text-primary);
    background-color: var(--inzc-bg-primary);
}

/* Full width within a sidebar filter group */
.inzc-filter-group .select2-container {
    width: 100% !important;
}

/* Left Sidebar - Fixed Width */
.inzc-search-sidebar {
    background-color: var(--inzc-bg-primary);
    border: var(--inzc-border-width-thin) solid var(--inzc-border-light);
    border-radius: var(--inzc-radius-lg);
    padding: var(--inzc-spacing-5);
    position: sticky;
    top: var(--inzc-spacing-6);
}

.inzc-search-sidebar-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--inzc-spacing-4);
}

.inzc-search-sidebar-title {
    font-size: var(--inzc-font-size-xl);
    font-weight: var(--inzc-font-weight-semibold);
    color: var(--inzc-text-primary);
    margin: 0;
}

.inzc-sidebar-close-btn {
    display: none;
    align-items: center;
    justify-content: center;
    width: var(--inzc-spacing-8);
    height: var(--inzc-spacing-8);
    padding: 0;
    background: transparent;
    border: none;
    border-radius: var(--inzc-radius-md);
    color: var(--inzc-text-secondary);
    cursor: pointer;
    transition: var(--inzc-transition-all);
}

.inzc-sidebar-close-btn:hover {
    background-color: var(--inzc-bg-secondary);
    color: var(--inzc-text-primary);
}

/* Mobile Filters Button */
.inzc-mobile-filters-btn {
    display: none;
    align-items: center;
    gap: var(--inzc-spacing-2);
    padding: var(--inzc-spacing-2) var(--inzc-spacing-3);
    background-color: var(--inzc-primary);
    color: var(--inzc-white);
    border: 0;
    border-radius: var(--inzc-radius-md);
    font-size: var(--inzc-font-size-base);
    font-weight: var(--inzc-font-weight-medium);
    cursor: pointer;
    transition: var(--inzc-transition-all);
    width: fit-content;
}

.inzc-mobile-filters-btn:hover {
    background-color: var(--inzc-warning);
    color: var(--inzc-white);
}

.inzc-mobile-filters-btn svg {
    flex-shrink: 0;
}

/* Filters Backdrop */
.inzc-filters-backdrop {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: calc(var(--inzc-z-modal) + 1);
    opacity: 0;
    transition: opacity var(--inzc-transition-normal);
}

.inzc-filters-backdrop.active {
    opacity: 1;
}

/* Main Content Area - Flexible */
.inzc-search-main {
    flex: 1;
    min-width: 0;
}

/* ==========================================================================
   Search Mode Selector — Compact Segmented Toggle
   ========================================================================== */

.inzc-search-mode {
    margin-bottom: var(--inzc-spacing-4);
    padding-bottom: var(--inzc-spacing-4);
    border-bottom: var(--inzc-border-width-thin) solid var(--inzc-border-light);
}

/* Search mode card container */
.inzc-search-mode-cards {
    display: flex;
    flex-direction: column;
    gap: var(--inzc-spacing-3);
}

/* Individual card - extends inzc-form-radio */
.inzc-search-mode-card {
    margin-bottom: 0;
    padding: var(--inzc-spacing-4);
    border: 2px solid var(--inzc-border-light);
    border-radius: var(--inzc-radius-lg);
    background-color: var(--inzc-bg-primary);
    transition: all var(--inzc-transition-normal) var(--inzc-ease-in-out);
    cursor: pointer;
    flex-wrap: wrap;
}

.inzc-search-mode-card:hover {
    border-color: var(--inzc-gray-300);
    background-color: var(--inzc-gray-100);
}

.inzc-form-radio input[type="radio"]:hover {
    border-color: var(--inzc-primary-light);
}

/* Selected state via :has() selector */
.inzc-search-mode-card:has(input[type="radio"]:checked) {
    border-color: var(--inzc-gray-300);
    background-color: var(--inzc-gray-100);
}

/* Keyboard focus state for search mode cards */
.inzc-search-mode-card:has(input[type="radio"]:focus-visible) {
    outline: 2px solid var(--inzc-primary);
    outline-offset: 2px;
}

/* Card label styling */
.inzc-search-mode-card-label {
    flex: 1;
    cursor: pointer;
}

.inzc-search-mode-card-title {
    font-size: var(--inzc-font-size-base);
    font-weight: var(--inzc-font-weight-semibold);
    color: var(--inzc-text-primary);
    margin-bottom: var(--inzc-spacing-1);
    line-height: var(--inzc-line-height-tight);
}

.inzc-search-mode-card-description {
    font-size: var(--inzc-font-size-sm);
    color: var(--inzc-text-secondary);
    line-height: var(--inzc-line-height-normal);
}

/* Campaign dropdown — slides in below radio when campaign mode active */
.inzc-search-mode-campaign {
    width: 100%;
    margin-top: 0;
    padding-top: var(--inzc-spacing-4);
    border-top: var(--inzc-border-width-thin) solid var(--inzc-border-light);
    display: none;
}

.inzc-search-mode-campaign.visible {
    display: block;
}

/* No campaigns message */
.inzc-no-campaigns-message {
    text-align: center;
    padding: 0 var(--inzc-spacing-4) var(--inzc-spacing-6);
    background: var(--inzc-bg-secondary);
    border-radius: var(--inzc-radius-md);
    margin-top: 0;
}

.inzc-no-campaigns-message p {
    margin: 0 0 var(--inzc-spacing-2);
    color: var(--inzc-text-secondary);
    font-size: var(--inzc-font-size-sm);
    line-height: var(--inzc-line-height-normal);
}

.inzc-no-campaigns-message p:first-of-type {
    font-weight: var(--inzc-font-weight-semibold);
    color: var(--inzc-text-primary);
    font-size: var(--inzc-font-size-base);
    margin-bottom: var(--inzc-spacing-1);
}

.inzc-no-campaigns-message p:last-of-type {
    margin-bottom: 0;
}

/* Helper hint under campaign dropdown */
.inzc-search-mode-hint {
    display: none;
    font-size: var(--inzc-font-size-sm);
    color: var(--inzc-text-tertiary);
    margin-top: var(--inzc-spacing-2);
    line-height: var(--inzc-line-height-normal);
}

.inzc-search-mode-hint.visible {
    display: block;
}

/* ==========================================================================
   Locked Filter State (Campaign Mode)
   ========================================================================== */

.inzc-filter-group-locked {
    position: relative;
    opacity: 0.6;
    pointer-events: none;
}

.inzc-filter-group-locked .inzc-filter-label::after {
    content: " 🔒";
    font-size: var(--inzc-font-size-xs);
}

.inzc-filter-group-locked .inzc-custom-select-trigger {
    background-color: var(--inzc-bg-tertiary);
    cursor: not-allowed;
}

/* ==========================================================================
   Filter Groups in Sidebar
   ========================================================================== */

.inzc-filter-group {
    margin-bottom: var(--inzc-spacing-4);
}

.inzc-filter-label {
    display: block;
    font-size: var(--inzc-font-size-sm);
    color: var(--inzc-text-secondary);
    margin-bottom: var(--inzc-spacing-2);
    font-weight: var(--inzc-font-weight-semibold);
    text-transform: uppercase;
    letter-spacing: var(--inzc-letter-spacing-wide);
}

/* ==========================================================================
   Saved Searches
   ========================================================================== */

.inzc-saved-searches {
    margin-top: var(--inzc-spacing-5);
    padding-top: var(--inzc-spacing-4);
    border-top: var(--inzc-border-width-thin) solid var(--inzc-border-light);
}

.inzc-saved-searches-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--inzc-spacing-3);
}

.inzc-saved-searches-title {
    font-size: var(--inzc-font-size-sm);
    font-weight: var(--inzc-font-weight-semibold);
    color: var(--inzc-text-primary);
    text-transform: uppercase;
    letter-spacing: var(--inzc-letter-spacing-wide);
}

#saveCurrentSearchBtn {
    display: inline-flex;
    align-items: center;
    gap: var(--inzc-spacing-1);
    padding: var(--inzc-spacing-1) var(--inzc-spacing-2);
    font-size: var(--inzc-font-size-xs);
}

#saveCurrentSearchBtn svg {
    width: 16px;
    height: 16px;
}

.inzc-saved-searches-list {
    display: flex;
    flex-direction: column;
    gap: var(--inzc-spacing-2);
}

.inzc-saved-searches-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--inzc-spacing-4) var(--inzc-spacing-2);
    text-align: center;
    color: var(--inzc-text-tertiary);
}

.inzc-saved-searches-empty svg {
    width: 24px;
    height: 24px;
    margin-bottom: var(--inzc-spacing-2);
    opacity: 0.5;
}

.inzc-saved-searches-empty p {
    font-size: var(--inzc-font-size-sm);
    font-weight: var(--inzc-font-weight-medium);
    color: var(--inzc-text-secondary);
    margin: 0 0 var(--inzc-spacing-1) 0;
}

.inzc-saved-searches-empty small {
    font-size: var(--inzc-font-size-xs);
    color: var(--inzc-text-tertiary);
}

.inzc-saved-search-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--inzc-spacing-2);
    padding: var(--inzc-spacing-2);
    background: var(--inzc-bg-secondary);
    border: var(--inzc-border-width-medium) solid var(--inzc-border-light);
    border-radius: var(--inzc-radius-md);
    transition: var(--inzc-transition-fast);
}

.inzc-saved-search-item:hover {
    background: var(--inzc-bg-hover);
    border-color: var(--inzc-border-light);
}

.inzc-saved-search-info {
    flex: 1;
    min-width: 0;
}

.inzc-saved-search-name {
    font-size: var(--inzc-font-size-sm);
    font-weight: var(--inzc-font-weight-medium);
    color: var(--inzc-text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: var(--inzc-spacing-1);
}

.inzc-saved-search-meta {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
    font-size: var(--inzc-font-size-xs);
    color: var(--inzc-text-tertiary);
}

.inzc-saved-search-mode {
    padding: 2px 6px;
    background: var(--inzc-color-primary-50);
    color: var(--inzc-color-primary-600);
    border-radius: var(--inzc-radius-sm);
    font-weight: var(--inzc-font-weight-medium);
}

.inzc-saved-search-actions {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-1);
    flex-shrink: 0;
}

.inzc-saved-search-load,
.inzc-saved-search-delete {
    padding: var(--inzc-spacing-1) var(--inzc-spacing-2);
    font-size: var(--inzc-font-size-xs);
}

.inzc-saved-search-delete {
    padding: var(--inzc-spacing-1);
}

.inzc-saved-search-delete svg {
    width: 14px;
    height: 14px;
}

.inzc-filter-actions {
    margin-top: var(--inzc-spacing-5);
    padding-top: var(--inzc-spacing-4);
    border-top: var(--inzc-border-width-thin) solid var(--inzc-border-light);
    display: flex;
    flex-direction: column;
    gap: var(--inzc-spacing-3);
}

/* Budget Range Inputs */
.inzc-budget-range-inputs {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
}

.inzc-budget-input-wrapper {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: var(--inzc-spacing-1);
}

.inzc-budget-input-label {
    font-size: var(--inzc-font-size-xs);
    color: var(--inzc-text-tertiary);
    font-weight: var(--inzc-font-weight-medium);
}

.inzc-budget-range-separator {
    padding-top: 16px;
    color: var(--inzc-text-tertiary);
    font-weight: var(--inzc-font-weight-medium);
}

/* Radio Group Styling */
.inzc-radio-group {
    display: flex;
    flex-direction: column;
    gap: var(--inzc-spacing-2);
}

.inzc-radio-option {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
    padding: var(--inzc-spacing-2);
    border-radius: var(--inzc-radius-md);
    cursor: pointer;
    transition: background-color var(--inzc-transition-fast);
}

.inzc-radio-option:hover {
    background-color: var(--inzc-bg-secondary);
}

.inzc-radio-option input[type="radio"] {
    margin: 0;
    cursor: pointer;
}

.inzc-radio-option span {
    font-size: var(--inzc-font-size-md);
    color: var(--inzc-text-secondary);
    line-height: var(--inzc-line-height-tight);
}

/* ==========================================================================
   Results Header
   ========================================================================== */

/* ========================================================================
   RESULTS HEADER
   ======================================================================== */

.inzc-results-header {
    display: grid;
    grid-template-columns: auto 1fr auto auto;
    gap: var(--inzc-spacing-4);
    align-items: center;
    margin-bottom: var(--inzc-spacing-4);
    padding-bottom: var(--inzc-spacing-3);
    border-bottom: var(--inzc-border-width-thin) solid var(--inzc-border-light);
}

/* Select All - Column 1 (Left) */
.inzc-select-all-wrapper {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
    grid-column: 1;
}

.inzc-select-all-wrapper label {
    margin: 0;
    font-weight: var(--inzc-font-weight-medium);
    cursor: pointer;
    user-select: none;
}

/* Sort Control - Column 2 (Right-aligned) */
.inzc-sort-control {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
    grid-column: 2;
    justify-self: end;
}

.inzc-sort-control label {
    margin: 0;
    font-size: var(--inzc-font-size-sm);
    color: var(--inzc-text-secondary);
    font-weight: var(--inzc-font-weight-medium);
    white-space: nowrap;
}

.inzc-sort-control .inzc-custom-select {
    width: auto;
}

.inzc-sort-control .inzc-custom-select-trigger {
    width: auto;
    min-width: 150px;
}

/* Per-page Control - Column 3 */
.inzc-per-page-control {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
    grid-column: 3;
}

.inzc-per-page-control label {
    margin: 0;
    font-size: var(--inzc-font-size-sm);
    color: var(--inzc-text-secondary);
    font-weight: var(--inzc-font-weight-medium);
    white-space: nowrap;
}

.inzc-per-page-select {
    appearance: none;
    -webkit-appearance: none;
    padding: var(--inzc-input-padding-y) var(--inzc-spacing-6) var(--inzc-input-padding-y) var(--inzc-input-padding-x);
    font-family: var(--inzc-font-family-base);
    font-size: var(--inzc-font-size-base);
    font-weight: var(--inzc-font-weight-normal);
    line-height: var(--inzc-line-height-normal);
    color: var(--inzc-text-primary);
    background-color: var(--inzc-bg-primary);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%236b7280' viewBox='0 0 24 24' width='16' height='16'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right var(--inzc-spacing-2) center;
    background-size: 14px 14px;
    border: var(--inzc-border-width-medium) solid var(--inzc-form-border-light);
    border-radius: var(--inzc-radius-md);
    cursor: pointer;
    transition: var(--inzc-transition-colors);
    outline: none;
    min-width: 70px;
}

.inzc-per-page-select:hover,
.inzc-per-page-select:focus {
    border-color: var(--inzc-border-medium);
}

/* Invite List Badge - Column 4 (Right) */
.inzc-results-badges {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-3);
    grid-column: 4;
    justify-self: end;
}

/* Invite List Link Badge */
.inzc-invite-list-link {
    display: inline-flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
    padding: var(--inzc-spacing-1) var(--inzc-spacing-3) var(--inzc-spacing-1) var(--inzc-spacing-2);
    font-size: var(--inzc-font-size-base);
    font-weight: var(--inzc-font-weight-medium);
    color: var(--inzc-primary);
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.08), rgba(99, 102, 241, 0.04));
    border: var(--inzc-border-width-thin) solid rgba(99, 102, 241, 0.3);
    border-radius: var(--inzc-radius-md);
    text-decoration: none;
    transition: var(--inzc-transition-all);
    cursor: pointer;
}

.inzc-invite-list-link:hover {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.15), rgba(99, 102, 241, 0.08));
    border-color: var(--inzc-primary);
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.25);
    transform: translateY(-1px);
    color: var(--inzc-primary);
}

.inzc-invite-list-link svg {
    flex-shrink: 0;
    color: var(--inzc-primary);
}

.inzc-invite-list-label {
    line-height: 1;
}

.inzc-invite-list-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: var(--inzc-spacing-5);
    height: var(--inzc-spacing-5);
    padding: 0 var(--inzc-spacing-1);
    font-size: var(--inzc-font-size-xs);
    font-weight: var(--inzc-font-weight-bold);
    color: var(--inzc-white);
    background-color: var(--inzc-primary);
    border-radius: var(--inzc-radius-full);
    line-height: 1;
}

/* ==========================================================================
   Influencer List - Horizontal Rows
   ========================================================================== */

.inzc-influencers-list {
    display: flex;
    flex-direction: column;
    gap: var(--inzc-spacing-6);
    margin-bottom: var(--inzc-spacing-5);
}

.inzc-influencer-row {
    display: grid;
    grid-template-columns: var(--inzc-spacing-6) minmax(0, 1fr);
    grid-template-areas:
        "checkbox profile"
        "checkbox platforms"
        "checkbox metadata";
    gap: var(--inzc-spacing-3) var(--inzc-spacing-4);
    padding: var(--inzc-spacing-4);
    background-color: var(--inzc-bg-primary);
    border: var(--inzc-border-width-thin) solid var(--inzc-border-light);
    border-radius: var(--inzc-radius-lg);
    transition: var(--inzc-transition-all);
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.inzc-influencer-row:hover {
    box-shadow: var(--inzc-card-shadow);
}

/* Keyboard Focus States for Accessibility */
.inzc-influencer-row:focus-within {
    outline: 2px solid var(--inzc-primary);
    outline-offset: 2px;
    box-shadow: var(--inzc-card-shadow);
}

.inzc-influencer-checkbox:focus-visible {
    outline: 2px solid var(--inzc-primary);
    outline-offset: 2px;
}

/* Bulk Selection Checkbox */
.inzc-bulk-checkbox {
    grid-area: checkbox;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

#bulkSelectAll {
    margin-left: var(--inzc-spacing-4);
}

#bulkSelectAll:focus-visible {
    outline: 2px solid var(--inzc-primary);
    outline-offset: 2px;
}


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

/* Profile Section - Contains profile-main and actions */
.inzc-influencer-profile {
    grid-area: profile;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--inzc-spacing-4);
    min-width: 0;
    max-width: 100%;
}

.inzc-profile-main {
    display: flex;
    align-items: flex-start;
    gap: var(--inzc-spacing-3);
    flex: 1;
    min-width: 0;
}

.inzc-avatar-wrapper {
    position: relative;
    flex-shrink: 0;
}

.inzc-influencer-avatar {
    width: var(--inzc-spacing-12);
    height: var(--inzc-spacing-12);
    border-radius: var(--inzc-radius-md);
    object-fit: cover;
    flex-shrink: 0;
}

.inzc-online-indicator {
    position: absolute;
    top: -1px;
    right: -1px;
    width: 16px;
    height: 16px;
    background-color: var(--inzc-success);
    border: 4px solid var(--inzc-bg-primary);
    border-radius: 50%;
}

.inzc-influencer-info {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.inzc-influencer-name {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
    flex-wrap: wrap;
}

.inzc-influencer-name a {
    display: inline-flex;
    align-items: center;
    gap: var(--inzc-spacing-1);
    font-size: var(--inzc-font-size-lg);
    font-weight: var(--inzc-font-weight-semibold);
    color: var(--inzc-text-primary);
}

.inzc-influencer-name .inzc-creator-level-badge {
    margin-left: 0;
}

.inzc-influencer-handle a {
    font-size: var(--inzc-font-size-base);
    color: var(--inzc-text-tertiary);
    font-weight: var(--inzc-font-weight-medium);
}

.inzc-influencer-name a:hover,
.inzc-influencer-handle a:hover {
    color: var(--inzc-primary-hover);
}

.inzc-influencer-meta-row {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
    flex-wrap: wrap;
}

.inzc-influencer-location {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-1);
    font-size: var(--inzc-font-size-sm);
    color: var(--inzc-text-tertiary);
}

.inzc-influencer-location svg {
    flex-shrink: 0;
}

/* ==========================================================================
   Platforms Section - Grid layout for 3 platforms
   ========================================================================== */

.inzc-influencer-platforms {
    grid-area: platforms;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--inzc-spacing-3);
}

.inzc-platform-stat {
    display: flex;
    align-items: flex-start;
    gap: var(--inzc-spacing-2);
    padding: var(--inzc-spacing-3);
    background-color: var(--inzc-bg-secondary);
    border-radius: var(--inzc-radius-md);
    border: var(--inzc-border-width-thin) solid var(--inzc-border-light);
    min-width: 0;
}

.inzc-platform-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--inzc-spacing-8);
    height: var(--inzc-spacing-8);
    border-radius: var(--inzc-radius-full);
    flex-shrink: 0;
    margin-top: 2px;
}

.inzc-platform-icon.platform-instagram {
    background-color: var(--inzc-instagram);
    color: var(--inzc-white);
}

.inzc-platform-icon.platform-tiktok {
    background-color: var(--inzc-black);
    color: var(--inzc-white);
}

.inzc-platform-icon.platform-youtube {
    background-color: var(--inzc-youtube);
    color: var(--inzc-white);
}

.inzc-platform-icon.platform-facebook {
    background-color: var(--inzc-facebook);
    color: var(--inzc-white);
}

.inzc-platform-icon.platform-twitter {
    background-color: var(--inzc-twitter);
    color: var(--inzc-white);
}

.inzc-platform-content {
    display: flex;
    flex-direction: column;
    gap: var(--inzc-spacing-2);
    flex: 1;
    min-width: 0;
}

.inzc-platform-top {
    display: flex;
    gap: var(--inzc-spacing-4);
}

.inzc-platform-metric {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

/* Shared label style for platform metrics and rates */
.inzc-platform-label,
.inzc-rate-label {
    font-size: var(--inzc-font-size-xs);
    font-weight: var(--inzc-font-weight-medium);
    color: var(--inzc-text-tertiary);
    text-transform: uppercase;
    letter-spacing: var(--inzc-letter-spacing-wide);
}

.inzc-platform-value {
    font-size: var(--inzc-font-size-base);
    font-weight: var(--inzc-font-weight-semibold);
    color: var(--inzc-text-primary);
}

.inzc-platform-rate-section {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.inzc-rate-value {
    font-size: var(--inzc-font-size-base);
    font-weight: var(--inzc-font-weight-semibold);
    color: var(--inzc-gray-500);
}

/* ==========================================================================
   Metadata Section - Niches, Stats, Badges
   ========================================================================== */

.inzc-influencer-metadata {
    grid-area: metadata;
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-4);
    flex-wrap: wrap;
}

.inzc-influencer-niches {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
    flex-wrap: wrap;
}

.inzc-niche-tag {
    display: inline-flex;
    align-items: center;
    padding: 2px var(--inzc-spacing-2);
    font-size: var(--inzc-font-size-sm);
    font-weight: var(--inzc-font-weight-medium);
    color: var(--inzc-text-tertiary);
    background-color: transparent;
    border: var(--inzc-border-width-thin) solid var(--inzc-border-light);
    border-radius: var(--inzc-radius-md);
    white-space: nowrap;
}

/* Performance Stats */
.inzc-influencer-stats {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
    flex-wrap: wrap;
}

.inzc-stat-rating {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-1);
    font-size: var(--inzc-font-size-base);
    color: var(--inzc-text-primary);
}

.inzc-stat-rating svg {
    flex-shrink: 0;
}

.inzc-rating-value {
    font-weight: var(--inzc-font-weight-semibold);
}

.inzc-rating-count {
    color: var(--inzc-text-tertiary);
    font-size: var(--inzc-font-size-sm);
}

.inzc-active-badge {
    background-color: var(--inzc-success-lighter);
    color: var(--inzc-success);
    border: var(--inzc-border-width-thin) solid var(--inzc-success-lighter);
}

/* ==========================================================================
   Actions Wrapper - Contains actions buttons + campaign pills (stacked vertically)
   ========================================================================== */

.inzc-influencer-actions-wrapper {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
    max-width: 100%;
}

/* ==========================================================================
   Actions Section - Bookmark, View, Invite buttons
   ========================================================================== */

.inzc-influencer-actions {
    display: flex;
    align-items: flex-start;
    gap: var(--inzc-spacing-2);
    flex-shrink: 0;
    flex-wrap: wrap;
    min-width: 0;
    max-width: 100%;
}

/* ==========================================================================
   Campaign Pills - Multi-Campaign Invite Status
   Shows which campaigns an influencer is already invited to (directly below buttons)
   ========================================================================== */

.inzc-invite-status {
    display: none;
    /* Hidden until campaigns exist */
    flex-direction: column;
    gap: var(--inzc-spacing-2);
    margin-top: var(--inzc-spacing-3);
    padding-top: var(--inzc-spacing-3);
    border-top: var(--inzc-border-width-thin) solid var(--inzc-border-light);
    justify-content: flex-end;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
}

.inzc-campaign-pill {
    display: inline-flex;
    align-items: center;
    gap: var(--inzc-spacing-1);
    padding: calc(var(--inzc-spacing-1) * 0.75) var(--inzc-spacing-2);
    background-color: var(--inzc-success-lighter);
    color: var(--inzc-success);
    border: var(--inzc-border-width-thin) solid var(--inzc-success-light);
    border-radius: var(--inzc-radius-md);
    font-size: var(--inzc-font-size-xs);
    font-weight: var(--inzc-font-weight-medium);
    line-height: var(--inzc-line-height-tight);
    white-space: nowrap;
    max-width: 100%;
    min-width: 0;
    width: fit-content;
    box-sizing: border-box;
    overflow: hidden;
}

.inzc-campaign-pill svg {
    flex-shrink: 0;
}

.inzc-campaign-pill-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}

.inzc-btn-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--inzc-spacing-8);
    height: var(--inzc-spacing-8);
    padding: 0;
    background: transparent;
    border: var(--inzc-border-width-thin) solid var(--inzc-border-light);
    border-radius: var(--inzc-radius-md);
    color: var(--inzc-text-secondary);
    cursor: pointer;
    transition: var(--inzc-transition-all);
}

.inzc-btn-icon:hover {
    background-color: var(--inzc-bg-secondary);
    border-color: var(--inzc-border-dark);
    color: var(--inzc-text-primary);
}

.inzc-bookmark-btn.bookmarked {
    background-color: var(--inzc-warning-lightest);
    border-color: var(--inzc-warning-light);
    color: var(--inzc-warning);
}

.inzc-bookmark-btn.bookmarked svg {
    fill: currentColor;
}

/* ==========================================================================
   Bulk Actions Floating Bar
   ========================================================================== */

.inzc-bulk-actions-bar {
    position: sticky;
    top: var(--inzc-spacing-20);
    z-index: var(--inzc-z-sticky);
    margin-bottom: var(--inzc-spacing-4);
    padding: var(--inzc-spacing-3) var(--inzc-spacing-4);
    background-color: var(--inzc-primary);
    border-radius: var(--inzc-radius-lg);
    box-shadow: var(--inzc-shadow-md);
    animation: slideDown var(--inzc-transition-slow) var(--inzc-ease-out);
}

/* Invisible cover for the gap/space above the bulk actions bar */
.inzc-bulk-actions-bar::before {
    content: '';
    position: absolute;
    top: calc(-1 * var(--inzc-spacing-4));
    left: 0;
    right: 0;
    height: var(--inzc-spacing-4);
    background-color: var(--inzc-bg-tertiary);
    pointer-events: none;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.inzc-bulk-actions-content {
    display: grid;
    grid-template-columns: auto 1fr auto auto auto;
    gap: var(--inzc-spacing-2);
    align-items: center;
}

.inzc-bulk-count {
    font-size: var(--inzc-font-size-base);
    color: var(--inzc-white);
    display: flex;
    gap: 3px;
    grid-column: 1;
    justify-self: start;
}

.inzc-bulk-count strong {
    font-weight: var(--inzc-font-weight-semibold);
}

#bulkAddToInviteList {
    grid-column: 3;
    justify-self: end;
}

#bulkRemoveFromInviteList {
    grid-column: 4;
    justify-self: end;
}

#bulkBookmarkAll {
    grid-column: 5;
    justify-self: end;
    border-color: rgba(255, 255, 255, 0.4);
    color: #ffffff;
    transition: all 0.2s ease;
}

#bulkBookmarkAll:hover {
    background-color: #ffffff !important;
    color: #4f46e5 !important;
    border-color: #ffffff !important;
}

.inzc-bulk-actions-buttons {
    display: flex;
    align-items: center;
    gap: var(--inzc-spacing-2);
}

.inzc-bulk-actions-buttons .inzc-btn-primary {
    background-color: var(--inzc-white);
    color: var(--inzc-primary);
    border-color: var(--inzc-white);
}

.inzc-bulk-actions-buttons .inzc-btn-primary:hover {
    background-color: var(--inzc-bg-secondary);
    border-color: var(--inzc-bg-secondary);
}

.inzc-bulk-actions-buttons .inzc-btn-outline-secondary {
    background-color: transparent;
    color: var(--inzc-white);
    border-color: rgba(255, 255, 255, 0.5);
}

.inzc-bulk-actions-buttons .inzc-btn-outline-secondary:hover {
    background-color: rgba(255, 255, 255, 0.1);
    border-color: var(--inzc-white);
}

/* ==========================================================================
   Pagination Wrapper (Bottom of Results)
   ========================================================================== */

.inzc-pagination-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--inzc-spacing-4);
    margin-top: var(--inzc-spacing-6);
}

/* Results Count - Bottom Left */
.inzc-pagination-wrapper .inzc-results-count {
    font-size: var(--inzc-font-size-base);
    color: var(--inzc-text-secondary);
}

.inzc-pagination-wrapper .inzc-results-count strong {
    color: var(--inzc-text-primary);
    font-weight: var(--inzc-font-weight-semibold);
}

/* Pagination - Bottom Right */
.inzc-pagination-wrapper .inzc-pagination {
    padding: 0;
    margin: 0;
}

/* ==========================================================================
   Empty State
   ========================================================================== */

.inzc-empty-state {
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--inzc-spacing-12) var(--inzc-spacing-6);
    text-align: center;
}

.inzc-empty-state.active {
    display: flex;
}

.inzc-empty-state-icon {
    margin-bottom: var(--inzc-spacing-4);
    color: var(--inzc-text-tertiary);
}

.inzc-empty-state-title {
    font-size: var(--inzc-font-size-2xl);
    font-weight: var(--inzc-font-weight-semibold);
    color: var(--inzc-text-primary);
    margin-bottom: var(--inzc-spacing-2);
}

.inzc-empty-state-text {
    font-size: var(--inzc-font-size-lg);
    color: var(--inzc-text-secondary);
    margin-bottom: var(--inzc-spacing-4);
}

/* ==========================================================================
   Dark Mode Support
   ========================================================================== */

[data-inzc-theme="dark"] .inzc-search-mode-card {
    background-color: var(--inzc-bg-accent);
}

[data-inzc-theme="dark"] .inzc-search-mode-card:hover,
[data-inzc-theme="dark"] .inzc-search-mode-card:has(input[type="radio"]:checked) {
    background-color: var(--inzc-bg-accent);
}

[data-inzc-theme="dark"] .inzc-search-mode-card:has(input[type="radio"]:checked),
[data-inzc-theme="dark"] .inzc-search-mode-card:hover,
[data-inzc-theme="dark"] .inzc-search-sidebar .select2-container--default.select2-container--focus .select2-selection--single {
    border-color: var(--inzc-primary-light);
}

[data-inzc-theme="dark"] .inzc-form-radio input[type="radio"] {
    background-color: var(--inzc-bg-secondary);
}

[data-inzc-theme="dark"] .inzc-search-sidebar .select2-container--default .select2-selection--single {
    background-color: var(--inzc-bg-secondary);
}

[data-inzc-theme="dark"] .inzc-form-radio input[type="radio"] {
    border: 2px solid var(--inzc-primary-light);
}

[data-inzc-theme="dark"] .inzc-online-indicator {
    border-color: var(--inzc-bg-secondary);
}

[data-inzc-theme="dark"] .inzc-invite-list-link {
    color: var(--inzc-primary);
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.12), rgba(99, 102, 241, 0.06));
    border-color: rgba(99, 102, 241, 0.3);
}

[data-inzc-theme="dark"] .inzc-invite-list-link:hover {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.2), rgba(99, 102, 241, 0.1));
    border-color: var(--inzc-primary);
    box-shadow: 0 2px 10px rgba(99, 102, 241, 0.2);
}

[data-inzc-theme="dark"] .inzc-campaign-pill {
    background-color: var(--inzc-success-lightest);
}

[data-inzc-theme="dark"] .inzc-search-sidebar {
    background-color: var(--inzc-bg-secondary);
    border-color: var(--inzc-border-light);
}

[data-inzc-theme="dark"] .inzc-influencer-row {
    background-color: var(--inzc-bg-secondary);
    border-color: var(--inzc-border-light);
}

[data-inzc-theme="dark"] .inzc-influencer-row:hover {
    background-color: var(--inzc-bg-light);
    box-shadow: var(--inzc-shadow-lg);
}

[data-inzc-theme="dark"] .inzc-verified-badge {
    background-color: var(--inzc-success-light);
    color: var(--inzc-text-primary);
}

[data-inzc-theme="dark"] .inzc-platform-stat {
    background-color: var(--inzc-bg-accent);
    border-color: var(--inzc-border-light);
}

[data-inzc-theme="dark"] .inzc-platform-stat:hover {
    background-color: var(--inzc-bg-tertiary);
}

[data-inzc-theme="dark"] .inzc-niche-tag {
    background-color: var(--inzc-bg-light);
    border-color: var(--inzc-border-light);
}


[data-inzc-theme="dark"] .inzc-active-badge {
    background-color: rgba(16, 185, 129, 0.15);
    border-color: rgba(16, 185, 129, 0.3);
}

[data-inzc-theme="dark"] .inzc-bulk-actions-bar {
    background-color: var(--inzc-bg-secondary);
    border-color: var(--inzc-border-medium);
    box-shadow: var(--inzc-shadow-xs);
}

[data-inzc-theme="dark"] .inzc-empty-state {
    background: rgba(99, 102, 241, 0.05);
    border-color: rgba(99, 102, 241, 0.2);
}

[data-inzc-theme="dark"] .inzc-per-page-select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%239ca3af' viewBox='0 0 24 24' width='16' height='16'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");
}

/* ==========================================================================
   Campaign Filter Validation
   ========================================================================== */

.inzc-search-mode-campaign.validation-error {
    animation: shake 0.4s ease-in-out;
    border: 2px solid var(--inzc-danger) !important;
    border-radius: var(--inzc-radius-md);
    background-color: rgba(239, 68, 68, 0.05);
    padding: var(--inzc-spacing-4);
    margin-top: var(--inzc-spacing-4);
}

.inzc-search-mode-campaign.validation-error .inzc-filter-label {
    color: var(--inzc-danger);
}

.inzc-search-mode-campaign.validation-error select {
    border-color: var(--inzc-danger) !important;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);
}

@keyframes shake {

    0%,
    100% {
        transform: translateX(0);
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        transform: translateX(-5px);
    }

    20%,
    40%,
    60%,
    80% {
        transform: translateX(5px);
    }
}

/* ==========================================================================
   Responsive Design
   Using standardized breakpoints: 480px, 768px, 1024px, 1280px
   ========================================================================== */

@media (max-width: 1280px) {
    .inzc-influencer-platforms {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Desktop (≤1023px) - Switch to single column */
@media (max-width: 1023px) {
    .inzc-search-layout {
        grid-template-columns: 1fr;
        gap: var(--inzc-spacing-4);
    }

    .inzc-search-sidebar {
        width: 100%;
        position: static;
        max-height: none;
    }

    /* Results header - more compact */
    .inzc-results-header {
        gap: var(--inzc-spacing-2) var(--inzc-spacing-3);
    }

    /* Platform stats - 2 columns */
    .inzc-influencer-platforms {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--inzc-spacing-2);
    }

    .inzc-platform-stat {
        padding: var(--inzc-spacing-2);
    }
}

/* Tablet (≤768px) - Single column layouts */
@media (max-width: 1023px) {

    /* Mobile Filters Button - Show */
    .inzc-mobile-filters-btn {
        display: flex;
    }

    /* Results header - 2x2 grid layout */
    .inzc-results-header {
        grid-template-columns: 1fr auto auto;
        grid-template-rows: auto auto;
        gap: var(--inzc-spacing-2);
    }

    .inzc-select-all-wrapper {
        grid-column: 1;
        grid-row: 1;
    }

    .inzc-sort-control {
        grid-column: 2;
        grid-row: 1;
        justify-self: end;
    }

    .inzc-per-page-control {
        grid-column: 3;
        grid-row: 1;
    }

    .inzc-mobile-filters-btn {
        grid-column: 1;
        grid-row: 2;
    }

    .inzc-results-badges {
        grid-column: 2 / -1;
        grid-row: 2;
        justify-self: end;
        align-self: center;
    }

    /* Transform Sidebar into Drawer */
    .inzc-search-sidebar {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: 85%;
        max-width: 400px;
        height: 100vh;
        border-radius: 0;
        border-right: var(--inzc-border-width-thin) solid var(--inzc-border-light);
        overflow-y: auto;
        transform: translateX(-100%);
        transition: transform var(--inzc-transition-normal) var(--inzc-ease-out);
        z-index: calc(var(--inzc-z-modal) + 2);
        box-shadow: var(--inzc-shadow-xl);
    }

    .inzc-search-sidebar.open {
        transform: translateX(0);
    }

    /* Show Close Button */
    .inzc-sidebar-close-btn {
        display: flex;
    }

    /* Show Backdrop when Drawer is Open */
    .inzc-filters-backdrop.active {
        display: block;
    }

    /* Prevent Body Scroll when Drawer Open */
    body.filters-open {
        overflow: hidden;
    }

    /* Influencer cards - simplified layout */
    .inzc-influencer-row {
        grid-template-columns: auto minmax(0, 1fr);
        grid-template-areas:
            "checkbox profile"
            "checkbox platforms"
            "checkbox metadata";
        gap: var(--inzc-spacing-2) var(--inzc-spacing-3);
        padding: var(--inzc-spacing-3);
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }

    .inzc-influencer-profile {
        flex-direction: column;
        gap: var(--inzc-spacing-3);
        min-width: 0;
        max-width: 100%;
    }

    .inzc-influencer-avatar {
        width: var(--inzc-spacing-10);
        height: var(--inzc-spacing-10);
    }

    .inzc-influencer-actions-wrapper {
        width: 100%;
    }

    .inzc-influencer-actions {
        width: 100%;
        justify-content: stretch;
    }

    .inzc-influencer-actions .inzc-btn {
        flex: 1;
    }

    .inzc-influencer-actions .inzc-btn-icon {
        flex: 0 0 var(--inzc-spacing-10);
    }

    /* Metadata - full width items */
    .inzc-influencer-metadata {
        gap: var(--inzc-spacing-2);
        flex-direction: column;
        align-items: flex-start;
    }

    .inzc-influencer-niches,
    .inzc-influencer-stats {
        width: 100%;
    }

    /* Pagination - stack on mobile */
    .inzc-pagination-wrapper {
        flex-direction: column;
        gap: var(--inzc-spacing-3);
        text-align: center;
    }

    .inzc-pagination-wrapper .inzc-results-count {
        order: 2;
    }

    .inzc-pagination-wrapper .inzc-pagination {
        order: 1;
    }
}

/* Below Tablet (<768px) - Bulk actions grid */
@media (max-width: 767px) {

    /* Bulk actions - 2-column grid */
    .inzc-bulk-actions-bar {
        padding: var(--inzc-spacing-3);
        top: var(--inzc-spacing-16);
        margin-bottom: var(--inzc-spacing-3);
    }

    .inzc-bulk-actions-bar::before {
        height: var(--inzc-spacing-3);
        top: calc(-1 * var(--inzc-spacing-3));
    }

    .inzc-bulk-actions-content {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto;
        gap: var(--inzc-spacing-2);
        align-items: center;
    }

    .inzc-bulk-count {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
    }

    #bulkAddToInviteList {
        grid-column: 2;
        grid-row: 1;
        width: 100%;
    }

    #bulkBookmarkAll {
        grid-column: 1;
        grid-row: 2;
        width: 100%;
    }

    #bulkRemoveFromInviteList {
        grid-column: 2;
        grid-row: 2;
        width: 100%;
    }
}

/* Mobile (≤480px) - Ultra compact */
@media (max-width: 480px) {

    /* Results header - mobile optimized */
    .inzc-results-header {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto;
        gap: var(--inzc-spacing-2);
        padding-bottom: var(--inzc-spacing-2);
        margin-bottom: var(--inzc-spacing-3);
    }

    .inzc-select-all-wrapper {
        grid-column: 1;
        grid-row: 1;
    }

    .inzc-sort-control {
        grid-column: 2;
        grid-row: 1;
        justify-self: end;
    }

    .inzc-sort-control .inzc-custom-select-trigger {
        padding: var(--inzc-spacing-1) var(--inzc-spacing-2);
    }

    .inzc-per-page-control {
        display: none;
    }

    .inzc-mobile-filters-btn {
        grid-column: 1;
        grid-row: 2;
    }

    .inzc-results-badges {
        grid-column: 2;
        grid-row: 2;
        justify-self: end;
        align-self: center;
    }

    .inzc-invite-list-link {
        padding: var(--inzc-spacing-2) var(--inzc-spacing-3);
    }

    /* Influencer cards - minimal layout */
    .inzc-influencer-row {
        grid-template-columns: auto minmax(0, 1fr);
        grid-template-areas:
            "checkbox profile"
            "checkbox platforms"
            "checkbox metadata";
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }

    .inzc-profile-main {
        gap: var(--inzc-spacing-2);
    }

    .inzc-influencer-avatar {
        width: var(--inzc-spacing-8);
        height: var(--inzc-spacing-8);
    }

    .inzc-online-indicator {
        width: 12px;
        height: 12px;
        border: 3.2px solid var(--inzc-bg-primary);
    }

    /* Platform stats - single column */
    .inzc-influencer-platforms {
        grid-template-columns: 1fr;
        gap: var(--inzc-spacing-2);
    }

    .inzc-platform-stat {
        width: 100%;
    }

    .inzc-platform-top {
        gap: var(--inzc-spacing-3);
    }

    /* Platform stats - compact layout */
    .inzc-platform-stat {
        padding: var(--inzc-spacing-2);
    }

    .inzc-platform-icon {
        width: var(--inzc-spacing-6);
        height: var(--inzc-spacing-6);
    }


    /* Actions - icon buttons smaller */
    .inzc-influencer-actions {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        gap: var(--inzc-spacing-2);
    }

    .inzc-influencer-actions .inzc-btn-icon {
        flex: 0 0 var(--inzc-spacing-8);
        width: var(--inzc-spacing-8);
        height: var(--inzc-spacing-8);
    }

    .inzc-influencer-actions a.inzc-btn {
        flex: 1 1 auto;
        min-width: 0;
    }

    .inzc-influencer-actions .inzc-invite-btn {
        flex: 1 1 100%;
        width: 100%;
    }

    /* Campaign pills - smaller */
    .inzc-campaign-pill {
        padding: calc(var(--inzc-spacing-1) * 0.5) var(--inzc-spacing-1);
        max-width: 100%;
    }

    /* Metadata - compact */
    .inzc-niche-tag {
        padding: 1px var(--inzc-spacing-1);
    }

    /* Bulk actions - compact */
    .inzc-bulk-actions-bar {
        padding: var(--inzc-spacing-2) var(--inzc-spacing-3);
        top: var(--inzc-spacing-3);
    }

    .inzc-bulk-actions-bar::before {
        height: var(--inzc-spacing-3);
        top: calc(-1 * var(--inzc-spacing-3));
    }

    .inzc-bulk-actions-buttons {
        flex: 1;
        min-width: 100%;
    }

    .inzc-bulk-actions-buttons .inzc-btn {
        padding: var(--inzc-spacing-2) var(--inzc-spacing-3);
    }

    /* Pagination - compact */
    .pagination-btn {
        padding: var(--inzc-spacing-1) var(--inzc-spacing-2);
    }

    .pagination-number {
        width: var(--inzc-spacing-6);
        height: var(--inzc-spacing-6);
    }
}

/* ── Categories (niche) multi-select dropdown ───────────────────────────────── */
.inzc-niche-opt {
    display: flex;
    align-items: center;
    gap: 8px;
    line-height: 1.4;
}

/* Checkbox — visible on light backgrounds */
.inzc-niche-check {
    display: inline-block;
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    border: 1.5px solid #9ca3af;
    border-radius: 3px;
    background: #fff;
    transition: background 0.12s, border-color 0.12s;
}

/* Checked state — Select2 always keeps aria-selected in sync, so we rely solely on that */
.inzc-niche-check.is-checked,
.select2-results__option[aria-selected="true"] .inzc-niche-check,
.select2-results__option--selected .inzc-niche-check {
    background: var(--inzc-primary, #6366f1);
    border-color: var(--inzc-primary, #6366f1);
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 10 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 4l3 3 5-6' stroke='%23fff' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 9px 7px;
}

/* Highlighted (hover) — keep border visible against the hover background */
.select2-results__option--highlighted .inzc-niche-check {
    border-color: #6b7280;
}

/* Highlighted + selected — invert so the checkmark stays visible on the hover background */
.select2-results__option--highlighted[aria-selected="true"] .inzc-niche-check,
.select2-results__option--highlighted.select2-results__option--selected .inzc-niche-check {
    background: #fff;
    border-color: var(--inzc-primary, #6366f1);
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 10 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 4l3 3 5-6' stroke='%236366f1' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 9px 7px;
}

.inzc-niche-opt-all {
    padding-left: 24px;
    /* align text with checkboxed options */
}

/* ── Condensed pill display (2+ selections): [First Category] [+N] [×] ────── */

/* Override default right padding — our pills have no inline × remove button */
.select2-container--default .select2-selection--multiple .select2-selection__choice.inzc-niche-pill {
    padding: 2px 8px;
}

/* +N count badge */
.select2-container--default .select2-selection--multiple .select2-selection__choice.inzc-niche-count-pill {
    padding: 2px 8px;
    background-color: rgba(99, 102, 241, 0.08);
    border-color: rgba(99, 102, 241, 0.25);
    color: var(--inzc-primary, #6366f1);
}

/* Give the multi-select field a positioning context for the absolute × button */
#filterNiche+.select2-container .select2-selection--multiple {
    position: relative;
    padding-right: 36px;
}

/* Global clear-all × button — matches single-select .select2-selection__clear style */
.inzc-niche-clear-all {
    color: var(--inzc-text-secondary);
    cursor: pointer;
    font-size: 18px;
    font-weight: bold;
    height: auto;
    line-height: 1;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    user-select: none;
}

.inzc-niche-clear-all:hover {
    color: var(--inzc-danger);
}

/* Dark mode */
[data-inzc-theme="dark"] .inzc-niche-check {
    background: var(--inzc-bg-tertiary, #1f2937);
    border-color: #6b7280;
}

[data-inzc-theme="dark"] .inzc-niche-check.is-checked,
[data-inzc-theme="dark"] .select2-results__option[aria-selected="true"] .inzc-niche-check,
[data-inzc-theme="dark"] .select2-results__option--selected .inzc-niche-check {
    background: var(--inzc-primary, #6366f1);
    border-color: var(--inzc-primary, #6366f1);
}

[data-inzc-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice.inzc-niche-count-pill {
    background-color: rgba(99, 102, 241, 0.15);
    border-color: rgba(99, 102, 241, 0.35);
}