.FooterBanner .FooterBar table {
        width: 1200px;
        margin: 0 auto;
}
.FooterBanner .FooterBar:has(.footer-tanninh) {
        position: relative;
        width: auto;
        /* background: url(https://storage-vnportal.vnpt.vn/gov-lan/7661/h%C3%ACnh%20%E1%BA%A3nh/bg-footer.png) no-repeat center top #0068B4; */
}
.FooterBanner .FooterBar table:has(.footer-tanninh) {
        background: #2157d7;
        width: 100%;
}
.FooterBanner .FooterBar table:has(.footer-tanninh) .UIFooterControl {
        width: 1200px !important;
        margin: 0 auto;
        padding: 30px 0 !important;
        background: url(https://storage-vnportal.vnpt.vn/gov-lan/7661/h%C3%ACnh%20%E1%BA%A3nh/bg-footer.png) no-repeat center top #2157d7;
}
.FooterBanner .FooterBar table:has(.footer-tanninh) * {
        color: white !important;
}
.footer-tanninh {
}
.UIFooterControl {
        color: rgb(0, 112, 192);
        font: 10pt/20px arial;
        margin: 0 auto;
        position: relative;
}
.UIFooterControl .CopyRight {
        padding: 10px 0 0 10px;
}
.UIFooterControl a {
        color: rgb(0, 112, 192);
        font: bold 10pt arial;
}
.UIFooterControl .Design {
        position: absolute;
        right: 10px;
        top: 16px;
}
.footerrow {
        margin-top: 12px !important;
        margin-left: 0 !important;
        text-align: left;
        font-style: italic !important;
}
.footerrow span {
        padding: 0 !important;
}
@media only screen and (max-width: 768px) {
        .UIFooterControl img {
                width:150px !important;
                height: auto !important;
        }
}
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIWebLink_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIOnlineCounter_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIArticleSlider_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIMultiFunction_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIImageCategory_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIArticleSlider_default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIClockSystem_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIClockSystem_default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIShortArticle_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIHotnewsModule_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIMenuListOfSite_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIIFrameSource_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UISingleSearch_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIImageLibrary_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIImageLibrary_home-1,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIAdvertisement_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIGoldCustomer_Default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIArticleSlider_default1,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .ArticleMedia_default,
html:has(.LanguageMenu img.language-button[style*="margin-right: 7px; padding: 2px; border-bottom: 2px solid rgb(255, 235, 59);"]:last-child) .UIServiceCategory_Default
{
        display: none !important;
}
.timeline-wrapper {
        /* THEME MÀU XANH DƯƠNG (#014ff1) */
        --bg-gradient: linear-gradient(180deg, transparent 0%, transparent 100%);
        --line-color: rgb(220 220 220 / 60%);
        --card-bg-normal: #ffffff;
        --card-bg-active: #ffc107;
        --text-color-normal: #333;
        --text-color-active: #002aa6;
        --dot-color-normal: #002aa6;
        --dot-color-active: #ff3b30;
        --pill-bg: #e3f2fd;
        --pill-text: #002aa6;
        --pill-bg-active: #ffc107;
        --pill-text-active: #002aa6;
        font-family: 'Roboto', sans-serif;
        background: var(--bg-gradient);
        width: 100%;
        box-sizing: border-box;
        position: relative;
        margin: 0 auto;
        border-radius: 0px;
        overflow: hidden;
        min-height: 295px;
}
.timeline-wrapper h2 {
        text-align: center;
        color: white;
        margin: 0;
        text-transform: uppercase;
        font-size: 24px;
}
.timeline-track {
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        position: relative;
        padding: 20px 0;
        max-width: 1200px;
        margin: 0 auto;
        background: #ffffff;
}
.timeline-line {
        position: absolute;
        bottom: 88px;
        left: 0;
        right: 0;
        height: 4px;
        background-color: var(--line-color);
        z-index: 1;
        width: 100%;
}
.timeline-item {
        flex: 1;
        position: relative;
        z-index: 2;
        display: flex;
        flex-direction: column;
        align-items: center;
        margin: 0 5px;
}
.timeline-content-wrapper {
        flex: 1;
        display: flex;
        align-items: flex-end;
        justify-content: center;
        width: 100%;
        padding-bottom: 25px;
}
.timeline-content {
        background-color: var(--card-bg-normal);
        color: var(--text-color-normal);
        padding: 12px;
        /* Đã bỏ padding thừa cho nút AI */
        border-radius: 8px;
        box-shadow: 0 4px 8px rgba(0,0,0,0.2);
        font-size: 13px;
        line-height: 1.4;
        text-align: center;
        width: 95%;
        transition: all 0.3s ease;
        box-sizing: border-box;
        max-height: 140px;
        min-height: 140px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        /* Căn giữa nội dung */
        overflow-y: auto;
        position: relative;
        scrollbar-width: thin;
        scrollbar-color: rgba(0, 42, 166, 0.3) transparent;
        border: 4px solid #2157d72e;
}
/* Custom Scrollbar */
.timeline-content::-webkit-scrollbar {
        width: 5px;
}
.timeline-content::-webkit-scrollbar-track {
        background: transparent;
        margin: 3px 0;
}
.timeline-content::-webkit-scrollbar-thumb {
        background-color: rgba(0, 42, 166, 0.2);
        border-radius: 10px;
}
.timeline-content::-webkit-scrollbar-thumb:hover {
        background-color: rgba(0, 42, 166, 0.6);
}
.timeline-item.active .timeline-content {
        scrollbar-color: rgba(0, 42, 166, 0.5) transparent;
}
.timeline-item.active .timeline-content::-webkit-scrollbar-thumb {
        background-color: rgba(0, 42, 166, 0.3);
}
.timeline-item.active .timeline-content::-webkit-scrollbar-thumb:hover {
        background-color: rgba(0, 42, 166, 0.8);
}
.timeline-content p {
        margin: 0;
        width: 100%;
}
/* Dots & Date styles */
.timeline-dot-wrapper {
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 5;
}
.timeline-dot {
        width: 16px;
        height: 16px;
        background-color: var(--dot-color-normal);
        border: 3px solid #fff;
        border-radius: 50%;
        transition: all 0.3s ease;
        box-shadow: 0 2px 5px rgba(0,0,0,0.3);
}
.timeline-date-wrapper {
        height: 50px;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        padding-top: 10px;
}
.timeline-date {
        background-color: var(--pill-bg);
        color: var(--pill-text);
        padding: 6px 15px;
        border-radius: 20px;
        font-weight: 700;
        font-size: 13px;
        box-shadow: 0 2px 4px rgba(0,0,0,0.2);
        transition: all 0.3s ease;
        white-space: nowrap;
}
/* Multi-event dots */
.multi-event-indicator {
        position: absolute;
        top: 5px;
        right: 5px;
        display: flex;
        gap: 3px;
}
.event-dot {
        width: 4px;
        height: 4px;
        border-radius: 50%;
        background-color: #ccc;
        transition: background-color 0.3s;
}
.event-dot.active {
        background-color: #333;
}
.timeline-item.active .event-dot {
        background-color: rgba(0, 42, 166, 0.4);
}
.timeline-item.active .event-dot.active {
        background-color: #002aa6;
}
/* Animations */
@keyframes glow-pulse {
        0% {
                background-color: var(--card-bg-active);
                transform: scale(1.05);
                box-shadow: 0 8px 16px rgba(0,0,0,0.3);
        }
        50% {
                background-color: #ffca28;
                transform: scale(1.08);
                box-shadow: 0 0 20px rgba(255, 255, 255, 0.4);
        }
        100% {
                background-color: var(--card-bg-active);
                transform: scale(1.05);
                box-shadow: 0 8px 16px rgba(0,0,0,0.3);
        }
}
@keyframes dot-ripple {
        0% {
                box-shadow: 0 0 0 0 rgba(255, 59, 48, 0.7);
        }
        70% {
                box-shadow: 0 0 0 10px rgba(255, 59, 48, 0);
        }
        100% {
                box-shadow: 0 0 0 0 rgba(255, 59, 48, 0);
        }
}
@keyframes glow-pulse-date {
        0% {
                background-color: var(--pill-bg-active);
                transform: scale(1.1);
        }
        50% {
                background-color: #ffca28;
                transform: scale(1.15);
                box-shadow: 0 0 15px rgba(255, 255, 255, 0.5);
        }
        100% {
                background-color: var(--pill-bg-active);
                transform: scale(1.1);
        }
}
.timeline-item.active .timeline-dot {
        background-color: var(--dot-color-active);
        width: 24px;
        height: 24px;
        border-width: 4px;
        animation: dot-ripple 2s infinite ease-out;
}
.timeline-item.active .timeline-content {
        color: var(--text-color-active);
        z-index: 10;
        font-weight: 500;
        border: 1px solid rgba(255,255,255,0.3);
        animation: glow-pulse 2.5s infinite ease-in-out;
}
.timeline-item.active .timeline-date {
        color: var(--pill-text-active);
        animation: glow-pulse-date 2.5s infinite ease-in-out;
}
/* Responsive Mobile */
@media (max-width: 768px) {
        .timeline-track {
                flex-direction: column;
                align-items: flex-start;
                padding-left: 20px;
        }
        .timeline-line {
                width: 4px;
                height: 100%;
                left: 29px;
                top: 0;
                bottom: auto;
        }
        .timeline-item {
                flex-direction: row;
                align-items: flex-start;
                width: 100%;
                max-width: 100%;
                margin-bottom: 20px;
        }
        .timeline-content-wrapper {
                order: 2;
                align-items: flex-start;
                padding-bottom: 0;
                padding-left: 15px;
                justify-content: flex-start;
        }
        .timeline-dot-wrapper {
                order: 1;
                width: 20px;
                align-items: flex-start;
                padding-top: 5px;
        }
        .timeline-date-wrapper {
                order: 3;
                width: 100px;
                justify-content: flex-start;
                padding-top: 5px;
                position: absolute;
                top: -25px;
                left: 40px;
                height: auto;
        }
        .timeline-content {
                text-align: left;
                width: 100%;
                justify-content: flex-start;
                padding-bottom: 35px;
        }
        .timeline-date {
                font-size: 11px;
                padding: 2px 8px;
        }
        .multi-event-indicator {
                top: auto;
                bottom: auto;
                right: 10px;
                top: 10px;
        }
}
