#PulseAnalytics-user-journey,
#PulseAnalytics-user-journey-v2 {
    font-family: var(--w2ssyn-sb-font) !important;
}

#PulseAnalytics-user-journey select {
    line-height: normal;
}

#PulseAnalytics-user-journey .transition-all {
    transition-duration: 0.2s;
}

#PulseAnalytics-user-journey tr:hover {
    background-color: #f8fafc;
}

.journey-chip {
    background: #F3F1FF;
    color: #5551E1;
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    transition: all 0.2s;
}

.journey-chip:hover {
    background: #E8E4FF;
}

.journey-arrow {
    color: #CBD5E1;
    font-size: 12px;
    font-weight: bold;
    margin: 0 2px;
}

#journey-date-range {
    padding-right: 45px !important;
    padding-left: 14px !important;
}

#journey-search {
    padding-left: 45px !important;
}

#PulseAnalytics-user-journey .dashicons,
#PulseAnalytics-user-journey-v2 .dashicons {
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* WP_List_Table inside Pulse Analytics shell (#52) */
#storepulse-user-journey-list .wp-list-table {
    border-collapse: collapse;
    width: 100%;
    font-size: 12px;
}

#storepulse-user-journey-list .wp-list-table th,
#storepulse-user-journey-list .wp-list-table td {
    padding: 12px 16px;
    text-align: left;
    border-bottom: 1px solid #f1f5f9;
}

#storepulse-user-journey-list .wp-list-table thead th {
    background: rgba(248, 250, 252, 0.6);
    color: #334155;
    font-weight: 700;
}

#storepulse-user-journey-list .tablenav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 12px;
    gap: 12px;
    flex-wrap: wrap;
}

#storepulse-user-journey-list .tablenav-pages {
    float: none;
}

#user-journey-filters,
.sp-toolbar#user-journey-filters,
#PulseAnalytics-user-journey-v2 .sp-toolbar,
#PulseAnalytics-user-journey .sp-toolbar {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    padding: 16px 20px !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
    margin-bottom: 24px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* ── Row 1: Full-Width Filter Controls ── */
.journey-filters-row,
#user-journey-filters > .journey-filters-row,
#user-journey-filters > div:first-of-type {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
}

.journey-date-range-wrap {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex: 1 1 240px !important;
    min-width: 210px !important;
}

.journey-date-range-wrap input[type="date"] {
    flex: 1 1 105px !important;
    min-width: 95px !important;
    width: auto !important;
}

.journey-filters-row select,
#user-journey-filters select {
    flex: 1 1 130px !important;
    min-width: 110px !important;
    width: auto !important;
}

.journey-filters-row #btn-filter-journey,
#user-journey-filters #btn-filter-journey {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

/* ── Row 2: Search Controls (Preserved & Unchanged) ── */
.journey-search-row,
#user-journey-filters > .journey-search-row,
#user-journey-filters > div:last-of-type {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: auto !important;
}

.journey-search-row input[type="text"]#journey-search-input,
#user-journey-filters input[type="text"]#journey-search-input {
    width: 220px !important;
    min-width: 180px !important;
    flex: none !important;
}

.journey-search-row #btn-search-journeys,
#user-journey-filters #btn-search-journeys {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

/* ── Equal Height (38px) for All Form Inputs, Selects, and Buttons ── */
#user-journey-filters input[type="date"],
#user-journey-filters select,
#user-journey-filters input[type="text"],
#user-journey-filters button,
#user-journey-filters .sp-btn-primary,
#user-journey-filters .sp-btn-secondary,
.sp-toolbar input[type="date"],
.sp-toolbar select,
.sp-toolbar input[type="text"],
.sp-toolbar button,
.sp-toolbar .sp-btn-primary,
.sp-toolbar .sp-btn-secondary {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    box-sizing: border-box !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: normal !important;
    border-radius: 10px !important;
    margin: 0 !important;
    vertical-align: middle !important;
}

/* Date Inputs */
#user-journey-filters input[type="date"],
.sp-toolbar input[type="date"] {
    padding: 0 12px !important;
    background-color: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    color: #334155 !important;
    outline: none !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

#user-journey-filters input[type="date"]:focus,
.sp-toolbar input[type="date"]:focus {
    border-color: #4f46e5 !important;
    box-shadow: 0 0 0 2px rgba(79, 70, 229, 0.12) !important;
}

/* Select Dropdowns */
#user-journey-filters select,
.sp-toolbar select {
    padding: 0 30px 0 12px !important;
    background-color: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    color: #334155 !important;
    cursor: pointer !important;
    outline: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 14px !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

#user-journey-filters select:focus,
.sp-toolbar select:focus {
    border-color: #4f46e5 !important;
    box-shadow: 0 0 0 2px rgba(79, 70, 229, 0.12) !important;
}

/* Search Text Input */
#user-journey-filters input[type="text"]#journey-search-input,
.sp-toolbar input[type="text"]#journey-search-input {
    padding: 0 14px !important;
    background-color: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    color: #0f172a !important;
    outline: none !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

#user-journey-filters input[type="text"]#journey-search-input:focus,
.sp-toolbar input[type="text"]#journey-search-input:focus {
    border-color: #4f46e5 !important;
    box-shadow: 0 0 0 2px rgba(79, 70, 229, 0.12) !important;
}

/* Filter Button (Secondary Action Button) */
.pulse-analytics-ui .sp-btn-secondary,
.sp-btn-secondary,
#btn-filter-journey {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 0 16px !important;
    background: #ffffff !important;
    color: #334155 !important;
    border: 1px solid #cbd5e1 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
    transition: all 0.15s ease-in-out !important;
}

.pulse-analytics-ui .sp-btn-secondary:hover,
.sp-btn-secondary:hover,
#btn-filter-journey:hover {
    background: #f1f5f9 !important;
    color: #0f172a !important;
    border-color: #94a3b8 !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.06) !important;
}

.pulse-analytics-ui .sp-btn-secondary:active,
.sp-btn-secondary:active,
#btn-filter-journey:active {
    transform: translateY(0);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
}

.pulse-analytics-ui .sp-btn-secondary:disabled,
.sp-btn-secondary:disabled,
#btn-filter-journey:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
    transform: none !important;
}

/* Search Journeys Button (Primary Action Button) */
.pulse-analytics-ui .sp-btn-primary,
.sp-btn-primary,
#btn-search-journeys {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 0 18px !important;
    background: #4f46e5 !important;
    color: #ffffff !important;
    border: 1px solid #4f46e5 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    box-shadow: 0 1px 3px rgba(79, 70, 229, 0.25) !important;
    transition: all 0.15s ease-in-out !important;
}

.pulse-analytics-ui .sp-btn-primary:hover,
.sp-btn-primary:hover,
#btn-search-journeys:hover {
    background: #4338ca !important;
    border-color: #4338ca !important;
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(79, 70, 229, 0.35) !important;
}

.pulse-analytics-ui .sp-btn-primary:active,
.sp-btn-primary:active,
#btn-search-journeys:active {
    transform: translateY(0);
    box-shadow: 0 1px 2px rgba(79, 70, 229, 0.2) !important;
}

.pulse-analytics-ui .sp-btn-primary:disabled,
.sp-btn-primary:disabled,
#btn-search-journeys:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
    transform: none !important;
}

.sp-btn-icon {
    width: 13px !important;
    height: 13px !important;
    stroke-width: 2.2 !important;
    flex-shrink: 0 !important;
    pointer-events: none !important;
}

/* Ensure table-view-list and WP_List_Table never get fixed position from utility CSS */
.table-view-list,
#storepulse-user-journey-list table.table-view-list,
#storepulse-user-journey-list table.fixed,
#storepulse-user-journey-list table.wp-list-table,
#storepulse-user-journey-list .fixed {
    position: static !important;
    table-layout: fixed !important;
}