/* ==========================================================
   SECTION PMU TIMELINE STYLE
   ========================================================== */

.pmu-timeline-container {
    font-family: var(--font-family-base, 'Montserrat', sans-serif);
    max-width: 800px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    padding: 20px 0; 
    position: relative;
}

/* ĐƯỜNG KẺ DỌC LIỀN MẠCH DUY NHẤT */
.pmu-timeline-container::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 19px;
    width: 2px;
    background-color: var(--color-accent-gold, #C4A887);
    z-index: 1;
}

.pmu-row {
    display: flex;
    margin-bottom: 15px;
    position: relative;
}

/* Xử lý Dấu chấm */
.pmu-dot-col {
    position: relative;
    width: 40px; 
    flex-shrink: 0;
}

.pmu-dot {
    position: absolute;
    top: 35px;
    left: 15px;
    width: 10px;
    height: 10px;
    background-color: var(--color-accent-dark, #000000);
    border-radius: 50%;
    z-index: 2;
}

/* Xử lý Khung Nội Dung */
.pmu-content {
    flex-grow: 1;
    background-color: #F8F4E6;
    border-radius: 4px;
    z-index: 2;
}

.pmu-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 25px;
    cursor: pointer;
    user-select: none;
}

.pmu-header-left {
    display: flex;
    align-items: center;
    gap: 15px;
}

.pmu-header-left img {
    width: 30px;
    height: auto;
    object-fit: contain;
}

.pmu-year {
    font-size: var(--font-size-h2-m, 35px);
    font-weight: var(--font-weight-extrabold, 800);
    color: var(--color-text-dark, #000000);
    line-height: 1;
}

.pmu-toggle {
    width: 26px;
    height: 26px;
    background-color: var(--color-accent-gold, #C4A887);
    color: var(--color-accent-dark, #000000);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    font-weight: var(--font-weight-semibold, 600);
    line-height: 1;
    transition: transform 0.2s ease;
}

.pmu-body {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.3s ease-out;
}

.pmu-row.active .pmu-body {
    grid-template-rows: 1fr;
}

.pmu-body-inner {
    overflow: hidden;
}

.pmu-desc {
    padding: 0 25px 25px 25px;
    margin: 0;
    font-size: var(--font-size-body-l, 16px);
    color: var(--color-text-dark, #333333);
    line-height: 1.5;
    font-weight: var(--font-weight-regular, 400);
}

/* Responsive Mobile */
@media (max-width: 768px) {
    .pmu-year {
        font-size: 25px;
    }
    .pmu-desc {
        font-size: var(--font-size-form, 13px);
    }
    .pmu-header {
        padding: 15px 20px;
    }
    .pmu-desc {
        padding: 0 20px 20px 20px;
    }
    .pmu-dot {
        top: 25px;
    }
}
