.chart-container {
    background: white;
    padding: 40px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    text-align: center;
    font-family: Arial, sans-serif;
}

.chart-container h1 {
    color: #333;
    margin-bottom: 10px;
}

.chart-container svg {
    margin-top: 20px;
    border: 1px solid #eee;
    border-radius: 4px;
}

.chart-container .bar {
    fill: #4CAF50;
    transition: fill 0.2s ease;
}

.chart-container .bar:hover {
    fill: #45a049;
    opacity: 0.8;
}

/* Button row */
.chart-buttons {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin-top: 20px;
}

.chart-container button {
    padding: 10px 20px;
    font-size: 14px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-family: Arial, sans-serif;
}

/* Randomize button */
.chart-container button:first-child {
    background-color: #4CAF50;
    color: white;
}

.chart-container button:first-child:hover {
    background-color: #45a049;
}

/* Download MP4 button */
#record-btn {
    background-color: #1a73e8;
    color: white;
}

#record-btn:hover:not(:disabled) {
    background-color: #1558b0;
}

#record-btn:disabled {
    background-color: #888;
    cursor: not-allowed;
    opacity: 0.85;
}

/* The CSS @keyframes is kept for reference but the live animation
   is now driven by JS requestAnimationFrame so it can be captured. */
@keyframes slideUp {
    from {
        transform: translateY(100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}
