/* View Options Styles */

/* View toggle controls */
.view-toggle-controls {
    display: flex;
    align-items: center;
    margin: 10px 0;
    padding: 10px;
    background-color: #f9f9f9;
    border-radius: 5px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.view-toggle-label {
    font-weight: bold;
    margin-right: 15px;
    color: #555;
}

.view-toggle-buttons {
    display: flex;
    gap: 5px;
}

.view-toggle-btn {
    padding: 6px 12px;
    border: 1px solid #ddd;
    background-color: #fff;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 5px;
}

.view-toggle-btn i {
    font-size: 0.9em;
}

.view-toggle-btn:hover {
    background-color: #f0f0f0;
}

.view-toggle-btn.active {
    background-color: #2c3e50;
    color: white;
    border-color: #2c3e50;
}

/* List View Styles */
.leads-list-view {
    margin-top: 15px;
    overflow-x: auto;
}

.leads-table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #e0e0e0;
    background-color: #fff;
}

.leads-table th {
    background-color: #3498db;
    color: white;
    padding: 10px;
    text-align: left;
    font-weight: bold;
    border-bottom: 2px solid #2980b9;
    position: sticky;
    top: 0;
    z-index: 5;
}

.leads-table td {
    padding: 10px;
    border-bottom: 1px solid #e0e0e0;
    vertical-align: middle;
}

.lead-list-row {
    transition: background-color 0.2s;
}

.lead-list-row:hover {
    background-color: #f9f9f9;
}

.lead-name-cell {
    font-weight: bold;
    min-width: 150px;
}

.lead-contact-cell {
    min-width: 180px;
}

.lead-contact-cell div {
    margin-bottom: 4px;
}

.lead-status-cell {
    min-width: 140px;
}

.lead-status-cell select {
    width: 100%;
    padding: 5px;
    border-radius: 4px;
    border: 1px solid #ccc;
}

.lead-actions-cell {
    white-space: nowrap;
    text-align: center;
    min-width: 150px;
}

.lead-actions-cell button {
    margin: 2px;
}

.appointment-info {
    margin-top: 5px;
    font-size: 0.85em;
    color: #666;
}

/* Status view styles */
.leads-status-view {
    display: flex;
    gap: 15px;
    overflow-x: auto;
    padding-bottom: 10px;
    margin-top: 15px;
}

/* Agent My Leads status view - specific adjustment for the 4 columns */
#myLeadTable .leads-status-view {
    flex-wrap: nowrap;
    justify-content: space-between;
    overflow-x: hidden; /* Hide horizontal scrollbar for agent view */
}

/* Special optimization for agent view */
.agent-status-view {
    width: 100%;
    display: flex;
    gap: 10px; /* Slightly reduce gap between columns */
}

.agent-status-view .status-column {
    max-width: none; /* Remove max-width constraint */
}

#myLeadTable .status-column {
    /* For agent view with only 4 columns (New, Contacted, Presented Plan, On Hold) */
    flex: 1 1 calc(25% - 8px);
    min-width: 220px; /* Reduced min-width */
}

.status-column {
    flex: 0 0 300px;
    min-width: 300px;
    background-color: #f7f9fc;
    border-radius: 5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 250px);
}

.status-column-header {
    padding: 10px 15px;
    border-bottom: 1px solid #e0e0e0;
    background-color: #f0f4f8;
    border-radius: 5px 5px 0 0;
    position: sticky;
    top: 0;
    z-index: 5;
}

.status-column-header h3 {
    margin: 0;
    font-size: 1.1em;
    font-weight: bold;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.status-count {
    font-size: 0.9em;
    color: #777;
    font-weight: normal;
}

.status-column-body {
    padding: 10px;
    overflow-y: auto;
    flex-grow: 1;
}

.status-lead-card {
    background-color: white;
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    margin-bottom: 10px;
    padding: 10px;
    transition: transform 0.2s, box-shadow 0.2s;
}

.status-lead-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
}

.status-lead-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 8px;
    flex-wrap: wrap;
}

.status-lead-header h4 {
    margin: 0;
    font-size: 0.95em;
    font-weight: bold;
}

.appointment-tag {
    background-color: #e1f5fe;
    color: #0277bd;
    padding: 3px 6px;
    border-radius: 4px;
    font-size: 0.8em;
    white-space: nowrap;
    margin-top: 5px;
}

.status-lead-details {
    margin-bottom: 10px;
    font-size: 0.85em;
}

.status-lead-details div {
    margin-bottom: 4px;
    color: #555;
}

.status-lead-details i {
    width: 18px;
    color: #777;
    margin-right: 5px;
}

.status-lead-footer {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 10px;
}

.status-lead-footer button {
    padding: 4px 8px;
    font-size: 0.85em;
}

.no-leads-message {
    padding: 20px;
    text-align: center;
    color: #777;
    font-style: italic;
}

/* Admin actions dropdown */
.admin-actions-dropdown {
    position: relative;
    display: inline-block;
}

.admin-actions-dropdown .dropdown-menu {
    display: none;
    position: absolute;
    right: 0;
    background-color: white;
    min-width: 160px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    z-index: 10;
    border-radius: 4px;
    padding: 5px 0;
}

.admin-actions-dropdown:hover .dropdown-menu {
    display: block;
}

.dropdown-item {
    display: block;
    padding: 8px 12px;
    color: #333;
    text-decoration: none;
    font-size: 0.9em;
    cursor: pointer;
}

.dropdown-item:hover {
    background-color: #f5f5f5;
}

.dropdown-item i {
    width: 20px;
    margin-right: 5px;
}

/* Status colors */
.status-column[data-status="New"] .status-column-header {
    background-color: #e3f2fd;
    color: #1565c0;
    border-bottom: 2px solid #1565c0;
}

.status-column[data-status="Contacted"] .status-column-header {
    background-color: #e8f5e9;
    color: #2e7d32;
    border-bottom: 2px solid #2e7d32;
}

.status-column[data-status="Appointment Set"] .status-column-header {
    background-color: #e8eaf6;
    color: #3949ab;
    border-bottom: 2px solid #3949ab;
}

.status-column[data-status="Presented Plan"] .status-column-header {
    background-color: #fff8e1;
    color: #ff8f00;
    border-bottom: 2px solid #ff8f00;
}

.status-column[data-status="Closed Won"] .status-column-header {
    background-color: #e0f2f1;
    color: #00796b;
    border-bottom: 2px solid #00796b;
}

.status-column[data-status="Closed Lost"] .status-column-header {
    background-color: #ffebee;
    color: #c62828;
    border-bottom: 2px solid #c62828;
}

.status-column[data-status="On Hold"] .status-column-header {
    background-color: #f3e5f5;
    color: #7b1fa2;
    border-bottom: 2px solid #7b1fa2;
}



/* Responsive adjustments */
@media (min-width: 1200px) {
    /* For wider screens - optimize the agent My Leads view */
    #myLeadTable .status-column {
        flex: 1;
        min-width: 0; /* Allow columns to shrink below min-width */
    }
}

@media (max-width: 992px) {
    /* Medium screens */
    #myLeadTable .leads-status-view {
        flex-wrap: wrap;
    }
    
    #myLeadTable .status-column {
        flex: 1 1 calc(50% - 10px);
    }
}

@media (max-width: 768px) {
    .leads-status-view {
        flex-direction: column;
        gap: 20px;
    }
    
    .status-column {
        flex: 1;
        width: 100%;
        min-width: auto;
        max-height: none;
    }
    
    #myLeadTable .status-column {
        flex: 1 1 100%;
    }
    
    .view-toggle-controls {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .view-toggle-label {
        margin-bottom: 10px;
    }
    
    .leads-table th, 
    .leads-table td {
        padding: 8px 5px;
        font-size: 0.9em;
    }
    
    .lead-actions-cell button {
        padding: 3px 6px;
        font-size: 0.8em;
    }
}

/* Slide animations for status view */
@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideOut {
    from {
        opacity: 1;
        transform: translateY(0);
    }
    to {
        opacity: 0;
        transform: translateY(20px);
    }
}

.slide-in {
    animation: slideIn 0.3s ease-out forwards;
}

.slide-out {
    animation: slideOut 0.3s ease-in forwards;
}

/* Make sure dragging animation works properly */
.dragging {
    opacity: 0.6;
    cursor: grabbing !important;
}

/* Theme-specific styles for view options */

/* Dark Theme */
body.theme-dark .view-toggle-controls {
    background-color: var(--card-bg);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    border: 1px solid var(--border-color);
}

body.theme-dark .view-toggle-label {
    color: var(--text-color);
}

body.theme-dark .view-toggle-btn {
    background-color: var(--secondary-bg);
    border-color: var(--border-color);
    color: var(--text-color);
}

body.theme-dark .view-toggle-btn:hover {
    background-color: var(--hover-bg);
}

body.theme-dark .view-toggle-btn.active {
    background-color: var(--primary-color);
    color: var(--dark-color);
    border-color: var(--primary-color);
}

/* List View - Dark Theme */
body.theme-dark .leads-list-view {
    color: var(--text-color);
}

body.theme-dark .leads-table {
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

body.theme-dark .leads-table th {
    background-color: var(--secondary-color);
    border-bottom-color: var(--border-color);
}

body.theme-dark .leads-table td {
    border-bottom-color: var(--border-color);
}

body.theme-dark .lead-list-row:hover {
    background-color: var(--hover-bg);
}

body.theme-dark .no-leads-message {
    color: var(--text-light);
}

body.theme-dark .dropdown-menu {
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

body.theme-dark .dropdown-item {
    color: var(--text-color);
}

body.theme-dark .dropdown-item:hover {
    background-color: var(--hover-bg);
}

/* Status View - Dark Theme */
body.theme-dark .status-column {
    background-color: var(--card-bg);
    border: 1px solid var(--border-color);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

body.theme-dark .status-column-header {
    background-color: var(--secondary-bg);
    border-bottom-color: var(--border-color);
}

body.theme-dark .status-column-header h3 {
    color: var(--text-color);
}

body.theme-dark .status-count {
    color: var(--text-light);
}

body.theme-dark .status-lead-card {
    background-color: var(--bg-color);
    border: 1px solid var(--border-color);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

body.theme-dark .status-lead-card:hover {
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
    background-color: var(--hover-bg);
}

body.theme-dark .status-lead-header h4 {
    color: var(--text-color);
}

body.theme-dark .status-lead-details {
    color: var(--text-light);
}

body.theme-dark .appointment-tag {
    background-color: rgba(1, 119, 189, 0.2);
    color: var(--text-color);
}

/* Neon Highlights Theme */
body.theme-neon-highlights .view-toggle-controls {
    background-color: var(--card-bg);
    box-shadow: 0 1px 3px rgba(0, 255, 157, 0.3);
    border: 1px solid var(--border-color);
}

body.theme-neon-highlights .view-toggle-label {
    color: var(--text-color);
}

body.theme-neon-highlights .view-toggle-btn {
    background-color: var(--secondary-bg);
    border-color: var(--border-color);
    color: var(--text-color);
}

body.theme-neon-highlights .view-toggle-btn:hover {
    background-color: var(--hover-bg);
}

body.theme-neon-highlights .view-toggle-btn.active {
    background-color: var(--accent-color);
    color: var(--dark-color);
    border-color: var(--accent-color);
    text-shadow: 0 0 5px rgba(255, 255, 255, 0.7);
}

/* List View - Neon Highlights Theme */
body.theme-neon-highlights .leads-list-view {
    color: var(--text-color);
}

body.theme-neon-highlights .leads-table {
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

body.theme-neon-highlights .leads-table th {
    background-color: var(--primary-color);
    border-bottom-color: var(--border-color);
    color: var(--dark-color);
    text-shadow: 0 0 5px rgba(0, 255, 157, 0.5);
}

body.theme-neon-highlights .leads-table td {
    border-bottom-color: var(--border-color);
}

body.theme-neon-highlights .lead-list-row:hover {
    background-color: var(--hover-bg);
}

body.theme-neon-highlights .no-leads-message {
    color: var(--text-light);
}

body.theme-neon-highlights .dropdown-menu {
    background-color: var(--card-bg);
    border-color: var(--border-color);
    box-shadow: 0 0 10px rgba(0, 255, 157, 0.3);
}

body.theme-neon-highlights .dropdown-item {
    color: var(--text-color);
}

body.theme-neon-highlights .dropdown-item:hover {
    background-color: var(--hover-bg);
}

/* Status View - Neon Highlights Theme */
body.theme-neon-highlights .status-column {
    background-color: var(--card-bg);
    border: 1px solid var(--border-color);
    box-shadow: 0 0 10px rgba(0, 255, 157, 0.2);
}

body.theme-neon-highlights .status-column-header {
    background-color: var(--secondary-bg);
    border-bottom-color: var(--border-color);
}

body.theme-neon-highlights .status-column-header h3 {
    color: var(--text-color);
}

body.theme-neon-highlights .status-count {
    color: var(--text-light);
}

body.theme-neon-highlights .status-lead-card {
    background-color: var(--bg-color);
    border: 1px solid var(--border-color);
    box-shadow: 0 0 5px rgba(0, 255, 157, 0.1);
}

body.theme-neon-highlights .status-lead-card:hover {
    box-shadow: 0 0 10px rgba(0, 255, 157, 0.3);
    background-color: var(--hover-bg);
    transform: translateY(-2px);
}

body.theme-neon-highlights .status-lead-header h4 {
    color: var(--text-color);
}

body.theme-neon-highlights .status-lead-details {
    color: var(--text-light);
}

body.theme-neon-highlights .appointment-tag {
    background-color: rgba(0, 255, 157, 0.1);
    color: var(--primary-color);
}

/* Warm Tones Theme */
body.theme-warm-tones .view-toggle-controls {
    background-color: var(--card-bg);
    box-shadow: 0 1px 3px rgba(255, 111, 97, 0.3);
    border: 1px solid var(--border-color);
}

body.theme-warm-tones .view-toggle-label {
    color: var(--text-color);
}

body.theme-warm-tones .view-toggle-btn {
    background-color: var(--secondary-bg);
    border-color: var(--border-color);
    color: var(--text-color);
}

body.theme-warm-tones .view-toggle-btn:hover {
    background-color: var(--hover-bg);
}

body.theme-warm-tones .view-toggle-btn.active {
    background-color: var(--accent-color);
    color: var(--dark-color);
    border-color: var(--accent-color);
}

/* List View - Warm Tones Theme */
body.theme-warm-tones .leads-list-view {
    color: var(--text-color);
}

body.theme-warm-tones .leads-table {
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

body.theme-warm-tones .leads-table th {
    background-color: var(--secondary-color);
    border-bottom-color: var(--border-color);
    color: var(--text-color);
}

body.theme-warm-tones .leads-table td {
    border-bottom-color: var(--border-color);
}

body.theme-warm-tones .lead-list-row:hover {
    background-color: var(--hover-bg);
}

body.theme-warm-tones .no-leads-message {
    color: var(--text-light);
}

body.theme-warm-tones .dropdown-menu {
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

body.theme-warm-tones .dropdown-item {
    color: var(--text-color);
}

body.theme-warm-tones .dropdown-item:hover {
    background-color: var(--hover-bg);
}

/* Status View - Warm Tones Theme */
body.theme-warm-tones .status-column {
    background-color: var(--card-bg);
    border: 1px solid var(--border-color);
    box-shadow: 0 2px 4px rgba(255, 111, 97, 0.2);
}

body.theme-warm-tones .status-column-header {
    background-color: var(--secondary-bg);
    border-bottom-color: var(--border-color);
}

body.theme-warm-tones .status-column-header h3 {
    color: var(--text-color);
}

body.theme-warm-tones .status-count {
    color: var(--text-light);
}

body.theme-warm-tones .status-lead-card {
    background-color: var(--bg-color);
    border: 1px solid var(--border-color);
    box-shadow: 0 1px 3px rgba(255, 111, 97, 0.1);
}

body.theme-warm-tones .status-lead-card:hover {
    box-shadow: 0 3px 6px rgba(255, 111, 97, 0.2);
    background-color: var(--hover-bg);
}

body.theme-warm-tones .status-lead-header h4 {
    color: var(--text-color);
}

body.theme-warm-tones .status-lead-details {
    color: var(--text-light);
}

body.theme-warm-tones .appointment-tag {
    background-color: rgba(255, 111, 97, 0.1);
    color: var(--secondary-color);
}

/* Muted Pastels Theme */
body.theme-muted-pastels .view-toggle-controls {
    background-color: var(--card-bg);
    box-shadow: 0 1px 3px rgba(168, 218, 220, 0.3);
    border: 1px solid var(--border-color);
}

body.theme-muted-pastels .view-toggle-label {
    color: var(--text-color);
}

body.theme-muted-pastels .view-toggle-btn {
    background-color: var(--secondary-bg);
    border-color: var(--border-color);
    color: var(--text-color);
}

body.theme-muted-pastels .view-toggle-btn:hover {
    background-color: var(--hover-bg);
}

body.theme-muted-pastels .view-toggle-btn.active {
    background-color: var(--accent-color);
    color: var(--dark-color);
    border-color: var(--accent-color);
}

/* List View - Muted Pastels Theme */
body.theme-muted-pastels .leads-list-view {
    color: var(--text-color);
}

body.theme-muted-pastels .leads-table {
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

body.theme-muted-pastels .leads-table th {
    background-color: var(--secondary-color);
    border-bottom-color: var(--border-color);
    color: var(--text-color);
}

body.theme-muted-pastels .leads-table td {
    border-bottom-color: var(--border-color);
}

body.theme-muted-pastels .lead-list-row:hover {
    background-color: var(--hover-bg);
}

body.theme-muted-pastels .no-leads-message {
    color: var(--text-light);
}

body.theme-muted-pastels .dropdown-menu {
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

body.theme-muted-pastels .dropdown-item {
    color: var(--text-color);
}

body.theme-muted-pastels .dropdown-item:hover {
    background-color: var(--hover-bg);
}

/* Status View - Muted Pastels Theme */
body.theme-muted-pastels .status-column {
    background-color: var(--card-bg);
    border: 1px solid var(--border-color);
    box-shadow: 0 2px 4px rgba(168, 218, 220, 0.2);
}

body.theme-muted-pastels .status-column-header {
    background-color: var(--secondary-bg);
    border-bottom-color: var(--border-color);
}

body.theme-muted-pastels .status-column-header h3 {
    color: var(--text-color);
}

body.theme-muted-pastels .status-count {
    color: var(--text-light);
}

body.theme-muted-pastels .status-lead-card {
    background-color: var(--bg-color);
    border: 1px solid var(--border-color);
    box-shadow: 0 1px 3px rgba(168, 218, 220, 0.1);
}

body.theme-muted-pastels .status-lead-card:hover {
    box-shadow: 0 3px 6px rgba(168, 218, 220, 0.2);
    background-color: var(--hover-bg);
}

body.theme-muted-pastels .status-lead-header h4 {
    color: var(--text-color);
}

body.theme-muted-pastels .status-lead-details {
    color: var(--text-light);
}

body.theme-muted-pastels .appointment-tag {
    background-color: rgba(168, 218, 220, 0.1);
    color: var(--secondary-color);
}

/* Fix status colors and buttons for all themes */

/* Status colors for Dark Theme */
body.theme-dark .lead-list-row.status-new,
body.theme-dark .status-column[data-status="New"] .status-column-header {
    background-color: var(--status-new-bg);
}

body.theme-dark .lead-list-row.status-contacted,
body.theme-dark .status-column[data-status="Contacted"] .status-column-header {
    background-color: var(--status-contacted-bg);
}

body.theme-dark .lead-list-row.status-appointment-set,
body.theme-dark .status-column[data-status="Appointment Set"] .status-column-header {
    background-color: var(--status-appointment-set-bg);
}

body.theme-dark .lead-list-row.status-appointment-denied,
body.theme-dark .status-column[data-status="Appointment Denied"] .status-column-header {
    background-color: var(--status-appointment-denied-bg);
}

body.theme-dark .lead-list-row.status-presented-plan,
body.theme-dark .status-column[data-status="Presented Plan"] .status-column-header {
    background-color: var(--status-presented-plan-bg);
}

body.theme-dark .lead-list-row.status-closed-won,
body.theme-dark .status-column[data-status="Closed Won"] .status-column-header {
    background-color: var(--status-closed-won-bg);
}

body.theme-dark .lead-list-row.status-closed-lost,
body.theme-dark .status-column[data-status="Closed Lost"] .status-column-header {
    background-color: var(--status-closed-lost-bg);
}

body.theme-dark .lead-list-row.status-on-hold,
body.theme-dark .status-column[data-status="On Hold"] .status-column-header {
    background-color: var(--status-on-hold-bg);
}

/* Status colors for Neon Highlights Theme */
body.theme-neon-highlights .lead-list-row.status-new,
body.theme-neon-highlights .status-column[data-status="New"] .status-column-header {
    background-color: var(--status-new-bg);
}

body.theme-neon-highlights .lead-list-row.status-contacted,
body.theme-neon-highlights .status-column[data-status="Contacted"] .status-column-header {
    background-color: var(--status-contacted-bg);
}

body.theme-neon-highlights .lead-list-row.status-appointment-set,
body.theme-neon-highlights .status-column[data-status="Appointment Set"] .status-column-header {
    background-color: var(--status-appointment-set-bg);
}

body.theme-neon-highlights .lead-list-row.status-appointment-denied,
body.theme-neon-highlights .status-column[data-status="Appointment Denied"] .status-column-header {
    background-color: var(--status-appointment-denied-bg);
}

body.theme-neon-highlights .lead-list-row.status-presented-plan,
body.theme-neon-highlights .status-column[data-status="Presented Plan"] .status-column-header {
    background-color: var(--status-presented-plan-bg);
}

body.theme-neon-highlights .lead-list-row.status-closed-won,
body.theme-neon-highlights .status-column[data-status="Closed Won"] .status-column-header {
    background-color: var(--status-closed-won-bg);
}

body.theme-neon-highlights .lead-list-row.status-closed-lost,
body.theme-neon-highlights .status-column[data-status="Closed Lost"] .status-column-header {
    background-color: var(--status-closed-lost-bg);
}

body.theme-neon-highlights .lead-list-row.status-on-hold,
body.theme-neon-highlights .status-column[data-status="On Hold"] .status-column-header {
    background-color: var(--status-on-hold-bg);
}

/* Status colors for Warm Tones Theme */
body.theme-warm-tones .lead-list-row.status-new,
body.theme-warm-tones .status-column[data-status="New"] .status-column-header {
    background-color: var(--status-new-bg);
}

body.theme-warm-tones .lead-list-row.status-contacted,
body.theme-warm-tones .status-column[data-status="Contacted"] .status-column-header {
    background-color: var(--status-contacted-bg);
}

body.theme-warm-tones .lead-list-row.status-appointment-set,
body.theme-warm-tones .status-column[data-status="Appointment Set"] .status-column-header {
    background-color: var(--status-appointment-set-bg);
}

body.theme-warm-tones .lead-list-row.status-appointment-denied,
body.theme-warm-tones .status-column[data-status="Appointment Denied"] .status-column-header {
    background-color: var(--status-appointment-denied-bg);
}

body.theme-warm-tones .lead-list-row.status-presented-plan,
body.theme-warm-tones .status-column[data-status="Presented Plan"] .status-column-header {
    background-color: var(--status-presented-plan-bg);
}

body.theme-warm-tones .lead-list-row.status-closed-won,
body.theme-warm-tones .status-column[data-status="Closed Won"] .status-column-header {
    background-color: var(--status-closed-won-bg);
}

body.theme-warm-tones .lead-list-row.status-closed-lost,
body.theme-warm-tones .status-column[data-status="Closed Lost"] .status-column-header {
    background-color: var(--status-closed-lost-bg);
}

body.theme-warm-tones .lead-list-row.status-on-hold,
body.theme-warm-tones .status-column[data-status="On Hold"] .status-column-header {
    background-color: var(--status-on-hold-bg);
}

/* Status colors for Muted Pastels Theme */
body.theme-muted-pastels .lead-list-row.status-new,
body.theme-muted-pastels .status-column[data-status="New"] .status-column-header {
    background-color: var(--status-new-bg);
}

body.theme-muted-pastels .lead-list-row.status-contacted,
body.theme-muted-pastels .status-column[data-status="Contacted"] .status-column-header {
    background-color: var(--status-contacted-bg);
}

body.theme-muted-pastels .lead-list-row.status-appointment-set,
body.theme-muted-pastels .status-column[data-status="Appointment Set"] .status-column-header {
    background-color: var(--status-appointment-set-bg);
}

body.theme-muted-pastels .lead-list-row.status-appointment-denied,
body.theme-muted-pastels .status-column[data-status="Appointment Denied"] .status-column-header {
    background-color: var(--status-appointment-denied-bg);
}

body.theme-muted-pastels .lead-list-row.status-presented-plan,
body.theme-muted-pastels .status-column[data-status="Presented Plan"] .status-column-header {
    background-color: var(--status-presented-plan-bg);
}

body.theme-muted-pastels .lead-list-row.status-closed-won,
body.theme-muted-pastels .status-column[data-status="Closed Won"] .status-column-header {
    background-color: var(--status-closed-won-bg);
}

body.theme-muted-pastels .lead-list-row.status-closed-lost,
body.theme-muted-pastels .status-column[data-status="Closed Lost"] .status-column-header {
    background-color: var(--status-closed-lost-bg);
}

body.theme-muted-pastels .lead-list-row.status-on-hold,
body.theme-muted-pastels .status-column[data-status="On Hold"] .status-column-header {
    background-color: var(--status-on-hold-bg);
}

/* Fix buttons for all dark themes */
body.theme-dark .btn-primary,
body.theme-neon-highlights .btn-primary,
body.theme-warm-tones .btn-primary,
body.theme-muted-pastels .btn-primary {
    background-color: var(--primary-color);
    color: var(--dark-color);
    border-color: var(--primary-color);
}

body.theme-dark .btn-primary:hover,
body.theme-neon-highlights .btn-primary:hover,
body.theme-warm-tones .btn-primary:hover,
body.theme-muted-pastels .btn-primary:hover {
    background-color: var(--primary-color);
    opacity: 0.9;
    color: var(--dark-color);
}

body.theme-dark .btn-info,
body.theme-neon-highlights .btn-info,
body.theme-warm-tones .btn-info,
body.theme-muted-pastels .btn-info {
    background-color: var(--secondary-color);
    color: var(--text-color);
    border-color: var(--secondary-color);
}

body.theme-dark .btn-info:hover,
body.theme-neon-highlights .btn-info:hover,
body.theme-warm-tones .btn-info:hover,
body.theme-muted-pastels .btn-info:hover {
    background-color: var(--secondary-color);
    opacity: 0.9;
}

body.theme-dark .btn-success,
body.theme-neon-highlights .btn-success,
body.theme-warm-tones .btn-success,
body.theme-muted-pastels .btn-success {
    background-color: var(--success-color);
    color: var(--dark-color);
    border-color: var(--success-color);
}

body.theme-dark .btn-success:hover,
body.theme-neon-highlights .btn-success:hover,
body.theme-warm-tones .btn-success:hover,
body.theme-muted-pastels .btn-success:hover {
    background-color: var(--success-color);
    opacity: 0.9;
}

body.theme-dark .btn-warning,
body.theme-neon-highlights .btn-warning,
body.theme-warm-tones .btn-warning,
body.theme-muted-pastels .btn-warning {
    background-color: var(--warning-color);
    color: var(--dark-color);
    border-color: var(--warning-color);
}

body.theme-dark .btn-warning:hover,
body.theme-neon-highlights .btn-warning:hover,
body.theme-warm-tones .btn-warning:hover,
body.theme-muted-pastels .btn-warning:hover {
    background-color: var(--warning-color);
    opacity: 0.9;
}

body.theme-dark .btn-danger,
body.theme-neon-highlights .btn-danger,
body.theme-warm-tones .btn-danger,
body.theme-muted-pastels .btn-danger {
    background-color: var(--danger-color);
    color: var(--text-color);
    border-color: var(--danger-color);
}

body.theme-dark .btn-danger:hover,
body.theme-neon-highlights .btn-danger:hover,
body.theme-warm-tones .btn-danger:hover,
body.theme-muted-pastels .btn-danger:hover {
    background-color: var(--danger-color);
    opacity: 0.9;
}

body.theme-dark .btn-secondary,
body.theme-neon-highlights .btn-secondary,
body.theme-warm-tones .btn-secondary,
body.theme-muted-pastels .btn-secondary {
    background-color: var(--light-color);
    color: var(--text-color);
    border-color: var(--border-color);
}

body.theme-dark .btn-secondary:hover,
body.theme-neon-highlights .btn-secondary:hover,
body.theme-warm-tones .btn-secondary:hover,
body.theme-muted-pastels .btn-secondary:hover {
    background-color: var(--hover-bg);
}

/* Status select in list view */
body.theme-dark .lead-status-cell select,
body.theme-neon-highlights .lead-status-cell select,
body.theme-warm-tones .lead-status-cell select,
body.theme-muted-pastels .lead-status-cell select {
    background-color: var(--input-bg);
    color: var(--text-color);
    border-color: var(--border-color);
}

body.theme-dark .lead-status-cell select:focus,
body.theme-neon-highlights .lead-status-cell select:focus,
body.theme-warm-tones .lead-status-cell select:focus,
body.theme-muted-pastels .lead-status-cell select:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.2rem rgba(var(--primary-rgb), 0.25);
}

/* Fix table headers for all themes with better contrast */
body.theme-dark .leads-table th,
body.theme-neon-highlights .leads-table th,
body.theme-warm-tones .leads-table th,
body.theme-muted-pastels .leads-table th {
    color: var(--text-color);
    background-color: var(--secondary-bg);
    border-bottom: 2px solid var(--border-color);
}

/* Improve lead cards in status view for all themes */

/* Common improvements for all themes */
.status-lead-card {
    transition: transform 0.2s, box-shadow 0.2s, background-color 0.2s;
    position: relative;
    border-radius: 6px;
    overflow: hidden;
}

.status-lead-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background-color: currentColor;
    opacity: 0.7;
}

.status-lead-card:hover {
    transform: translateY(-2px);
}

.status-lead-header {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 8px;
    position: relative;
    padding-bottom: 4px;
}

.status-lead-header::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--border-color);
    opacity: 0.3;
}

.status-lead-details {
    margin-bottom: 10px;
}

.status-lead-details div {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}

.status-lead-details i {
    width: 16px;
    margin-right: 5px;
    opacity: 0.8;
}

/* Theme-specific improvements */
body.theme-dark .status-lead-card::before {
    opacity: 0.7;
}

body.theme-dark .status-lead-card.status-new::before { 
    background-color: #888888; 
}

body.theme-dark .status-lead-card.status-contacted::before { 
    background-color: #4a86e8; 
}

body.theme-dark .status-lead-card.status-appointment-set::before { 
    background-color: #6aa84f; 
}

body.theme-dark .status-lead-card.status-appointment-denied::before { 
    background-color: #cc0000; 
}

body.theme-dark .status-lead-card.status-presented-plan::before { 
    background-color: #f1c232; 
}

body.theme-dark .status-lead-card.status-closed-won::before { 
    background-color: #38761d; 
}

body.theme-dark .status-lead-card.status-closed-lost::before { 
    background-color: #990000; 
}

body.theme-dark .status-lead-card.status-on-hold::before { 
    background-color: #666666; 
}

body.theme-neon-highlights .status-lead-card::before {
    opacity: 0.8;
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.5);
}

body.theme-neon-highlights .status-lead-card.status-new::before { 
    background-color: #888888; 
}

body.theme-neon-highlights .status-lead-card.status-contacted::before { 
    background-color: #00DDFF; 
}

body.theme-neon-highlights .status-lead-card.status-appointment-set::before { 
    background-color: #00FF99; 
}

body.theme-neon-highlights .status-lead-card.status-appointment-denied::before { 
    background-color: #FF0066; 
}

body.theme-neon-highlights .status-lead-card.status-presented-plan::before { 
    background-color: #FFFF00; 
}

body.theme-neon-highlights .status-lead-card.status-closed-won::before { 
    background-color: #00FF99; 
}

body.theme-neon-highlights .status-lead-card.status-closed-lost::before { 
    background-color: #FF0066; 
}

body.theme-neon-highlights .status-lead-card.status-on-hold::before { 
    background-color: #BBBBBB; 
}

body.theme-warm-tones .status-lead-card::before {
    opacity: 0.8;
}

body.theme-warm-tones .status-lead-card.status-new::before { 
    background-color: #A8A8A8; 
}

body.theme-warm-tones .status-lead-card.status-contacted::before { 
    background-color: #FF8C42; 
}

body.theme-warm-tones .status-lead-card.status-appointment-set::before { 
    background-color: #FF6F61; 
}

body.theme-warm-tones .status-lead-card.status-appointment-denied::before { 
    background-color: #B33951; 
}

body.theme-warm-tones .status-lead-card.status-presented-plan::before { 
    background-color: #DAA520; 
}

body.theme-warm-tones .status-lead-card.status-closed-won::before { 
    background-color: #7d9b76; 
}

body.theme-warm-tones .status-lead-card.status-closed-lost::before { 
    background-color: #B33951; 
}

body.theme-warm-tones .status-lead-card.status-on-hold::before { 
    background-color: #8A8A8A; 
}

body.theme-muted-pastels .status-lead-card::before {
    opacity: 0.8;
}

body.theme-muted-pastels .status-lead-card.status-new::before { 
    background-color: #B8B8B8; 
}

body.theme-muted-pastels .status-lead-card.status-contacted::before { 
    background-color: #A8DADC; 
}

body.theme-muted-pastels .status-lead-card.status-appointment-set::before { 
    background-color: #A8D8B9; 
}

body.theme-muted-pastels .status-lead-card.status-appointment-denied::before { 
    background-color: #B39CD0; 
}

body.theme-muted-pastels .status-lead-card.status-presented-plan::before { 
    background-color: #FFC1CC; 
}

body.theme-muted-pastels .status-lead-card.status-closed-won::before { 
    background-color: #A8D8B9; 
}

body.theme-muted-pastels .status-lead-card.status-closed-lost::before { 
    background-color: #B39CD0; 
}

body.theme-muted-pastels .status-lead-card.status-on-hold::before { 
    background-color: #C0C0C0; 
}

/* Improve appointment tags and status indicators */
.appointment-tag, .status-changed-tag {
    padding: 3px 6px;
    border-radius: 4px;
    font-size: 0.8em;
    display: inline-flex;
    align-items: center;
    margin-top: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.appointment-tag i, .status-changed-tag i {
    margin-right: 3px;
}

/* Status-specific styles for tags */
body.theme-dark .appointment-tag,
body.theme-neon-highlights .appointment-tag,
body.theme-warm-tones .appointment-tag,
body.theme-muted-pastels .appointment-tag {
    background-color: rgba(var(--primary-rgb), 0.2);
    color: var(--primary-color);
}

body.theme-dark .status-changed-tag,
body.theme-neon-highlights .status-changed-tag,
body.theme-warm-tones .status-changed-tag,
body.theme-muted-pastels .status-changed-tag {
    background-color: rgba(var(--primary-rgb), 0.15);
    color: var(--text-light);
} 