body {
    font-family: 'Inter', sans-serif;
    background-color: #F3F4F6;
}
.chart-container {
    position: relative;
    width: 100%;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    height: 350px;
    max-height: 400px;
}
@media (min-width: 768px) {
    .chart-container {
        height: 400px;
    }
}
.timeline-item {
    position: relative;
    padding-left: 2.5rem;
    padding-bottom: 2rem;
    border-left: 2px solid #D1D5DB;
}
.timeline-item:last-child {
    border-left: 2px solid transparent;
    padding-bottom: 0;
}
.timeline-item::before {
    content: '';
    position: absolute;
    left: -0.5625rem;
    top: 0.125rem;
    width: 1.125rem;
    height: 1.125rem;
    background-color: #3B82F6;
    border-radius: 9999px;
    border: 4px solid #F3F4F6;
}
#gemini-modal {
    transition: opacity 0.3s ease-in-out;
}
.lang-btn.active {
    background-color: #3B82F6;
    color: #FFFFFF;
}
.lang-btn.inactive {
    background-color: #E5E7EB;
    color: #374151;
}

