/* Conference Data Explorer Styles */

body {
    background-color: #f5f5f5;
}

header {
    border-radius: 0 0 10px 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.card {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
}

.card-header {
    font-weight: 500;
}

/* Highlight card for personalization filter */
.highlight-card {
    border: 2px solid #28a745;
}

.highlight-card .card-body {
    background-color: #f8fff8;
}

/* Personalization match highlight */
.personalization-match {
    border-left-color: #28a745 !important;
    background-color: #f8fff8 !important;
}

.personalization-match .badge.bg-success {
    animation: pulse 2s infinite;
}

.personalization-participant {
    background-color: #d1e7dd !important;
    color: #0f5132 !important;
    border: 1px solid #198754;
    font-weight: 600;
}

.personalization-keyword {
    font-weight: bold;
    color: #198754;
    background-color: #d1e7dd;
    padding: 1px 3px;
    border-radius: 3px;
}

/* Company card styles */
.company-card {
    cursor: pointer;
    transition: all 0.2s ease;
    border-left: 5px solid #6c757d;
    margin-bottom: 10px;
}

.company-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border-left-color: #007bff;
}

.company-card.selected {
    border-left-color: #28a745;
    background-color: #f8f9fa;
}

.company-name {
    font-weight: 600;
    color: #0d6efd;
}

.company-description {
    font-size: 0.9rem;
    color: #6c757d;
}

.company-meta {
    font-size: 0.8rem;
    color: #6c757d;
}

.participant-badge {
    font-size: 0.75rem;
    background-color: #e9ecef;
    color: #495057;
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
    margin-right: 0.5rem;
    margin-bottom: 0.5rem;
    display: inline-block;
}

/* Schedule table styles */
.schedule-day {
    margin-bottom: 30px;
}

.schedule-table {
    border-collapse: separate;
    border-spacing: 0;
}

.schedule-table th {
    background-color: #f8f9fa;
}

.schedule-table tbody tr:hover {
    background-color: #f2f7ff;
}

/* Form styles */
select[multiple] {
    overflow-y: auto;
}

/* Modal styles */
.modal-body {
    max-height: 70vh;
    overflow-y: auto;
}

.modal-xl .modal-body {
    padding: 20px;
}

/* Filter badges */
.filter-badge {
    margin-right: 5px;
    margin-bottom: 5px;
    border-radius: 20px;
}

/* Pulse animation for personalization matches */
@keyframes pulse {
    0% { opacity: 1; }
    50% { opacity: 0.7; }
    100% { opacity: 1; }
} 