/* ========================================
   CAMPAIGN SHOW - Vue d'ensemble campagne
   ======================================== */

.campaign-show-header {
    margin-bottom: var(--spacing-3xl);
}

.campaign-show-avatar {
    width: 64px;
    height: 64px;
    background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
    border-radius: var(--border-radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: bold;
    font-size: 1.5rem;
}

.campaign-show-title {
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-bold);
    color: var(--text-primary);
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

/* Task #83 : header layout stable avec titre long.
   Le bloc gauche doit pouvoir shrink pour laisser place au CTA.
   Les CTA a droite ne doivent pas se replier sur plusieurs lignes. */
.campaign-show-header-left {
    min-width: 0;
    flex: 1 1 auto;
}

.campaign-show-header-text {
    min-width: 0;
    flex: 1 1 auto;
}

.campaign-show-header-actions .btn {
    white-space: nowrap;
}

/* KPI Cards */
.campaign-show-kpi-icon {
    padding: var(--spacing-sm);
    border-radius: var(--border-radius-md);
    font-size: 1.5rem;
}

.campaign-show-kpi-icon-budget {
    background: rgba(0, 48, 128, 0.1);
    color: var(--color-primary);
}

.campaign-show-kpi-icon-leads {
    background: rgba(57, 191, 239, 0.1);
    color: var(--color-secondary);
}

.campaign-show-kpi-icon-roi {
    background: rgba(40, 167, 69, 0.1);
    color: #28a745;
}

.campaign-show-kpi-icon-conversion {
    background: rgba(255, 193, 7, 0.1);
    color: #ffc107;
}

.campaign-show-kpi-value {
    color: var(--color-primary);
    margin-bottom: var(--spacing-xs);
}

/* Breadcrumb truncation */
.campaign-breadcrumb-truncate {
    max-width: 500px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Min width helper for flex truncation */
.min-width-0 {
    min-width: 0;
}

/* Pending section placeholder */
.campaign-show-pending {
    border-radius: var(--border-radius-md);
}

/* Persona avatar in show page */
.campaign-show-persona-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 0.75rem;
    font-weight: bold;
    flex-shrink: 0;
}

/* Progress bar thin (KPI budget) */
.campaign-show-progress-thin {
    height: 6px;
}

/* Performance Chart placeholder */
.campaign-show-chart-placeholder {
    background: linear-gradient(180deg, rgba(0, 48, 128, 0.05) 0%, rgba(57, 191, 239, 0.05) 100%);
    border-radius: var(--border-radius-md);
    padding: var(--spacing-2xl);
    min-height: 280px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.campaign-show-chart-icon {
    font-size: 3rem;
    opacity: 0.3;
}
