/* Campaigns View Styles - Tema Living/Brands */
/* El offset del sidebar lo aplica #app-container. */
.campaigns-container,
.campaign-detail-container {
    min-height: calc(100vh - 48px);
    padding: 2rem;
    max-width: 1400px;
    margin: 0 auto;
    margin-left: 0;
    background: var(--living-bg-deep, var(--bg-primary));
    padding-top: calc(48px + 2rem);
}

/* En móvil, el sidebar se oculta y el contenido ocupa todo el ancho */
@media (max-width: 768px) {
    .campaigns-container,
    .campaign-detail-container {
        margin-left: 0;
        padding: 1rem;
        padding-top: calc(48px + 1rem);
    }
}

.campaigns-header,
.campaign-detail-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    flex-wrap: wrap;
    gap: 1rem;
}

.campaigns-title,
.campaign-detail-title {
    font-size: 2rem;
    font-weight: 700;
    color: var(--text-primary);
}

.campaigns-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.5rem;
}

.campaign-detail-tabs {
    display: flex;
    gap: 1rem;
    border-bottom: 1px solid var(--border-divider);
    margin-bottom: 2rem;
    flex-wrap: wrap;
}

.campaign-detail-content {
    min-height: 400px;
}

@media (max-width: 768px) {
    .campaigns-container,
    .campaign-detail-container {
        padding: 1rem;
    }
}
