.ac-container {
    display: grid;
    gap: 20px;
    margin: 30px 0;
}

/* Grid Layout */
.ac-container.ac-layout-grid {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}

/* List Layout */
.ac-container.ac-layout-list {
    grid-template-columns: 1fr;
}

.ac-card {
    background-color: var(--ac-card-bg, #ffffff);
    color: var(--ac-text-color, #333333);
    border-radius: 8px;
    overflow: visible;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
    position: relative;
	z-index: 1;
}

.ac-card:hover {
    transform: translateY(-5px);
}

.ac-card-image {
    height: 250px;
    width: 100%;
    object-fit: cover;
    background-color: #1a1a1a;
    overflow: hidden;
	position: relative;
	z-index: 1;
}

.ac-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.ac-card:hover .ac-card-image img {
    transform: scale(1.05);
}

.ac-card-content {
    padding: 15px;
}

.ac-card-name {
    margin: 0 0 5px 0;
    font-size: 1.2em;
}

.ac-card-character {
    font-size: 0.9em;
    font-style: italic;
    margin-bottom: 10px;
    color: var(--ac-text-color, #555555);
}

.ac-card-bio {
    font-size: 0.5em;
    margin-bottom: 10px;
    color: var(--ac-text-color, #333333);
}

/* Modern Style */
.ac-card-style-modern {
    border: none;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

/* Classic Style */
.ac-card-style-classic {
    border: 1px solid #e0e0e0;
    box-shadow: none;
}

/* Minimal Style */
.ac-card-style-minimal {
    background: transparent;
    box-shadow: none;
    border: 1px solid #f0f0f0;
}

.ac-no-actors {
    padding: 15px;
    background-color: #f8f9fa;
    border-left: 4px solid #6c757d;
}

/* Carousel Layout */
.ac-container.ac-layout-carousel {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: 15px;
    padding-bottom: 20px;
}

.ac-container.ac-layout-carousel .ac-card {
    flex: 0 0 250px;
    scroll-snap-align: start;
}

.ac-hover-bio {
    position: absolute;
    bottom: 80%;
    left: 20px;
    right: 0;
    background: rgba(0, 0, 0, 0.9);
    color: #fff;
    padding: 15px;
    border-radius: 8px;
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.3s ease;
    pointer-events: none;
    z-index: 1000;
    max-height: 200px;
    width: 200px;
    overflow: hidden;
}
.ac-container {
	isolation: isolate;
}

.ac-card:hover .ac-hover-bio {
    opacity: 1;
    transform: translateY(0);
}

.ac-bio-excerpt {
    margin-bottom: 10px;
    font-size: 0.85em;
    line-height: 1.5;
}

.ac-upcoming-films {
    font-size: 0.5em;
    color: #ffc107;
}

@media (max-width: 600px) {
    .ac-container.ac-layout-grid {
        grid-template-columns: 1fr;
    }
    
    .ac-card-image {
        height: 200px;
    }
}