/* ========================================
   CMS Speakers - Style v2.0.0
   Violet / Lilac Color Palette
   ======================================== */

:root {
    --sp-primary:     #8b5cf6;
    --sp-accent:      #7c3aed;
    --sp-light:       #f5f3ff;
    --sp-border:      #ddd6fe;
    --sp-card-bg:     #ffffff;
    --sp-radius:      12px;
    --sp-shadow:      0 1px 4px rgba(139,92,246,.08);
    --sp-shadow-hover:0 8px 24px rgba(139,92,246,.18);
    --sp-text:        #1e293b;
    --sp-text-muted:  #64748b;
    --sp-header-from: #7c3aed;
    --sp-header-to:   #a855f7;
}

/* Base Reset fuer Speaker-Elemente */
.sp-archive,
.sp-detail,
.sp-hero,
.sp-card,
.sp-grid {
    box-sizing: border-box;
}

/* Card Hover Glow */
.sp-card:hover {
    --sp-shadow-hover: 0 12px 32px rgba(139,92,246,.2);
}

/* Bio HTML-Content Reset */
.sp-bio-html .sun-editor-editable {
    min-height: unset !important;
    height: auto !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    background: transparent !important;
    font-size: .95rem !important;
    color: #374151 !important;
    line-height: 1.75 !important;
}

.sp-bio-html p { color: #374151; line-height: 1.75; margin: 0 0 12px; }
.sp-bio-html ul, .sp-bio-html ol { margin: 0 0 12px 1.4em; }
.sp-bio-html li { margin-bottom: 4px; }
.sp-bio-html h2, .sp-bio-html h3 { color: #1e293b; font-weight: 700; margin: 1em 0 .5em; }
.sp-bio-html a { color: var(--sp-primary); }
.sp-bio-html blockquote { border-left: 4px solid var(--sp-primary); padding-left: 1em; color: #475569; font-style: italic; margin: 1em 0; }

/* Transition helpers */
.sp-card,
.sp-cta-btn,
.sp-social-icon,
.sp-filter-select {
    transition: all .18s ease;
}

/* Active filter highlight */
.sp-filter-select:has(option[value=""]:not(:checked)) {
    border-color: var(--sp-primary);
    background: var(--sp-light);
}

/* Empty state */
.sp-empty p {
    font-size: 1rem;
    color: var(--sp-text-muted);
}

/* Print */
@media print {
    .sp-filter-bar,
    .sp-pagination,
    .sp-cta-btn { display: none !important; }
    .sp-detail-hero { background: #f8fafc !important; color: #1e293b !important; }
}
