﻿

/* ========== hero-banner.css ========== */
/**
 * Hero Banner Styles
 */

.hero-banner-wrapper {
    width: 100%;
    margin: 0;
    padding: 0;
}

.hero-banner-container {
    max-width: 980px;
    margin: 0 auto;
    padding: 0;
}

/* Single Banner */
.banner-image {
    width: 100%;
    height: auto;
    display: block;
}

.banner-link {
    display: block;
}

/* Banner Slider */
.banner-slider {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.slider-wrapper {
    display: flex;
    transition: transform 0.5s ease;
}

.slide-item {
    min-width: 100%;
    flex-shrink: 0;
}

.slide-item img {
    width: 100%;
    height: auto;
    display: block;
}

/* Slider Navigation */
.slider-nav {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
    padding: 0 20px;
    pointer-events: none;
}

.slider-prev,
.slider-next {
    background: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    pointer-events: all;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s;
}

.slider-prev:hover,
.slider-next:hover {
    background: rgba(0, 0, 0, 0.7);
}

/* Slider Dots */
.slider-dots {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
}

.slider-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    border: 2px solid white;
    cursor: pointer;
    transition: background 0.3s;
}

.slider-dot.active {
    background: white;
}

/* Mobile Responsive */
@media (max-width: 767px) {
    .hero-banner-container {
        max-width: 100%;
    }
    
    .slider-nav {
        padding: 0 10px;
    }
    
    .slider-prev,
    .slider-next {
        width: 35px;
        height: 35px;
    }
    
    .slider-dots {
        bottom: 10px;
    }
    
    .slider-dot {
        width: 10px;
        height: 10px;
    }
}

/* ========== navigation-enhanced.css ========== */
/**
 * Enhanced Navigation Styles
 * @package SoiCauPro
 */

/* Header vá»›i gradient Ä‘áº¹p */
.site-header {
    background: linear-gradient(135deg, #c8232c 0%, #e74c3c 100%);
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.header-top {
    background: rgba(255,255,255,0.05);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

/* Main Navigation vá»›i mÃ u ná»•i báº­t */
.main-navigation {
    background: linear-gradient(90deg, #2c3e50 0%, #34495e 100%);
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    position: relative;
}

.main-navigation .nav-menu {
    display: flex;
    justify-content: center;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
}

.main-navigation .nav-menu li {
    position: relative;
    border: none;
}

.main-navigation .nav-menu a {
    display: inline-block;
    padding: 15px 20px;
    color: #ffffff;
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    text-transform: uppercase;
    transition: all 0.3s ease;
    position: relative;
}

.main-navigation .nav-menu a::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 3px;
    background: linear-gradient(90deg, #ffd700, #ffed4e);
    transform: translateX(-50%);
    transition: width 0.3s ease;
}

.main-navigation .nav-menu a:hover {
    color: #ffd700;
    background: rgba(255,255,255,0.1);
}

.main-navigation .nav-menu a:hover::before {
    width: 80%;
}

.main-navigation .nav-menu .current-menu-item a,
.main-navigation .nav-menu .current_page_item a {
    background: rgba(255,215,0,0.15);
    color: #ffd700;
}

.main-navigation .nav-menu .current-menu-item a::before,
.main-navigation .nav-menu .current_page_item a::before {
    width: 80%;
}

/* Quick Menu Bar vá»›i mÃ u sáº¯c rá»±c rá»¡ */
.quick-menu-bar {
    background: linear-gradient(135deg, #f5f5f5 0%, #e8e8e8 100%);
    padding: 10px 0;
    border-bottom: 2px solid #ddd;
}

.quick-menu {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
}

.quick-menu-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    position: relative;
    overflow: hidden;
}

.quick-menu-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
    transition: left 0.5s;
}

.quick-menu-item:hover::before {
    left: 100%;
}

/* MÃ u sáº¯c cho tá»«ng menu item */
.quick-menu-item.soi-cau {
    background: linear-gradient(135deg, #f39c12 0%, #e67e22 100%);
    color: white;
}

.quick-menu-item.soi-cau:hover {
    background: linear-gradient(135deg, #e67e22 0%, #d35400 100%);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(230,126,34,0.4);
}

.quick-menu-item.thong-ke {
    background: linear-gradient(135deg, #27ae60 0%, #16a085 100%);
    color: white;
}

.quick-menu-item.thong-ke:hover {
    background: linear-gradient(135deg, #16a085 0%, #1abc9c 100%);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(26,188,156,0.4);
}

.quick-menu-item.ket-qua {
    background: linear-gradient(135deg, #8e44ad 0%, #9b59b6 100%);
    color: white;
}

.quick-menu-item.ket-qua:hover {
    background: linear-gradient(135deg, #9b59b6 0%, #a569bd 100%);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(155,89,182,0.4);
}

.quick-menu-item.quay-thu {
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
    color: white;
}

.quick-menu-item.quay-thu:hover {
    background: linear-gradient(135deg, #c0392b 0%, #a93226 100%);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(192,57,43,0.4);
}

/* Icon styles */
.quick-menu-icon {
    font-size: 18px;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
}

/* Mobile Bottom Navigation mÃ u sáº¯c */
.mobile-bottom-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(180deg, #2c3e50 0%, #1a252f 100%);
    display: flex;
    justify-content: space-around;
    align-items: center;
    height: 60px;
    box-shadow: 0 -2px 10px rgba(0,0,0,0.2);
    z-index: 1000;
}

.mobile-bottom-nav .nav-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #bdc3c7;
    padding: 8px 5px;
    transition: all 0.3s ease;
    position: relative;
}

.mobile-bottom-nav .nav-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 3px;
    background: linear-gradient(90deg, #ffd700, #ffed4e);
    transition: width 0.3s ease;
}

.mobile-bottom-nav .nav-item:active,
.mobile-bottom-nav .nav-item.active {
    color: #ffd700;
}

.mobile-bottom-nav .nav-item:active::before,
.mobile-bottom-nav .nav-item.active::before {
    width: 80%;
}

.mobile-bottom-nav .nav-icon {
    font-size: 20px;
    margin-bottom: 3px;
}

.mobile-bottom-nav span {
    font-size: 11px;
    font-weight: 500;
}

/* Desktop enhancements */
@media (min-width: 768px) {
    .main-navigation {
        display: block !important;
        position: static;
        visibility: visible !important;
        opacity: 1 !important;
    }
    
    .quick-menu-item {
        padding: 12px 25px;
        font-size: 15px;
    }
    
    .quick-menu-icon {
        font-size: 20px;
    }
    
    .mobile-bottom-nav {
        display: none;
    }
}

/* Animation on page load */
@keyframes slideDown {
    from {
        transform: translateY(-100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* Animation disabled for mobile compatibility
@media (min-width: 768px) {
    .main-navigation {
        animation: slideDown 0.5s ease;
    }
} */

.quick-menu-item {
    animation: fadeInUp 0.6s ease;
    animation-fill-mode: both;
}

.quick-menu-item:nth-child(1) { animation-delay: 0.1s; }
.quick-menu-item:nth-child(2) { animation-delay: 0.2s; }
.quick-menu-item:nth-child(3) { animation-delay: 0.3s; }
.quick-menu-item:nth-child(4) { animation-delay: 0.4s; }

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ========== card-system.css ========== */
/**
 * Card Design System
 * @package SoiCauPro
 */

/* ========================================
   BASE CARD STYLES
   ======================================== */

/* Card cÆ¡ báº£n */
.card {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    transition: all 0.3s ease;
    margin-bottom: 20px;
    position: relative;
}

.card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    transform: translateY(-2px);
}

/* Card Header */
.card-header {
    padding: 15px 20px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #ffffff;
    font-weight: 600;
    font-size: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.card-header-gradient-red {
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
}

.card-header-gradient-blue {
    background: linear-gradient(135deg, #3498db 0%, #2980b9 100%);
}

.card-header-gradient-green {
    background: linear-gradient(135deg, #27ae60 0%, #16a085 100%);
}

.card-header-gradient-orange {
    background: linear-gradient(135deg, #f39c12 0%, #e67e22 100%);
}

/* Card Body */
.card-body {
    padding: 20px;
}

.card-body-compact {
    padding: 15px;
}

/* Card Footer */
.card-footer {
    padding: 15px 20px;
    background: #f8f9fa;
    border-top: 1px solid #e9ecef;
}

/* ========================================
   CARD VARIATIONS
   ======================================== */

/* Card vá»›i áº£nh */
.card-image {
    position: relative;
    overflow: hidden;
    height: 200px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

.card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.card:hover .card-image img {
    transform: scale(1.05);
}

/* Card badge */
.card-badge {
    position: absolute;
    top: 15px;
    right: 15px;
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
    color: #ffffff;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(231, 76, 60, 0.3);
    z-index: 10;
}

.card-badge-new {
    background: linear-gradient(135deg, #f39c12 0%, #e67e22 100%);
    animation: pulse 2s infinite;
}

.card-badge-hot {
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
    animation: pulse 2s infinite;
}

/* Card vá»›i icon */
.card-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 24px;
    margin-bottom: 15px;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
}

/* ========================================
   Káº¾T QUáº¢ Xá»” Sá» CARDS
   ======================================== */

.result-card {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    margin-bottom: 20px;
}

.result-card-header {
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
    color: #ffffff;
    padding: 15px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.result-card-title {
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
}

.result-card-date {
    font-size: 14px;
    opacity: 0.9;
}

.result-card-body {
    padding: 20px;
    background: #fafafa;
}

.result-numbers {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin: 20px 0;
}

.result-number {
    width: 45px;
    height: 45px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
    animation: bounceIn 0.5s ease;
}

.result-number-special {
    width: 55px;
    height: 55px;
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
    font-size: 22px;
    box-shadow: 0 4px 16px rgba(231, 76, 60, 0.4);
}

/* ========================================
   SOI Cáº¦U CARDS
   ======================================== */

.soicau-card {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    position: relative;
}

.soicau-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    transform: translateY(-4px);
}

.soicau-card-header {
    position: relative;
    height: 180px;
    background: linear-gradient(135deg, #f39c12 0%, #e67e22 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.soicau-card-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><text y="50" font-size="100" fill="white" opacity="0.1">ðŸŽ²</text></svg>');
    background-size: 50px;
    opacity: 0.1;
}

.soicau-card-content {
    padding: 20px;
}

.soicau-card-title {
    font-size: 18px;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 10px;
    line-height: 1.4;
}

.soicau-card-meta {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
    font-size: 13px;
    color: #7f8c8d;
}

.soicau-card-meta-item {
    display: flex;
    align-items: center;
    gap: 5px;
}

.soicau-card-excerpt {
    color: #5a6c7d;
    line-height: 1.6;
    margin-bottom: 15px;
}

.soicau-card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 15px;
    border-top: 1px solid #ecf0f1;
}

.soicau-card-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #3498db;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
}

.soicau-card-link:hover {
    color: #2980b9;
    gap: 8px;
}

/* ========================================
   THá»NG KÃŠ CARDS
   ======================================== */

.stats-card {
    background: #ffffff;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.stats-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #667eea 0%, #764ba2 100%);
}

.stats-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    transform: translateY(-2px);
}

.stats-card-icon {
    width: 70px;
    height: 70px;
    margin: 0 auto 15px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 28px;
    box-shadow: 0 4px 16px rgba(102, 126, 234, 0.3);
}

.stats-card-value {
    font-size: 32px;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 5px;
}

.stats-card-label {
    font-size: 14px;
    color: #7f8c8d;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.stats-card-trend {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-top: 10px;
    padding: 5px 12px;
    background: #e8f8f5;
    color: #27ae60;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
}

.stats-card-trend.down {
    background: #fdedec;
    color: #e74c3c;
}

/* ========================================
   WIDGET CARDS
   ======================================== */

.widget-card {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    margin-bottom: 20px;
}

.widget-card-header {
    padding: 15px 20px;
    background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
    color: #ffffff;
    font-size: 16px;
    font-weight: 600;
    position: relative;
}

.widget-card-header::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 20px;
    width: 40px;
    height: 3px;
    background: #f39c12;
}

.widget-card-body {
    padding: 20px;
}

.widget-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.widget-list-item {
    padding: 12px 0;
    border-bottom: 1px solid #ecf0f1;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: all 0.3s ease;
}

.widget-list-item:last-child {
    border-bottom: none;
}

.widget-list-item:hover {
    padding-left: 10px;
    background: #f8f9fa;
    margin: 0 -20px;
    padding-left: 30px;
    padding-right: 20px;
}

/* ========================================
   QUICK ACTION CARDS
   ======================================== */

.action-card {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 12px;
    padding: 25px;
    color: #ffffff;
    text-align: center;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    cursor: pointer;
}

.action-card::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
    animation: rotate 20s linear infinite;
}

.action-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(102, 126, 234, 0.4);
}

.action-card-icon {
    font-size: 48px;
    margin-bottom: 15px;
    opacity: 0.9;
}

.action-card-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
}

.action-card-description {
    font-size: 14px;
    opacity: 0.9;
    line-height: 1.5;
}

/* ========================================
   GRID LAYOUTS
   ======================================== */

.card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    margin-bottom: 30px;
}

.card-grid-2 {
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}

.card-grid-3 {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}

.card-grid-4 {
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
}

/* ========================================
   ANIMATIONS
   ======================================== */

@keyframes bounceIn {
    0% {
        transform: scale(0.3);
        opacity: 0;
    }
    50% {
        transform: scale(1.05);
    }
    70% {
        transform: scale(0.9);
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 768px) {
    .card {
        border-radius: 8px;
        margin-bottom: 15px;
    }
    
    .card-header,
    .card-footer {
        padding: 12px 15px;
    }
    
    .card-body {
        padding: 15px;
    }
    
    .card-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .stats-card-value {
        font-size: 28px;
    }
    
    .result-number {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }
    
    .result-number-special {
        width: 48px;
        height: 48px;
        font-size: 20px;
    }
}

@media (max-width: 480px) {
    .soicau-card-header {
        height: 150px;
    }
    
    .action-card {
        padding: 20px;
    }
    
    .action-card-icon {
        font-size: 36px;
    }
    
    .widget-list-item:hover {
        margin: 0 -15px;
        padding-left: 25px;
        padding-right: 15px;
    }
}

/* ========================================
   UTILITY CLASSES
   ======================================== */

.card-shadow-sm {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.card-shadow-md {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.card-shadow-lg {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.card-shadow-xl {
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
}

.card-border-top-primary {
    border-top: 4px solid #667eea;
}

.card-border-top-success {
    border-top: 4px solid #27ae60;
}

.card-border-top-warning {
    border-top: 4px solid #f39c12;
}

.card-border-top-danger {
    border-top: 4px solid #e74c3c;
}

/* ========== layout-fix.css ========== */
/**
 * Layout Fix CSS
 * Fix banner vÃ  header khÃ´ng bá»‹ trÃ n ra 2 bÃªn trÃªn PC
 * @package SoiCauPro
 */

/* ========================================
   CONTAINER CONSTRAINTS - CENTERED LAYOUT
   ======================================== */

/* Centered layout vá»›i max-width */
.site {
    width: 100%;
    overflow-x: hidden;
}

/* Header Container - Centered with same width as content */
.site-header {
    width: 100%;
    display: flex;
    justify-content: center;
}

.site-header > * {
    width: 100%;
    max-width: 1100px;
    background: linear-gradient(135deg, #c8232c 0%, #e74c3c 100%);
}

.site-header .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
    background: transparent;
}

/* Main Navigation Container - Centered with same width as content */
.main-navigation {
    width: 100%;
    display: flex;
    justify-content: center;
}

.main-navigation > * {
    width: 100%;
    max-width: 1100px;
    background: linear-gradient(90deg, #2c3e50 0%, #34495e 100%);
}

.main-navigation .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
    background: transparent;
}

/* Quick Menu Bar Container - Centered with same width as content */
.quick-menu-bar {
    width: 100%;
    display: flex;
    justify-content: center;
    background: transparent;
    padding: 10px 0;
}

.quick-menu-bar > * {
    width: 100%;
    max-width: 1100px;
}

.quick-menu-bar .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
    background: linear-gradient(135deg, #f5f5f5 0%, #e8e8e8 100%);
    border-radius: 8px;
}

/* ========================================
   HERO BANNER - CENTERED
   ======================================== */

/* Hero Banner Section - Centered on Desktop */
@media (min-width: 1200px) {
    .hero-banner-section {
        width: 100%;
        margin-bottom: 0;
    }
    
    .hero-banner-section .hero-banner,
    .hero-banner-section .hero-banner-placeholder,
    .hero-banner-section .hero-banner-image,
    .hero-banner-section .hero-slider-wrapper {
        max-width: 1100px;
        margin: 0 auto;
        border-radius: 0;
        overflow: hidden;
    }
}

/* Hero Banner Section - Tablet to Desktop */
@media (min-width: 768px) and (max-width: 1199px) {
    .hero-banner-section {
        padding: 15px;
    }
    
    .hero-banner-section .hero-banner,
    .hero-banner-section .hero-banner-placeholder,
    .hero-banner-section .hero-banner-image {
        border-radius: 8px;
        overflow: hidden;
    }
}

/* Hero Banner Section - Mobile */
@media (max-width: 767px) {
    .hero-banner-section {
        width: 100%;
        padding: 0;
    }
    
    .hero-banner-section .hero-banner,
    .hero-banner-section .hero-banner-placeholder,
    .hero-banner-section .hero-banner-image {
        border-radius: 0;
    }
}

/* ========================================
   PAGE CONTENT CONSTRAINTS
   ======================================== */

/* Main Content Area - Centered */
.site-content {
    width: 100%;
    padding: 20px 0;
}

.site-content .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Single Column Layout */
.single-column-layout {
    max-width: 100%;
}

/* ========================================
   FOOTER - CENTERED
   ======================================== */

.site-footer {
    width: 100%;
    background: #2c3e50;
}

.site-footer .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ========================================
   CARD GRID CONSTRAINTS
   ======================================== */

.card-grid {
    max-width: 100%;
    padding: 0;
}

/* Cards inside sections */
.homepage-section {
    width: 100%;
    padding: 0;
    margin-bottom: 15px;
}

.homepage-section .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0;
}

/* ========================================
   RESPONSIVE ADJUSTMENTS
   ======================================== */

/* Large Desktop - Centered with max-width */
@media (min-width: 1400px) {
    .container,
    .site-header .container,
    .main-navigation .container,
    .quick-menu-bar .container,
    .site-content .container,
    .site-footer .container,
    .homepage-section .container {
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 20px;
    }
    
    .hero-banner-section .hero-banner,
    .hero-banner-section .hero-banner-placeholder,
    .hero-banner-section .hero-banner-image {
        max-width: 1200px;
        margin: 0 auto;
    }
}

/* Standard Desktop - Centered with max-width */
@media (min-width: 1200px) and (max-width: 1399px) {
    .container,
    .site-header .container,
    .main-navigation .container,
    .quick-menu-bar .container,
    .site-content .container,
    .site-footer .container,
    .homepage-section .container {
        max-width: 1100px;
        margin: 0 auto;
        padding: 0 20px;
    }
    
    .hero-banner-section .hero-banner,
    .hero-banner-section .hero-banner-placeholder,
    .hero-banner-section .hero-banner-image {
        max-width: 1100px;
        margin: 0 auto;
    }
}

/* Tablet - Centered with max-width */
@media (min-width: 768px) and (max-width: 1199px) {
    .container,
    .site-header .container,
    .main-navigation .container,
    .quick-menu-bar .container,
    .site-content .container,
    .site-footer .container,
    .homepage-section .container {
        max-width: 900px;
        margin: 0 auto;
        padding: 0 15px;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .container,
    .site-header .container,
    .main-navigation .container,
    .quick-menu-bar .container,
    .site-content .container,
    .site-footer .container,
    .homepage-section .container {
        max-width: 100%;
        padding: 0 10px;
    }
}

/* ========================================
   OVERFLOW FIXES
   ======================================== */

/* Prevent horizontal scroll */
html, body {
    overflow-x: hidden;
    max-width: 100%;
}

/* Ensure all sections don't overflow */
.site > * {
    max-width: 100%;
    overflow-x: hidden;
}

/* Fix for full-width backgrounds with contained content */
.full-width-bg {
    width: 100%;
    position: relative;
}

.full-width-bg > .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ========================================
   Z-INDEX HIERARCHY
   ======================================== */

.site-header {
    z-index: 1000;
}

.main-navigation {
    z-index: 999;
}

.quick-menu-bar {
    z-index: 998;
}

.hero-banner-section {
    z-index: 1;
}

.mobile-bottom-nav {
    z-index: 1001;
}

/* ========================================
   UTILITY CLASSES
   ======================================== */

.container-fluid {
    width: 100%;
    padding: 0 15px;
}

.container-narrow {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 20px;
}

.container-wide {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Alignment utilities */
.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.text-center {
    text-align: center;
}

.d-block {
    display: block;
}

.w-100 {
    width: 100%;
}

/* ========== section-fix.css ========== */
/**
 * Section Border Fix
 * Remove border-top when section title is hidden
 * @package SoiCauPro
 */

/* Remove border-top when section title is hidden */
.homepage-section:not(:has(.section-header)) .section-content {
    border-top: none !important;
}

/* Alternative selector for better compatibility */
.homepage-section .section-content {
    border-top: none;
}

/* Only add border-top if section has header and it's followed by content without padding */
.homepage-section .section-header + .section-content.full-width {
    border-top: none;
}

/* Specific fixes for each section when title is hidden */
.results-section:not(:has(.section-header)) .section-content,
.soicau-section:not(:has(.section-header)) .section-content,
.statistics-section:not(:has(.section-header)) .section-content,
.blog-section:not(:has(.section-header)) .section-content {
    border-top: none !important;
    padding-top: 10px; /* Add some padding to compensate */
}

/* Clean transition when toggling title visibility */
.homepage-section .section-content {
    transition: border 0.3s ease, padding 0.3s ease;
}

/* Optional: Add subtle shadow instead of border when no title */
.homepage-section:not(:has(.section-header)) {
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

/* Ensure proper spacing */
@media (min-width: 768px) {
    .homepage-section:not(:has(.section-header)) .section-content {
        padding-top: 15px;
    }
}

@media (min-width: 992px) {
    .homepage-section:not(:has(.section-header)) .section-content {
        padding-top: 20px;
    }
}

/* ========== unified-layout.css ========== */
/**
 * Unified Layout CSS
 * Äá»“ng bá»™ chiá»u rá»™ng cho header, navigation vÃ  quick menu vá»›i content
 * @package SoiCauPro
 */

/* ========================================
   UNIFIED WIDTH SYSTEM
   ======================================== */

/* Reset cÃ¡c element chÃ­nh */
.site-header,
.main-navigation,
.quick-menu-bar {
    width: 100%;
}

/* Header vá»›i width giá»›i háº¡n */
.site-header {
    padding: 0;
    background: #f5f5f5;
}

.site-header .header-wrapper {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.site-header .container {
    max-width: 100%;
    padding: 0;
    margin: 0;
}

/* Navigation vá»›i width giá»›i háº¡n */
.main-navigation {
    padding: 10px 0;
    background: transparent;
}

.main-navigation .nav-wrapper {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.main-navigation .container {
    max-width: 100%;
    padding: 0;
    margin: 0;
}

/* Quick Menu Bar vá»›i width giá»›i háº¡n */
.quick-menu-bar {
    padding: 15px 0;
    background: transparent;
}

.quick-menu-bar .menu-wrapper {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.quick-menu {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* Äáº£m báº£o cÃ¡c sections cÅ©ng cÃ³ cÃ¹ng width */
.homepage-section {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto 15px;
    padding: 0 20px;
}

/* Hero banner cÅ©ng cÄƒn chá»‰nh */
.hero-banner-section {
    padding: 0 20px;
}

.hero-banner-section > * {
    max-width: 1100px;
    margin: 0 auto;
}

/* Site content cÄƒn chá»‰nh */
.site-content {
    padding: 20px;
}

.site-content .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0;
}

/* ========================================
   RESPONSIVE ADJUSTMENTS
   ======================================== */

/* Desktop lá»›n */
@media (min-width: 1400px) {
    .site-header .header-wrapper,
    .main-navigation .nav-wrapper,
    .quick-menu-bar .menu-wrapper,
    .homepage-section,
    .hero-banner-section > *,
    .site-content .container {
        max-width: 1300px;
    }
}

/* Desktop tiÃªu chuáº©n */
@media (min-width: 1200px) and (max-width: 1399px) {
    .site-header .header-wrapper,
    .main-navigation .nav-wrapper,
    .quick-menu-bar .menu-wrapper,
    .homepage-section,
    .hero-banner-section > *,
    .site-content .container {
        max-width: 1200px;
    }
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1199px) {
    .site-header .header-wrapper,
    .main-navigation .nav-wrapper,
    .quick-menu-bar .menu-wrapper,
    .homepage-section,
    .hero-banner-section > *,
    .site-content .container {
        max-width: 100%;
        padding: 0 20px;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .site-header .header-wrapper,
    .main-navigation .nav-wrapper,
    .quick-menu-bar .menu-wrapper {
        max-width: 100%;
        padding: 0 15px;
    }
    
    .homepage-section {
        width: 100%;
        margin: 0 0 10px 0;
        padding: 0 15px;
        border-radius: 0;
    }
    
    .hero-banner-section {
        padding: 0;
    }
}

/* ========================================
   VISUAL ENHANCEMENTS
   ======================================== */

/* Separator Ä‘Ã£ bá»‹ remove - khÃ´ng cáº§n ná»¯a */

/* Quick menu items cÄƒn chá»‰nh láº¡i - ÄÃ£ di chuyá»ƒn lÃªn trÃªn */

/* Header elements alignment */
.header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.site-branding {
    flex: 0 0 auto;
}

.header-info {
    flex: 1;
    text-align: right;
}

/* Navigation menu alignment */
.nav-menu {
    display: flex;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

.nav-menu li {
    flex: 0 0 auto;
}

.nav-menu a {
    display: block;
    padding: 12px 20px;
}

/* ========================================
   OVERRIDE PREVIOUS STYLES
   ======================================== */

/* Backgrounds Ä‘Ã£ Ä‘Æ°á»£c set á»Ÿ trÃªn */

/* Ensure proper spacing */
body {
    background: #f0f0f0;
}

.site {
    padding-top: 0;
}

/* Footer cÅ©ng cÄƒn chá»‰nh */
.site-footer {
    background: #2c3e50;
    padding: 20px 0;
}

.site-footer .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ========== alignment-fix.css ========== */
/**
 * Alignment Fix CSS
 * Äáº£m báº£o táº¥t cáº£ cÃ¡c pháº§n Ä‘Æ°á»£c cÄƒn chá»‰nh thá»‘ng nháº¥t
 * @package SoiCauPro
 */

/* ========================================
   GLOBAL ALIGNMENT SYSTEM
   ======================================== */

/* Define consistent max-width for all sections */
:root {
    --content-max-width: 1160px;
    --site-padding: 0;
}

/* Reset body vÃ  html */
body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

/* ========================================
   HERO BANNER - TOP POSITION
   ======================================== */

/* Banner wrapper - full width background */
.page > .hero-banner-section,
#page > .hero-banner-section {
    width: 100%;
    background: transparent;
    padding: 0;
    margin: 0;
}

.hero-banner-section {
    width: 100%;
    padding: 0;
    margin: 0;
    position: relative;
    z-index: 1;
}

.hero-banner-section .hero-banner-content {
    max-width: var(--content-max-width);
    margin: 0 auto;
    padding: 0;
    border-radius: 0;
    overflow: hidden;
}

/* ========================================
   HEADER ALIGNMENT
   ======================================== */

header#masthead,
header#masthead.site-header,
.site-header {
    width: 100%;
    background: transparent;
    padding: 0;
    margin: 0;
    border: none;
}

.site-header .header-wrapper,
header#masthead .header-wrapper {
    width: 100%;
    max-width: var(--content-max-width);
    margin: 0 auto;
    box-sizing: border-box;
    overflow: hidden;
}

.site-header .container {
    width: 100%;
    padding: 0 20px;
    margin: 0;
    box-sizing: border-box;
}

.header-top {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    margin: 0;
}

.site-branding {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
}

.site-logo {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: #ffd700;
    font-weight: bold;
    font-size: 24px;
    text-transform: uppercase;
}

.header-info {
    display: flex;
    gap: 20px;
    align-items: center;
    color: white;
    margin-left: auto;
    padding-right: 0;
}

.header-date {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #ffd700;
    font-size: 14px;
}

.header-date i {
    color: #ffd700;
}

.header-phone {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #ffd700;
    font-size: 14px;
}

.header-phone i {
    color: #ffd700;
}

/* ========================================
   NAVIGATION ALIGNMENT
   ======================================== */

#site-navigation,
.main-navigation {
    width: 100%;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    padding: 0;
    margin-top: -1px !important; /* SÃ¡t vá»›i header */
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    outline: none !important;
}

#site-navigation::before,
#site-navigation::after,
.main-navigation::before,
.main-navigation::after {
    display: none !important;
    content: none !important;
}

.main-navigation .nav-wrapper {
    max-width: var(--content-max-width);
    margin: 0 auto;
    background: linear-gradient(90deg, #2c3e50 0%, #34495e 100%);
    box-sizing: border-box;
    padding: 0;
    border-radius: 8px;
    margin-top: 0;
}

.main-navigation .container {
    width: 100%;
    padding: 10px 20px;
    margin: 0;
    box-sizing: border-box;
}

/* ========================================
   QUICK MENU ALIGNMENT
   ======================================== */

.quick-menu-bar {
    width: 100%;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    padding: 15px 0;
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    outline: none !important;
}

.quick-menu-bar::before,
.quick-menu-bar::after {
    display: none !important;
    content: none !important;
}

.quick-menu-bar .menu-wrapper {
    max-width: var(--content-max-width);
    margin: 0 auto;
    background: #f8f8f8;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 15px 20px;
    box-sizing: border-box;
}

.quick-menu {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* ========================================
   CONTENT SECTIONS ALIGNMENT
   ======================================== */

.site-content {
    width: 100%;
    padding: 0px 0;
}

.site-content .container {
    max-width: var(--content-max-width);
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
}

/* Homepage sections */
.homepage-section {
    max-width: var(--content-max-width);
    margin: 0 auto 15px;
    padding: 0;
    box-sizing: border-box;
    background: white;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    overflow: hidden;
}

/* Loáº¡i bá» padding thá»«a tá»« section content */
.homepage-section .section-content {
    padding: 0px;
}

/* Hero section alignment */
.hero-banner-section {
    max-width: var(--content-max-width);
    margin: 0 auto 15px;
    padding: 0;
    box-sizing: border-box;
    border-radius: 8px;
    overflow: hidden;
}

/* ========================================
   FOOTER ALIGNMENT
   ======================================== */

.site-footer {
    width: 100%;
    background: #2c3e50;
}

.site-footer .container {
    max-width: var(--content-max-width);
    margin: 0 auto;
    padding: 20px;
    box-sizing: border-box;
}

/* ========================================
   RESPONSIVE ADJUSTMENTS
   ======================================== */

/* Tablet */
@media (max-width: 1199px) and (min-width: 768px) {
    :root {
        --content-max-width: calc(100% - 40px);
    }
    
    .site-header .header-wrapper,
    .main-navigation .nav-wrapper,
    .quick-menu-bar .menu-wrapper,
    .homepage-section {
        margin-left: 20px;
        margin-right: 20px;
    }
}

/* Mobile */
@media (max-width: 767px) {
    :root {
        --content-max-width: calc(100% - 30px);
    }
    
    .site-header .header-wrapper,
    .main-navigation .nav-wrapper,
    .quick-menu-bar .menu-wrapper,
    .homepage-section {
        margin-left: 15px;
        margin-right: 15px;
        border-radius: 0;
    }
    
    .header-info {
        display: flex !important;
        font-size: 11px;
        gap: 8px;
    }
    
    .header-date span,
    .header-phone span {
        display: inline-block;
    }
    
    .header-date i,
    .header-phone i {
        font-size: 12px;
    }
    
    .homepage-section {
        margin-bottom: 10px;
    }
    
    .homepage-section .section-content {
        padding: 0px;
    }
}

/* ========================================
   IMPORTANT OVERRIDES
   ======================================== */

/* Äáº£m báº£o khÃ´ng cÃ³ element nÃ o trÃ n ra ngoÃ i */
* {
    max-width: 100%;
}

/* Override cÃ¡c styles tá»« files khÃ¡c */
body {
    background: #f0f0f0;
}

/* Ensure proper page wrapper */
.site {
    background: transparent;
    padding: 0;
    margin: 0;
}

/* Remove unwanted paddings */
.single-column-layout {
    padding: 0;
    margin: 0;
}

/* Fix navigation menu items */
.nav-menu {
    display: flex;
    justify-content: center;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 10px 0;
    gap: 15px;
}

.nav-menu a {
    color: white;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 5px;
    transition: background 0.3s;
}

.nav-menu a:hover {
    background: rgba(255,255,255,0.1);
}

/* Fix cho tables vÃ  elements rá»™ng */
.table-responsive {
    overflow-x: auto;
    max-width: 100%;
}

/* Äáº£m báº£o images khÃ´ng trÃ n */
img {
    max-width: 100%;
    height: auto;
}

/* ========================================
   REMOVE UNWANTED LINES & BORDERS
   ======================================== */

/* Remove all separator lines and backgrounds */
.site-header::after,
.site-header::before,
.main-navigation::after,
.main-navigation::before,
.quick-menu-bar::after,
.quick-menu-bar::before,
.header-wrapper::after,
.header-wrapper::before,
.nav-wrapper::after,
.nav-wrapper::before,
.menu-wrapper::after,
.menu-wrapper::before,
#masthead::after,
#masthead::before {
    display: none !important;
    content: none !important;
    background: none !important;
    border: none !important;
    height: 0 !important;
    width: 0 !important;
}

/* Remove all borders from header elements */
#masthead,
#masthead *,
.site-header,
.site-header *,
.header-wrapper,
.header-wrapper * {
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Remove any horizontal lines */
#masthead::after,
#masthead::before,
.site-header::after,
.site-header::before,
.header-wrapper::after,
.header-wrapper::before {
    display: none !important;
    content: none !important;
    height: 0 !important;
    border: none !important;
}

/* Remove any box shadows or outlines */
#site-navigation,
.nav-wrapper,
.menu-wrapper {
    box-shadow: none !important;
    outline: none !important;
    border: none !important;
}

/* Remove border-bottom from header elements */
.header-top-bar,
.header-wrapper,
.site-header {
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Remove all horizontal lines/separators (except breadcrumb separators) */
hr,
.divider {
    display: none !important;
}

/* ========================================
   MASTHEAD SPECIFIC FIXES
   ======================================== */

#masthead,
header#masthead,
header#masthead.site-header {
    background: transparent !important;
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
    outline: none !important;
    margin: 0;
    padding: 0;
    position: relative;
}

#masthead:after,
#masthead:before,
header#masthead:after,
header#masthead:before {
    display: none !important;
    content: none !important;
    border: none !important;
    background: none !important;
}

#masthead .header-wrapper {
    max-width: var(--content-max-width);
    margin: 20px auto 0;
    background: linear-gradient(135deg, #c8232c 0%, #e74c3c 100%);
    border-radius: 8px 8px 0 0;
    padding: 0;
}

#masthead .container {
    padding: 0 20px;
    margin: 0;
}

/* Clean layout */
body #page > .hero-banner-section {
    margin-bottom: 0;
}

body #page > header#masthead {
    margin-top: 0;
}

#masthead .header-top {
    padding: 15px 0;
    margin: 0;
    width: 100%;
}


/* ========== menu-fix.css ========== */
/* Menu Fix Styles */

/* Desktop Menu Colors */
@media (min-width: 768px) {
    /* Main navigation background - Dark background for menu */
    .main-navigation,
    #site-navigation {
        background: #2c3e50 !important; /* Dark blue-gray background */
    }
    
    .nav-wrapper {
        background: transparent !important;
    }
    
    /* Menu items */
    .main-navigation .nav-menu {
        display: flex;
        justify-content: center;
        align-items: center;
        list-style: none;
        margin: 0;
        padding: 0;
    }
    
    .main-navigation .nav-menu li {
        display: inline-block;
        margin: 0;
        padding: 0;
    }
    
    /* Force menu text to be white */
    .main-navigation .nav-menu li a,
    #primary-menu li a,
    .nav-menu a {
        display: block;
        padding: 15px 20px;
        color: #ffffff !important; /* White text */
        text-decoration: none;
        font-size: 14px;
        font-weight: 500;
        transition: all 0.3s ease;
        text-shadow: 1px 1px 2px rgba(0,0,0,0.3); /* Text shadow for better readability */
    }
    
    .main-navigation .nav-menu li a:hover,
    .main-navigation .nav-menu li.current-menu-item a,
    .main-navigation .nav-menu li.current_page_item a {
        background: rgba(255,255,255,0.1);
        color: #ffd700 !important;
    }
    
    /* Quick menu styles */
    .quick-menu-bar {
        background: #ffffff !important;
        border-top: 1px solid #e0e0e0;
        border-bottom: 1px solid #e0e0e0;
    }
    
    .quick-menu {
        display: flex;
        justify-content: center;
        gap: 10px;
        padding: 10px 0;
    }
    
    .quick-menu-item {
        color: #333 !important;
        text-decoration: none;
        padding: 8px 15px;
        border-radius: 5px;
        transition: all 0.3s ease;
    }
    
    .quick-menu-item:hover {
        background: #f5f5f5;
    }
    
    /* Remove all container padding on desktop */
    body .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    /* Only add padding where content needs it */
    .entry-content,
    .post-content,
    article {
        padding: 0 20px;
    }
}

/* ========== navigation-override.css ========== */
/* Navigation Menu Color Override - Highest Priority */

/* Desktop Navigation Styles */
@media screen and (min-width: 768px) {
    /* Navigation container with dark background */
    html body .main-navigation,
    html body #site-navigation {
        background: #2c3e50 !important; /* Dark blue-gray background */
    }
    
    /* Alternative darker backgrounds you can try: */
    /* background: #1a1a1a !important; /* Pure dark */
    /* background: #333333 !important; /* Dark gray */
    /* background: linear-gradient(180deg, #2c3e50 0%, #34495e 100%) !important; /* Gradient */
    
    /* Navigation wrapper */
    html body .main-navigation .nav-wrapper,
    html body #site-navigation .nav-wrapper {
        background: transparent !important;
    }
    
    /* Menu list */
    html body .main-navigation ul.nav-menu,
    html body #site-navigation ul.nav-menu,
    html body #primary-menu {
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Menu items */
    html body .main-navigation ul.nav-menu > li,
    html body #primary-menu > li {
        display: inline-block !important;
    }
    
    /* Menu links - WHITE TEXT */
    html body .main-navigation ul.nav-menu > li > a,
    html body #site-navigation ul.nav-menu > li > a,
    html body #primary-menu > li > a,
    html body .nav-menu a {
        color: #ffffff !important; /* White text */
        text-decoration: none !important;
        padding: 15px 20px !important;
        display: block !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        transition: all 0.3s ease !important;
    }
    
    /* Hover state */
    html body .main-navigation ul.nav-menu > li > a:hover,
    html body #site-navigation ul.nav-menu > li > a:hover,
    html body #primary-menu > li > a:hover,
    html body .nav-menu a:hover {
        color: #ffd700 !important; /* Gold/yellow on hover */
        background: rgba(255,255,255,0.1) !important;
    }
    
    /* Active/current page */
    html body .main-navigation ul.nav-menu > li.current-menu-item > a,
    html body .main-navigation ul.nav-menu > li.current_page_item > a,
    html body #primary-menu > li.current-menu-item > a,
    html body #primary-menu > li.current_page_item > a {
        color: #ffd700 !important; /* Gold/yellow for current page */
        background: rgba(255,255,255,0.05) !important;
    }
    
    /* Visited links should also be white */
    html body .main-navigation ul.nav-menu > li > a:visited,
    html body #primary-menu > li > a:visited {
        color: #ffffff !important;
    }
}

/* Alternative: If navigation still has white background, force dark background everywhere */
@media screen and (min-width: 768px) {
    /* Force dark background on all possible navigation containers */
    .site nav,
    nav.main-navigation,
    #site-navigation,
    .navigation,
    .nav {
        background-color: #2c3e50 !important;
    }
}

/* ========== white-background.css ========== */
/* Force White Background - Remove Gray Background */

/* All screen sizes */
html {
    background: #ffffff !important;
    background-color: #ffffff !important;
}

body {
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Site wrapper */
.site,
#page {
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Banner wrapper - force white background */
.hero-banner-wrapper,
.hero-banner-section,
.hero-banner-top {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
}

/* Content areas */
.site-content,
#content,
.content-area {
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Main content */
.site-main,
#main,
#primary {
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Desktop specific */
@media (min-width: 768px) {
    html,
    body {
        background: #ffffff !important;
        background-color: #ffffff !important;
    }
    
    /* Remove any gray backgrounds */
    .site,
    #page,
    .site-content,
    .content-area,
    .site-main {
        background: #ffffff !important;
        background-color: #ffffff !important;
    }
}

/* Large screens */
@media (min-width: 1200px) {
    html,
    body {
        background: #ffffff !important;
        background-color: #ffffff !important;
    }
}

/* Ultra wide screens */
@media (min-width: 1400px) {
    html,
    body {
        background: #ffffff !important;
        background-color: #ffffff !important;
    }
}

/* Override any gradient backgrounds */
body,
.site {
    background-image: none !important;
}

/* Ensure white background with highest specificity */
html body,
html body.home,
html body.blog,
html body.single,
html body.page,
html body.archive {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
}

/* ========== customizer-title-hide.css ========== */
/* Hide Title and Border When Customizer Setting is OFF */

/* 
 * This CSS only applies when "Hiá»ƒn thá»‹ tiÃªu Ä‘á»" is turned OFF in Customizer
 * It hides the title and removes borders/frames but KEEPS the content visible
 */

/* For sections that have title hidden via Customizer */
.homepage-section.title-hidden .section-header {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove borders and frames when title is hidden */
.homepage-section.title-hidden {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
}

/* Keep content visible */
.homepage-section.title-hidden .section-content {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Alternative: Target sections without the title shown */
.results-section:not(.has-title),
.soicau-section:not(.has-title),
.statistics-section:not(.has-title),
.blog-section:not(.has-title) {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
}

.results-section:not(.has-title) .section-header,
.soicau-section:not(.has-title) .section-header,
.statistics-section:not(.has-title) .section-header,
.blog-section:not(.has-title) .section-header {
    display: none !important;
}

/* Mobile styles */
@media (max-width: 767px) {
    .homepage-section.title-hidden {
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* ========== header-layout-fix.css ========== */
/* Header Layout Fix - Logo cÄƒn trÃ¡i, Date cÄƒn pháº£i */

/* Desktop Layout */
@media (min-width: 768px) {
    /* Header container */
    .header-top {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 0;
    }
    
    /* Logo - Dá»‹ch vÃ o trong */
    .site-branding {
        flex: 0 0 auto;
        padding-left: 15px;
    }
    
    .site-logo {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        text-decoration: none;
        color: #ffffff;
        font-weight: bold;
        font-size: 18px;
        transition: all 0.3s ease;
        text-shadow: 1px 1px 2px rgba(0,0,0,0.2);
    }
    
    .site-logo:hover {
        color: #ffd700;
        transform: translateX(2px);
    }
    
    .logo-icon {
        font-size: 22px;
        color: #ffffff;
    }
    
    /* Header Info - Sang pháº£i */
    .header-info {
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        gap: 20px;
        padding-right: 15px;
    }
    
    .header-date {
        display: flex;
        align-items: center;
        gap: 5px;
        color: #333;
        font-size: 14px;
        font-weight: 500;
    }
    
    .header-date i {
        color: #ffd700;
        font-size: 15px;
    }
    
    .header-date span {
        color: #ffffff;
        font-weight: 500;
    }
    
    /* Hide mobile menu button on desktop */
    .mobile-menu-toggle {
        display: none !important;
    }
}

/* Mobile Layout */
@media (max-width: 767px) {
    /* Header container */
    .header-top {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        padding: 8px 10px;
    }
    
    /* Logo vÃ  Mobile menu button trÃªn cÃ¹ng 1 dÃ²ng */
    .site-branding {
        flex: 1;
        order: 1;
    }
    
    .mobile-menu-toggle {
        flex: 0 0 auto;
        order: 2;
        background: none;
        border: none;
        font-size: 20px;
        color: #ffffff;
        padding: 5px;
        cursor: pointer;
    }
    
    /* Header info (Date) xuá»‘ng dÃ²ng dÆ°á»›i */
    .header-info {
        flex: 1 0 100%;
        order: 3;
        display: flex;
        justify-content: flex-start;
        margin-top: 5px;
        padding-top: 5px;
        border-top: 1px solid rgba(255,255,255,0.2);
    }
    
    /* Logo style on mobile */
    .site-logo {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        text-decoration: none;
        color: #ffffff;
        font-weight: bold;
        font-size: 16px;
        text-shadow: 1px 1px 2px rgba(0,0,0,0.2);
    }
    
    .logo-icon {
        font-size: 18px;
        color: #ffffff;
    }
    
    /* Date style on mobile */
    .header-date {
        display: flex;
        align-items: center;
        gap: 4px;
        color: #333;
        font-size: 13px;
        font-weight: 500;
    }
    
    .header-date i {
        color: #ffd700;
        font-size: 13px;
    }
    
    .header-date span {
        color: #ffffff;
        font-weight: 500;
    }
    
    /* Hide phone on mobile if exists */
    .header-phone {
        display: none;
    }
}

/* Common styles for both */
.site-header {
    background: linear-gradient(90deg, #e74c3c, #c0392b);
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    position: relative;
    z-index: 100;
}

.header-wrapper {
    max-width: 980px;
    margin: 0 auto;
}

/* Ensure container doesn't add extra padding */
.header-wrapper .container {
    padding: 0;
}

/* Additional styles for better visibility */
.header-date {
    background: rgba(255,255,255,0.15);
    padding: 5px 12px;
    border-radius: 20px;
    border: 1px solid rgba(255,255,255,0.3);
    backdrop-filter: blur(5px);
}

@media (max-width: 767px) {
    .header-date {
        background: transparent;
        padding: 0;
        border: none;
        border-radius: 0;
    }
}

/* Remove default margins */
.site-branding h1,
.site-branding p {
    margin: 0;
}

/* Fix alignment for custom logo if used */
.custom-logo-link {
    display: inline-flex;
    align-items: center;
}

.custom-logo {
    max-height: 40px;
    width: auto;
}

/* Extra small mobile (< 375px) */
@media (max-width: 374px) {
    .site-logo span {
        font-size: 14px;
    }
    
    .logo-icon {
        font-size: 16px;
    }
    
    .header-date span {
        font-size: 11px;
    }
}

/* ========== header-background-force.css ========== */
/**
 * Force Header Background Colors - Ultra High Priority
 * Ensures header has gradient background visible
 */

/* ========================================
   DESKTOP - Header Background
   ======================================== */
@media (min-width: 768px) {
    /* Force header background gradient */
    html body #masthead,
    body #masthead,
    #masthead,
    html body .site-header,
    body .site-header,
    .site-header {
        background: linear-gradient(135deg, #c8232c 0%, #e74c3c 100%) !important;
        background-color: #c8232c !important;
    }
    
    /* Ensure child elements are transparent */
    html body #masthead .header-wrapper,
    body #masthead .header-wrapper,
    #masthead .header-wrapper,
    html body .site-header .header-wrapper,
    body .site-header .header-wrapper,
    .site-header .header-wrapper {
        background: transparent !important;
        background-color: transparent !important;
    }
    
    html body #masthead .container,
    body #masthead .container,
    #masthead .container,
    html body .site-header .container,
    body .site-header .container,
    .site-header .container {
        background: transparent !important;
        background-color: transparent !important;
    }
    
    html body #masthead .header-top,
    body #masthead .header-top,
    #masthead .header-top,
    html body .site-header .header-top,
    body .site-header .header-top,
    .site-header .header-top {
        background: transparent !important;
        background-color: transparent !important;
    }
}

/* ========================================
   MOBILE - Header Background
   ======================================== */
@media (max-width: 767px) {
    /* Force header background gradient */
    html body #masthead,
    body #masthead,
    #masthead,
    html body .site-header,
    body .site-header,
    .site-header {
        background: linear-gradient(135deg, #c8232c 0%, #e74c3c 100%) !important;
        background-color: #c8232c !important;
    }
    
    /* Ensure child elements are transparent to show parent background */
    html body #masthead .header-wrapper,
    body #masthead .header-wrapper,
    #masthead .header-wrapper,
    html body .site-header .header-wrapper,
    body .site-header .header-wrapper,
    .site-header .header-wrapper {
        background: transparent !important;
        background-color: transparent !important;
    }
    
    html body #masthead .container,
    body #masthead .container,
    #masthead .container,
    html body .site-header .container,
    body .site-header .container,
    .site-header .container {
        background: transparent !important;
        background-color: transparent !important;
    }
    
    html body #masthead .header-top,
    body #masthead .header-top,
    #masthead .header-top,
    html body .site-header .header-top,
    body .site-header .header-top,
    .site-header .header-top {
        background: transparent !important;
        background-color: transparent !important;
    }
}

/* ========================================
   OVERRIDE ANY INLINE STYLES
   ======================================== */

/* Remove any white/other backgrounds that might be inline */
#masthead[style*="background"],
.site-header[style*="background"] {
    background: linear-gradient(135deg, #c8232c 0%, #e74c3c 100%) !important;
}

#masthead .header-wrapper[style*="background"],
.site-header .header-wrapper[style*="background"],
#masthead .container[style*="background"],
.site-header .container[style*="background"],
#masthead .header-top[style*="background"],
.site-header .header-top[style*="background"] {
    background: transparent !important;
    background-color: transparent !important;
}


/* ========== header-banner-seamless.css ========== */
/**
 * Header Banner Seamless Connection
 * Removes rounded corners and connects header with banner
 */

/* Remove all rounded corners from header */
.site-header,
.site-header *,
#masthead,
#masthead *,
.header-wrapper,
.header-wrapper *,
.header-top,
.header-top * {
    border-radius: 0 !important;
}

/* Header styling without rounded corners */
.site-header {
    border-radius: 0 !important;
    border: none !important;
}

.header-wrapper {
    border-radius: 0 !important;
    border: none !important;
    background: #fff !important;
}

/* Remove rounded corners from banner */
.hero-banner-wrapper,
.hero-banner-wrapper *,
.hero-banner-container,
.hero-banner-container *,
.banner-image,
.banner-slider,
.banner-slider * {
    border-radius: 0 !important;
}

/* Banner wrapper adjustments */
.hero-banner-wrapper {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

.hero-banner-container {
    border-radius: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Banner images without rounded corners */
.banner-image,
.banner-link img,
.slide-item img {
    border-radius: 0 !important;
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

/* Quick menu bar without rounded corners */
.quick-menu-bar,
.quick-menu-bar *,
.quick-menu,
.quick-menu * {
    border-radius: 0 !important;
}

/* Mobile specific adjustments */
@media (max-width: 767px) {
    /* Header on mobile - Static position */
    html body .site-header,
    body .site-header,
    .site-header {
        position: relative !important; /* Static, not fixed */
        width: 100% !important;
        background: linear-gradient(135deg, #c8232c 0%, #e74c3c 100%) !important;
        box-shadow: none !important;
        height: 50px !important;
        padding: 0 !important;
        margin: 0 !important;
        border-radius: 0 !important;
        border: none !important;
    }
    
    /* Header wrapper - No padding, transparent background */
    html body .site-header .header-wrapper,
    body .site-header .header-wrapper,
    .site-header .header-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        height: 50px !important;
        background: transparent !important; /* Let parent gradient show through */
    }
    
    /* Container inside header - No padding, transparent background */
    html body .site-header .container,
    body .site-header .container,
    .site-header .container {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        background: transparent !important; /* Let parent gradient show through */
    }
    
    /* Header top - Only 8px vertical padding, 10px horizontal, transparent background */
    html body .site-header .header-top,
    body .site-header .header-top,
    .site-header .header-top {
        padding: 8px 10px !important;
        margin: 0 !important;
        width: 100% !important;
        height: auto !important;
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        background: transparent !important; /* Let parent gradient show through */
    }
    
    /* Quick menu bar on mobile - Static position */
    html body .quick-menu-bar,
    body .quick-menu-bar,
    .quick-menu-bar {
        position: relative !important; /* Static, not fixed */
        width: 100% !important;
        background: #ffffff !important;
        padding: 0 !important;
        margin: 0 !important;
        box-shadow: 0 2px 5px rgba(0,0,0,0.1) !important;
        border: none !important;
        border-radius: 0 !important;
    }
    
    /* Banner position for mobile - After header and quick menu */
    html body .hero-banner-wrapper,
    body .hero-banner-wrapper,
    .hero-banner-wrapper {
        position: relative !important;
        z-index: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        border-radius: 0 !important;
    }
    
    html body .hero-banner-container,
    body .hero-banner-container,
    .hero-banner-container {
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        border-radius: 0 !important;
    }
    
    /* Body padding adjustment */
    html body,
    body {
        padding-top: 0 !important;
        margin: 0 !important;
    }
    
    /* Remove any rounded corners from mobile menu button */
    .mobile-menu-toggle {
        border-radius: 5px !important; /* Slightly rounded for better look */
        background: #009688 !important;
        border: none !important;
        padding: 8px 12px !important;
    }
    
    /* Quick menu items - Keep rounded as per design */
    .quick-menu-item {
        border-radius: 20px !important; /* Rounded pills */
    }
}

/* Desktop specific adjustments */
@media (min-width: 768px) {
    /* Header on desktop - No border-radius */
    html body .site-header,
    body .site-header,
    .site-header,
    html body #masthead,
    body #masthead,
    #masthead {
        border-radius: 0 !important;
        margin-bottom: 0 !important;
        box-shadow: none !important;
        border: none !important;
    }
    
    /* Header top padding - Only 8px vertical */
    html body .site-header .header-top,
    body .site-header .header-top,
    .site-header .header-top,
    html body #masthead .header-top,
    body #masthead .header-top,
    #masthead .header-top {
        padding: 8px 0 !important;
        background: transparent !important; /* Let parent gradient show through */
        margin: 0 !important;
    }
    
    /* Header wrapper needs background too */
    html body .site-header .header-wrapper,
    body .site-header .header-wrapper,
    .site-header .header-wrapper,
    html body #masthead .header-wrapper,
    body #masthead .header-wrapper,
    #masthead .header-wrapper {
        background: transparent !important; /* Let parent gradient show through */
    }
    
    /* Banner right after header - No border-radius */
    html body .hero-banner-wrapper,
    body .hero-banner-wrapper,
    .hero-banner-wrapper {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding: 0 !important;
        border-radius: 0 !important;
    }
    
    html body .hero-banner-container,
    body .hero-banner-container,
    .hero-banner-container {
        border-radius: 0 !important;
    }
    
    html body .banner-image,
    body .banner-image,
    .banner-image,
    html body .slide-item,
    body .slide-item,
    .slide-item,
    html body .slide-item img,
    body .slide-item img,
    .slide-item img {
        border-radius: 0 !important;
    }
    
    /* Quick menu bar - No border-radius */
    html body .quick-menu-bar,
    body .quick-menu-bar,
    .quick-menu-bar {
        border-radius: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    
    /* Main navigation - No border-radius */
    html body .main-navigation,
    body .main-navigation,
    .main-navigation,
    html body .nav-wrapper,
    body .nav-wrapper,
    .nav-wrapper {
        border-radius: 0 !important;
    }
    
    /* Quick menu items keep rounded for desktop */
    .quick-menu-item {
        border-radius: 25px !important;
    }
}

/* Ultra high priority overrides */
* {
    --border-radius: 0 !important;
}

/* Specific overrides for stubborn elements */
.hero-banner-wrapper::before,
.hero-banner-wrapper::after,
.hero-banner-container::before,
.hero-banner-container::after {
    border-radius: 0 !important;
    display: none !important;
}

/* Seamless transition between sections */
.site-header + .quick-menu-bar {
    margin-top: 0 !important;
}

.quick-menu-bar + .hero-banner-wrapper {
    margin-top: 0 !important;
}

/* Remove gaps between elements */
#page {
    padding-top: 0 !important;
}

.site {
    margin-top: 0 !important;
}

/* Ensure banner images fill width */
.banner-slider,
.slider-wrapper {
    width: 100% !important;
    border-radius: 0 !important;
}

.slide-item {
    width: 100% !important;
    border-radius: 0 !important;
}

/* Remove any padding that creates gaps */
@media (max-width: 767px) {
    .header-wrapper .container {
        padding: 0 !important;
    }
    
    .hero-banner-wrapper {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* Landscape mode adjustments */
@media (max-width: 767px) and (orientation: landscape) {
    /* Banner stays at natural position */
    html body .hero-banner-wrapper,
    body .hero-banner-wrapper,
    .hero-banner-wrapper {
        margin: 0 !important;
    }
}

/* Fix for any custom border radius variables */
:root {
    --radius: 0 !important;
    --rounded: 0 !important;
    --border-radius: 0 !important;
    --corner-radius: 0 !important;
}

/* ========== footer-menu-styles.css ========== */
/**
 * Footer Menu Styles
 * Styling cho WordPress menu trong footer
 */

/* Footer Menu List Styles */
.footer-widget .footer-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-widget .footer-menu li {
    margin-bottom: 10px;
    line-height: 1.6;
}

.footer-widget .footer-menu li:last-child {
    margin-bottom: 0;
}

.footer-widget .footer-menu a {
    color: #666;
    text-decoration: none;
    transition: color 0.3s ease;
    display: inline-block;
}

.footer-widget .footer-menu a:hover {
    color: #e74c3c;
}

/* Responsive Adjustments for Footer Menu */
@media (max-width: 767px) {
    .footer-widget .footer-menu li {
        margin-bottom: 8px;
        font-size: 14px;
    }
}


/* ========== footer-mobile-padding.css ========== */
/**
 * Footer Mobile Padding Fix
 * Adds left padding to footer content on mobile devices
 */

/* Mobile Footer Padding */
@media (max-width: 767px) {
    /* Footer container padding */
    .site-footer .container {
        padding-left: 2px !important;
        padding-right: 2px !important;
    }
    
    /* Footer widgets padding */
    .site-footer .footer-widgets {
        padding-left: 2px !important;
        padding-right: 2px !important;
    }
    
    /* Individual footer widget padding */
    .site-footer .footer-widget,
    .site-footer .footer-widget-area {
        padding-left: 8px !important;
        padding-right: 8px !important;
        margin-bottom: 20px;
    }
    
    /* Footer widget headings */
    .site-footer .footer-widget h3,
    .site-footer .footer-widget h4 {
        padding-left: 0;
        margin-bottom: 10px;
    }
    
    /* Footer widget content */
    .site-footer .footer-widget p,
    .site-footer .footer-widget ul,
    .site-footer .footer-widget ol {
        padding-left: 0;
        margin-left: 0;
    }
    
    /* Footer widget list items */
    .site-footer .footer-widget ul li {
        padding-left: 15px;
        position: relative;
    }
    
    .site-footer .footer-widget ul li:before {
        content: "â€º";
        position: absolute;
        left: 0;
        color: #999;
    }
    
    /* Contact info */
    .site-footer .contact-info {
        padding-left: 0;
    }
    
    .site-footer .contact-info li {
        padding-left: 20px;
        position: relative;
    }
    
    .site-footer .contact-info li i {
        position: absolute;
        left: 0;
        top: 2px;
        width: 16px;
    }
    
    /* Newsletter form */
    .site-footer .newsletter-form {
        padding: 10px 0;
    }
    
    .site-footer .newsletter-form form {
        display: flex;
        gap: 5px;
        padding: 0;
    }
    
    .site-footer .newsletter-form input {
        flex: 1;
        padding: 8px 10px;
        font-size: 14px;
    }
    
    .site-footer .newsletter-form button {
        padding: 8px 15px;
    }
    
    /* Social links */
    .site-footer .social-links {
        padding: 10px 0;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }
    
    /* Footer bottom */
    .site-footer .footer-bottom {
        padding: 15px 8px !important;
        text-align: center;
    }
    
    .site-footer .footer-bottom p {
        margin: 5px 0;
        padding: 0;
        font-size: 13px;
    }
    
    .site-footer .footer-bottom .disclaimer {
        margin-top: 10px;
        padding-top: 10px;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
    }
    
    .site-footer .footer-bottom small {
        font-size: 11px;
        line-height: 1.4;
        display: block;
        padding: 0 5px;
    }
}

/* Tablet Footer Padding */
@media (min-width: 768px) and (max-width: 1024px) {
    .site-footer .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    
    .site-footer .footer-widgets {
        padding: 20px 0;
    }
    
    .site-footer .footer-widget,
    .site-footer .footer-widget-area {
        padding: 0 10px;
    }
}

/* ========== footer-social-links.css ========== */
/**
 * Footer Social Links Styles
 * Styling cho cÃ¡c link máº¡ng xÃ£ há»™i trong footer
 */

.footer-widget .social-links {
    display: flex;
    gap: 15px;
    margin-top: 20px;
    flex-wrap: wrap;
}

.footer-widget .social-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-color: #f0f0f0;
    border-radius: 50%;
    color: #333;
    font-size: 18px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.footer-widget .social-links a:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* Individual social media colors on hover */
.footer-widget .social-links a[aria-label*="Facebook"]:hover {
    background-color: #1877f2;
    color: #fff;
}

.footer-widget .social-links a[aria-label*="Twitter"]:hover {
    background-color: #1da1f2;
    color: #fff;
}

.footer-widget .social-links a[aria-label*="YouTube"]:hover {
    background-color: #ff0000;
    color: #fff;
}

.footer-widget .social-links a[aria-label*="Telegram"]:hover {
    background-color: #0088cc;
    color: #fff;
}

/* Mobile Responsive */
@media (max-width: 767px) {
    .footer-widget .social-links {
        gap: 10px;
        margin-top: 15px;
    }
    
    .footer-widget .social-links a {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }
}


/* ========== quick-menu-colors-fix.css ========== */
/**
 * Quick Menu Colors Fix
 * Ensure text and icons are light colored
 */

@media (min-width: 768px) {
    /* Force white/light text on all quick menu items */
    html body .quick-menu-item {
        color: #ffffff !important;
        text-shadow: 1px 1px 2px rgba(0,0,0,0.2) !important;
    }
    
    /* Ensure icons are also white */
    html body .quick-menu-item .quick-menu-icon {
        color: #ffffff !important;
    }
    
    /* Make sure Font Awesome icons inherit color */
    html body .quick-menu-item i,
    html body .quick-menu-item .fa,
    html body .quick-menu-item .fas,
    html body .quick-menu-item .far {
        color: inherit !important;
    }
    
    /* Soi Cáº§u - Orange gradient with white text */
    html body .quick-menu-item.soi-cau {
        background: linear-gradient(135deg, #f39c12 0%, #e67e22 100%) !important;
        color: #ffffff !important;
    }
    
    html body .quick-menu-item.soi-cau:hover {
        background: linear-gradient(135deg, #e67e22 0%, #d35400 100%) !important;
        color: #ffffff !important;
    }
    
    /* Thá»‘ng KÃª - Green gradient with white text */
    html body .quick-menu-item.thong-ke {
        background: linear-gradient(135deg, #27ae60 0%, #16a085 100%) !important;
        color: #ffffff !important;
    }
    
    html body .quick-menu-item.thong-ke:hover {
        background: linear-gradient(135deg, #16a085 0%, #1abc9c 100%) !important;
        color: #ffffff !important;
    }
    
    /* Káº¿t Quáº£ - Purple gradient with white text */
    html body .quick-menu-item.ket-qua {
        background: linear-gradient(135deg, #8e44ad 0%, #9b59b6 100%) !important;
        color: #ffffff !important;
    }
    
    html body .quick-menu-item.ket-qua:hover {
        background: linear-gradient(135deg, #9b59b6 0%, #a569bd 100%) !important;
        color: #ffffff !important;
    }
    
    /* Quay Thá»­ - Red gradient with white text */
    html body .quick-menu-item.quay-thu {
        background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%) !important;
        color: #ffffff !important;
    }
    
    html body .quick-menu-item.quay-thu:hover {
        background: linear-gradient(135deg, #c0392b 0%, #a93226 100%) !important;
        color: #ffffff !important;
    }
    
    /* Default items without specific class - Blue gradient */
    html body .quick-menu-item:not(.soi-cau):not(.thong-ke):not(.ket-qua):not(.quay-thu) {
        background: linear-gradient(135deg, #3498db 0%, #2980b9 100%) !important;
        color: #ffffff !important;
    }
    
    html body .quick-menu-item:not(.soi-cau):not(.thong-ke):not(.ket-qua):not(.quay-thu):hover {
        background: linear-gradient(135deg, #2980b9 0%, #21618c 100%) !important;
        color: #ffffff !important;
    }
    
    /* Ensure text remains white on hover */
    html body .quick-menu-item:hover {
        color: #ffffff !important;
    }
    
    html body .quick-menu-item:hover .quick-menu-icon {
        color: #ffffff !important;
    }
    
    /* Fix for any link color inheritance */
    html body .quick-menu-item span {
        color: inherit !important;
    }
}

/* ========== quick-menu-compact.css ========== */
/**
 * Quick Menu Compact Style for Desktop
 * Reduce padding/margin for quick menu bar
 */

/* Desktop only - reduce quick menu bar spacing */
@media (min-width: 768px) {
    /* Main quick menu bar container */
    .quick-menu-bar {
        padding: 5px 0 !important;
        margin: 0 !important;
        border-bottom: 1px solid #ddd !important;
    }
    
    /* Menu wrapper inside */
    .quick-menu-bar .menu-wrapper {
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* The quick menu itself */
    .quick-menu {
        padding: 0 !important;
        margin: 0 !important;
        gap: 8px !important;
    }
    
    /* Individual menu items */
    .quick-menu-item {
        padding: 8px 18px !important;
        margin: 0 !important;
        font-size: 13px !important;
    }
    
    /* Menu icons */
    .quick-menu-icon {
        font-size: 16px !important;
    }
    
    /* Reduce hover transform to fit smaller space */
    .quick-menu-item:hover {
        transform: translateY(-1px) !important;
    }
    
    /* Remove any pseudo elements adding space */
    .quick-menu-bar::before,
    .quick-menu-bar::after {
        display: none !important;
        content: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Container inside quick menu bar */
    .quick-menu-bar .container {
        padding: 0 !important;
        margin: 0 auto !important;
    }
    
    /* Ensure max width stays at 980px */
    .quick-menu-bar,
    .quick-menu-bar .menu-wrapper,
    .quick-menu-bar .container {
        max-width: 980px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* Ensure no padding on mobile */
@media (max-width: 767px) {
    .quick-menu-bar {
        display: none !important;
    }
}

/* ========== quick-menu-final-override.css ========== */
/**
 * Final Override for Quick Menu Compact
 * This must be loaded last
 */

/* Force compact quick menu on desktop */
@media (min-width: 768px) {
    /* Override all padding and margin */
    html body .quick-menu-bar {
        padding-top: 9px !important;  /* Increased by 5px */
        padding-bottom: 4px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin: 0 !important;
        background: transparent !important;  /* Remove background */
        border-bottom: none !important;  /* Remove border */
        box-shadow: none !important;  /* Remove any shadow */
    }
    
    html body .quick-menu-bar .menu-wrapper {
        padding: 0 !important;
        margin: 0 !important;
    }
    
    html body .quick-menu-bar .container {
        padding: 0 !important;
        margin: 0 auto !important;
        max-width: 980px !important;
    }
    
    html body .quick-menu {
        padding: 0 !important;
        margin: 0 !important;
        display: flex !important;
        gap: 6px !important;
        justify-content: center !important;
        align-items: center !important;
        min-height: auto !important;
    }
    
    html body .quick-menu-item {
        padding: 6px 15px !important;
        margin: 0 !important;
        font-size: 13px !important;
        border-radius: 25px !important;
        line-height: 1.4 !important;
    }
    
    html body .quick-menu-icon {
        font-size: 15px !important;
        margin-right: 5px !important;
    }
    
    /* Smaller shadow for compact look */
    html body .quick-menu-item {
        box-shadow: 0 1px 3px rgba(0,0,0,0.1) !important;
    }
    
    html body .quick-menu-item:hover {
        transform: translateY(-1px) !important;
        box-shadow: 0 3px 8px rgba(0,0,0,0.2) !important;
    }
    
    /* Remove any extra spacing from before/after pseudo elements */
    html body .quick-menu-bar::before,
    html body .quick-menu-bar::after,
    html body .quick-menu::before,
    html body .quick-menu::after {
        display: none !important;
        content: none !important;
    }
}

/* ========== quick-menu-no-background.css ========== */
/**
 * Quick Menu No Background
 * Remove all background colors except button backgrounds
 */

@media (min-width: 768px) {
    /* Remove all backgrounds from quick-menu-bar container */
    html body .quick-menu-bar {
        background: none !important;
        background-color: transparent !important;
        background-image: none !important;
        border: none !important;
        border-top: none !important;
        border-bottom: none !important;
        box-shadow: none !important;
    }
    
    /* Remove background from wrapper */
    html body .quick-menu-bar .menu-wrapper {
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }
    
    /* Remove background from container */
    html body .quick-menu-bar .container {
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }
    
    /* Remove background from quick-menu nav */
    html body .quick-menu {
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
    }
    
    /* Keep the button backgrounds with their gradients */
    /* Just ensure they stand out without container background */
    html body .quick-menu-item {
        /* Keep existing gradient backgrounds */
        box-shadow: 0 2px 8px rgba(0,0,0,0.15) !important;
    }
    
    html body .quick-menu-item:hover {
        box-shadow: 0 4px 12px rgba(0,0,0,0.25) !important;
    }
    
    /* Optional: Add subtle spacing between menu and content */
    html body .quick-menu-bar {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }
    
    /* Ensure the site background shows through */
    html body .quick-menu-bar::before,
    html body .quick-menu-bar::after {
        background: transparent !important;
        display: none !important;
    }
}

/* Mobile - keep hidden */
@media (max-width: 767px) {
    .quick-menu-bar {
        display: none !important;
    }
}

/* ========== custom-section-borderless.css ========== */
/**
 * Custom Section Borderless Mode
 * Complete removal of all borders when title is hidden
 */

/* Override with highest specificity */
html body .custom-section .stat-box:not(:has(.stat-box-header)) {
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Remove ALL possible borders from content wrapper */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .stat-box-content {
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Remove borders from wrapper child elements only, not deep nested elements */
html body .custom-section .stat-box:not(:has(.stat-box-header)) > * {
    border-color: transparent !important;
    outline: none !important;
}

/* Specific removal for posts list */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon {
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    overflow: visible !important;
}

/* Remove item borders */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .post-item-icon {
    border: none !important;
    border-bottom: none !important;
    border-top: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 8px 0 !important;
}

/* Remove borders from custom content */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .custom-content {
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
}

/* Remove borders from shortcode wrapper only, not plugin content inside */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .shortcode-content {
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    /* Keep box-shadow for plugin content */
}

/* Clean hover state */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .post-item-icon:hover {
    background-color: rgba(0, 150, 136, 0.05) !important;
    border: none !important;
}

/* Link styling without borders */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .post-link-icon {
    border: none !important;
    padding: 6px 0 !important;
}

/* Mobile specific */
@media (max-width: 767px) {
    html body .custom-section .stat-box:not(:has(.stat-box-header)),
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .stat-box-content,
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon,
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .custom-content {
        border: none !important;
        box-shadow: none !important;
        background: transparent !important;
    }
}

/* Desktop specific */
@media (min-width: 768px) {
    html body .custom-section .stat-box:not(:has(.stat-box-header)),
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .stat-box-content,
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon,
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .custom-content {
        border: none !important;
        box-shadow: none !important;
        background: transparent !important;
    }
}

/* ========== custom-section-no-title.css ========== */
/**
 * Custom Section No Title Styles
 * Styles for custom sections when title is hidden
 * Remove all borders and box styling when title is hidden
 */

/* When title is hidden, remove ALL borders and box styling */
.custom-section .stat-box:not(:has(.stat-box-header)) {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove all borders from content when no header */
.custom-section .stat-box:not(:has(.stat-box-header)) .stat-box-content {
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}

/* Remove borders from wrapper elements only - NOT from shortcode content (plugins) */
.custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon,
.custom-section .stat-box:not(:has(.stat-box-header)) .custom-content {
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    background: transparent !important;
}

/* Shortcode content should only have transparent wrapper, keep plugin styles */
.custom-section .stat-box:not(:has(.stat-box-header)) .shortcode-content {
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    /* Do NOT remove box-shadow or borders from children */
}

/* Special handling for posts list - remove all item borders */
.custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon {
    border: none !important;
    background: transparent !important;
}

.custom-section .stat-box:not(:has(.stat-box-header)) .post-item-icon {
    border: none !important;
    border-bottom: none !important;
    background: transparent !important;
}

/* Keep hover effect but without border */
.custom-section .stat-box:not(:has(.stat-box-header)) .post-item-icon:hover {
    background-color: rgba(255, 243, 205, 0.3) !important;
}

/* Mobile adjustments */
@media (max-width: 767px) {
    .custom-section .stat-box:not(:has(.stat-box-header)) {
        margin-top: 0 !important;
    }
    
    .custom-section .stat-box:not(:has(.stat-box-header)) .stat-box-content {
        padding-top: 0 !important;
    }
}

/* Desktop adjustments */
@media (min-width: 768px) {
    .custom-section .stat-box:not(:has(.stat-box-header)) {
        margin-top: 0 !important;
    }
    
    .custom-section .stat-box:not(:has(.stat-box-header)) .stat-box-content {
        padding-top: 0 !important;
    }
}

/* ========== custom-section-spacing.css ========== */
/**
 * Custom Section Spacing
 * Add proper spacing between adjacent custom sections
 */

/* Add 2px bottom margin to all custom sections */
.homepage-section.custom-section {
    margin-bottom: 2px !important;
}

/* Remove margin from last custom section to avoid extra space */
.homepage-section.custom-section:last-child {
    margin-bottom: 0 !important;
}

/* When two custom sections are adjacent */
.homepage-section.custom-section + .homepage-section.custom-section {
    margin-top: 0 !important; /* Ensure only bottom margin applies */
}

/* Ensure consistent spacing on mobile */
@media (max-width: 767px) {
    .homepage-section.custom-section {
        margin-bottom: 2px !important;
    }
    
    .homepage-section.custom-section:last-child {
        margin-bottom: 0 !important;
    }
}

/* Ensure consistent spacing on desktop */
@media (min-width: 768px) {
    .homepage-section.custom-section {
        margin-bottom: 2px !important;
    }
    
    .homepage-section.custom-section:last-child {
        margin-bottom: 0 !important;
    }
}

/* Special handling when sections have headers */
.homepage-section.custom-section:has(.stat-box-header) {
    margin-bottom: 2px !important;
}

/* Special handling when sections don't have headers */
.homepage-section.custom-section:not(:has(.stat-box-header)) {
    margin-bottom: 2px !important;
}

/* Make sure the spacing is visible between sections with different backgrounds */
.homepage-section.custom-section + .homepage-section.custom-section {
    position: relative;
}

/* Optional: Add a subtle separator line between sections if needed */
/*
.homepage-section.custom-section:not(:last-child)::after {
    content: '';
    display: block;
    height: 2px;
    background: transparent;
}
*/

/* ========== custom-section-ultimate-fix.css ========== */
/**
 * Ultimate Fix for Custom Section No Title
 * Completely remove ALL borders and backgrounds when title is hidden
 * This overrides inline styles in the template
 */

/* Force override inline styles with maximum specificity */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Remove white background from custom content */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .custom-content {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Remove ALL borders from individual items */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .post-item-icon {
    border: none !important;
    border-bottom: none !important;
    background: transparent !important;
    background-color: transparent !important;
    margin: 0 !important;
    padding: 5px 0 !important;
}

/* Keep last child without border */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .post-item-icon:last-child {
    border: none !important;
    border-bottom: none !important;
}

/* Subtle hover without background */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .post-item-icon:hover {
    background: transparent !important;
    background-color: rgba(0, 150, 136, 0.03) !important;
}

/* Remove padding from links */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .post-link-icon {
    padding: 5px 0 !important;
    background: transparent !important;
}

/* Ensure stat-box has no styles */
html body .custom-section .stat-box:not(:has(.stat-box-header)) {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Ensure stat-box-content is transparent */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .stat-box-content {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Remove wrapper borders only from shortcode content */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .shortcode-content {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    /* Plugin borders inside are preserved */
}

/* Override any media query styles - wrapper only */
@media all {
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon,
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .custom-content {
        background: transparent !important;
        border: none !important;
    }
    
    /* Shortcode wrapper only - preserve plugin borders */
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .shortcode-content {
        background: transparent !important;
    }
}

/* Mobile specific overrides - wrappers only */
@media (max-width: 767px) {
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon,
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .custom-content {
        background: transparent !important;
        border: none !important;
        border-radius: 0 !important;
    }
    
    /* Shortcode wrapper only */
    html body .custom-section .stat-box:not(:has(.stat-box-header)) > .stat-box-content > .shortcode-content {
        background: transparent !important;
    }
}

/* Desktop specific overrides - wrappers only */
@media (min-width: 768px) {
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon,
    html body .custom-section .stat-box:not(:has(.stat-box-header)) .custom-content {
        background: transparent !important;
        border: none !important;
        border-radius: 0 !important;
    }
    
    /* Shortcode wrapper only */
    html body .custom-section .stat-box:not(:has(.stat-box-header)) > .stat-box-content > .shortcode-content {
        background: transparent !important;
    }
}

/* Remove borders only from posts list items, not plugin content */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon > .post-item-icon,
html body .custom-section .stat-box:not(:has(.stat-box-header)) .custom-content > * {
    border-color: transparent !important;
}

/* Keep plugin borders intact - don't override shortcode content borders */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .shortcode-content {
    /* Remove only wrapper border, keep inner plugin borders */
    border: none !important;
    background: transparent !important;
}

/* ========== PLUGIN PROTECTION - HIGHEST PRIORITY ========== */
/* Force plugin styles to display even when custom section has no title */
/* Using unset to remove theme overrides, then let plugin CSS take effect */

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-container,
html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-container *,
html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stats-container,
html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stats-container *,
html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-live-container,
html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-live-container *,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-container,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-container *,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stats-container,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stats-container *,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-live-container,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-live-container * {
    border: unset !important;
    border-top: unset !important;
    border-bottom: unset !important;
    border-left: unset !important;
    border-right: unset !important;
    border-width: unset !important;
    border-style: unset !important;
    border-color: unset !important;
    box-shadow: unset !important;
    background: unset !important;
    background-color: unset !important;
}

/* Force restore specific plugin elements */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stats-container,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stats-container {
    border: 1px solid #e8eaed !important;
    box-shadow: 0 1px 2px 0 rgba(60,64,67,0.3), 0 1px 3px 1px rgba(60,64,67,0.15) !important;
    background: white !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-result-box,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-result-box {
    border: 1px solid #e8eaed !important;
    box-shadow: 0 1px 2px 0 rgba(60,64,67,0.3), 0 1px 3px 1px rgba(60,64,67,0.15) !important;
    background: white !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-header,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-header {
    background: #1a73e8 !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-loto-section,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-loto-section {
    background: #fffef5 !important;
    border: 1px solid #f0d000 !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-loto-item,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-loto-item {
    background: white !important;
    border: 2px solid #f0d000 !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-loto-count,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-loto-count {
    background: white !important;
    color: #ea4335 !important;
    border: none !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stats-header,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stats-header {
    border-bottom: 1px solid #e8eaed !important;
    background: white !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stat-item,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stat-item {
    background: white !important;
    border: 1px solid #e8eaed !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stat-number,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-stat-number {
    background: white !important;
    border: 2px solid #f0d000 !important;
    border-radius: 50% !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-list-grid-item,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-list-grid-item {
    background: white !important;
    border: 1px solid #e8eaed !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-list-grid-number,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-list-grid-number {
    background: white !important;
    border: 2px solid #f0d000 !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-pair-item,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-pair-item {
    background: white !important;
    border: 1px solid #e8eaed !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-missing-item,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-missing-item {
    background: white !important;
    border: 2px solid #ea4335 !important;
    border-radius: 50% !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-results-table,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-results-table {
    background: white !important;
}

html body .custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-prize-row,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .kqxsmb-prize-row {
    background: white !important;
    border-bottom: 1px solid #e8eaed !important;
}

/* ========== absolute-no-border.css ========== */
/**
 * ABSOLUTE NO BORDER FOR CUSTOM SECTIONS WITHOUT TITLE
 * This must override EVERYTHING
 */

/* NUCLEAR OPTION - Remove borders from wrapper only, keep plugin borders */
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)),
html body .custom-section .stat-box:not(:has(.stat-box-header)) {
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    border-width: 0 !important;
    border-style: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Remove borders only from direct wrapper elements, not plugin content */
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) > .stat-box-content,
html body .custom-section .stat-box:not(:has(.stat-box-header)) > .stat-box-content {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Remove backgrounds from wrappers only - keep plugin backgrounds */
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon,
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) .custom-content,
html body .custom-section .stat-box:not(:has(.stat-box-header)) .posts-list-icon,
html body .custom-section .stat-box:not(:has(.stat-box-header)) .custom-content {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

/* Shortcode wrapper transparent but preserve plugin backgrounds */
html body .homepage-section.custom-section .stat-box:not(:has(.stat-box-header)) > .stat-box-content > .shortcode-content,
html body .custom-section .stat-box:not(:has(.stat-box-header)) > .stat-box-content > .shortcode-content {
    background: transparent !important;
}

/* Override any possible section-fix.css rules */
html body .homepage-section.custom-section:not(:has(.stat-box-header)) {
    box-shadow: none !important;
    border: none !important;
}

/* Override hide-headers-and-borders.css */
html body .homepage-section.custom-section {
    /* Keep the 2px spacing but no borders */
    margin-bottom: 2px !important;
}

/* When custom section has no header, ensure clean display */
html body .homepage-section.custom-section:not(:has(.stat-box-header)) .stat-box,
html body .custom-section:not(:has(.stat-box-header)) .stat-box {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Override mobile-responsive.css stat-box styles */
@media all {
    html body .custom-section .stat-box:not(:has(.stat-box-header)) {
        border-radius: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        box-shadow: none !important;
    }
}

/* Force transparent on all inner elements */
html body .custom-section .stat-box:not(:has(.stat-box-header)) .stat-box-content {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Remove pseudo elements only from wrapper, not from plugin content */
html body .custom-section .stat-box:not(:has(.stat-box-header))::before,
html body .custom-section .stat-box:not(:has(.stat-box-header))::after {
    display: none !important;
    content: none !important;
}


/* ========== ads-display.css ========== */
/**
 * Advertisement Display Styles
 * Styling cho cÃ¡c khu vá»±c quáº£ng cÃ¡o
 */

/* Ad Container */
.ad-container {
    margin: 20px auto !important;
    padding: 15px;
    background-color: #f9f9f9;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    text-align: center;
    clear: both;
    max-width: 980px !important;
    width: 980px !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* Wrapper - Let inline styles handle this */
.ad-wrapper {
    /* Inline styles have priority */
}

/* Ad Label */
.ad-label {
    font-size: 11px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 10px;
    font-weight: 600;
}

/* Ad Content */
.ad-content {
    margin: 0 auto;
}

.ad-content img.ad-image {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

.ad-content a {
    display: inline-block;
    text-decoration: none;
}

.ad-content a:hover img {
    opacity: 0.9;
    transition: opacity 0.3s ease;
}

/* Specific Ad Positions */

/* After Quick Menu */
.ad-position-after_quick_menu {
    margin: 0 auto 20px auto !important;
    border-radius: 0;
    max-width: 980px !important;
    width: 100% !important;
    display: block !important;
}

/* Before Footer */
.ad-position-before_footer {
    margin: 30px auto 20px auto !important;
    background-color: #fff;
    border-top: 2px solid #e0e0e0;
    border-bottom: 2px solid #e0e0e0;
    border-left: none;
    border-right: none;
    border-radius: 0;
    padding: 20px 15px;
    max-width: 980px !important;
    width: 100% !important;
    display: block !important;
}

/* Before Copyright */
.ad-position-before_copyright {
    margin: 20px auto !important;
    background-color: #fff;
    border: 1px dashed #ccc;
    max-width: 980px !important;
    width: 100% !important;
    display: block !important;
}

/* Post Ads */
.ad-position-post_top {
    margin: 0 auto 30px auto !important;
    background-color: #fffbf0;
    border-left: 3px solid #ffc107;
    max-width: 980px !important;
    width: 100% !important;
    display: block !important;
}

.ad-position-post_bottom {
    margin: 30px auto 0 auto !important;
    background-color: #fffbf0;
    border-left: 3px solid #ffc107;
    max-width: 980px !important;
    width: 100% !important;
    display: block !important;
}

/* After Custom Sections */
[class*="ad-position-after_section_"] {
    margin: 20px auto !important;
    background-color: #fafafa;
    max-width: 980px !important;
    width: 100% !important;
    display: block !important;
}

/* Responsive Ads */
@media (max-width: 767px) {
    .ad-container {
        margin: 15px 0;
        padding: 10px;
    }
    
    .ad-label {
        font-size: 10px;
        margin-bottom: 8px;
    }
    
    .ad-position-before_footer,
    .ad-position-before_copyright {
        margin: 15px 0;
        padding: 15px 10px;
    }
    
    .ad-position-post_top,
    .ad-position-post_bottom {
        margin: 20px 0;
    }
}

/* Desktop: limit width for homepage ads */
@media (min-width: 768px) {
    .home .ad-container,
    .page-template-default .ad-container {
        max-width: 980px;
        margin-left: auto;
        margin-right: auto;
    }
    
    .ad-position-after_quick_menu {
        max-width: 980px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* Ad Content Responsive */
.ad-content iframe,
.ad-content ins {
    max-width: 100%;
    overflow: hidden;
}

/* Google AdSense Responsive */
.ad-content .adsbygoogle {
    display: block;
    margin: 0 auto;
}

/* Hide ad label option */
.ad-container.no-label .ad-label {
    display: none;
}

/* Clearfix for ads */
.ad-container::after {
    content: "";
    display: table;
    clear: both;
}


/* ========== time-countdown.css ========== */
/**
 * Time and Countdown Section Styles
 * Hiá»ƒn thá»‹ thá»i gian hiá»‡n táº¡i vÃ  Ä‘áº¿m ngÆ°á»£c Ä‘áº¿n 18:30
 */

.time-countdown-section {
    padding: 12px 0;
    position: relative;
    z-index: 99;
}

.time-countdown-wrapper {
    max-width: 980px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 15px;
    gap: 20px;
    background: transparent;
    border: 2px solid #667eea;
    border-radius: 0;
}

.current-time-info,
.lottery-countdown-info {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #333333;
    font-size: 15px;
    font-weight: 600;
}

.current-time-info i,
.lottery-countdown-info i {
    font-size: 18px;
    color: #667eea;
}

.current-time-info span,
.lottery-countdown-info span {
    white-space: nowrap;
    letter-spacing: 0.3px;
}

/* Hover effects */
.current-time-info:hover i,
.lottery-countdown-info:hover i {
    transform: scale(1.1);
    transition: transform 0.2s ease;
}

/* Mobile responsive styles */
@media (max-width: 768px) {
    .time-countdown-section {
        padding: 3px 0;
    }
    
    .time-countdown-wrapper {
        flex-direction: column;
        gap: 8px;
        padding: 8px 10px;
    }
    
    .current-time-info,
    .lottery-countdown-info {
        width: 100%;
        justify-content: center;
        font-size: 14px;
    }
    
    .current-time-info i,
    .lottery-countdown-info i {
        font-size: 16px;
    }
}

/* Very small screens */
@media (max-width: 480px) {
    .current-time-info,
    .lottery-countdown-info {
        font-size: 13px;
    }
    
    .current-time-info i,
    .lottery-countdown-info i {
        font-size: 15px;
    }
}

/* Animation for countdown seconds */
@keyframes pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.8;
    }
}

.lottery-countdown-info {
    animation: pulse 2s ease-in-out infinite;
}

/* Ensure proper spacing after quick menu */
.quick-menu-bar + .time-countdown-section {
    margin-top: 0;
}


/* ========== main-layout.css ========== */
/**
 * Main Layout CSS - Thiáº¿t káº¿ láº¡i tá»« Ä‘áº§u
 * Layout thá»‘ng nháº¥t cho toÃ n bá»™ website
 * @package SoiCauPro
 */

/* ========================================
   RESET & VARIABLES
   ======================================== */

:root {
    --max-width: 1200px;
    --primary-red: #c8232c;
    --secondary-red: #e74c3c;
    --dark-blue: #2c3e50;
    --light-blue: #34495e;
    --gold: #ffd700;
    --bg-gray: #f0f0f0;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: Arial, sans-serif;
    background: var(--bg-gray);
    overflow-x: hidden;
}

/* ========================================
   MAIN CONTAINER
   ======================================== */

#page {
    width: 100%;
    background: transparent;
}

/* ========================================
   HERO BANNER
   ======================================== */

.hero-banner-section {
    width: 100%;
    background: white;
    padding: 0;
    margin: 0;
}

.hero-banner-content {
    max-width: var(--max-width);
    margin: 0 auto;
    height: 200px;
    overflow: hidden;
    position: relative;
}

.single-banner {
    width: 100%;
    height: 200px;
}

.single-banner img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
}

.banner-placeholder {
    width: 100%;
    height: 200px;
    background: linear-gradient(135deg, #f5f5f5 0%, #e0e0e0 100%);
    border: 2px dashed #ccc;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ========================================
   HEADER WITH LOGO
   ======================================== */

#masthead {
    width: 100%;
    background: linear-gradient(135deg, var(--primary-red) 0%, var(--secondary-red) 100%);
    padding: 0;
    margin: 0;
    border: none;
}

.header-wrapper {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0;
}

.header-wrapper .container {
    padding: 15px 20px;
}

.header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.site-branding {
    flex: 0 0 auto;
}

.site-logo {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--gold);
    text-decoration: none;
    font-size: 24px;
    font-weight: bold;
    text-transform: uppercase;
}

.header-info {
    display: flex;
    gap: 20px;
    align-items: center;
    color: white;
}

.header-date,
.header-phone {
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--gold);
    font-size: 14px;
}

.mobile-menu-toggle {
    display: none;
    background: none;
    border: none;
    color: white;
    font-size: 24px;
    cursor: pointer;
}

/* ========================================
   MAIN NAVIGATION
   ======================================== */

#site-navigation {
    width: 100%;
    background: linear-gradient(90deg, var(--dark-blue) 0%, var(--light-blue) 100%);
    padding: 0;
    margin: 0;
    border: none;
}

.nav-wrapper {
    max-width: var(--max-width);
    margin: 0 auto;
}

.nav-wrapper .container {
    padding: 0 20px;
}

.nav-menu {
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0;
    margin: 0;
    padding: 0;
}

.nav-menu li {
    margin: 0;
}

.nav-menu a {
    display: block;
    padding: 15px 20px;
    color: white;
    text-decoration: none;
    font-weight: 600;
    transition: background 0.3s;
}

.nav-menu a:hover {
    background: rgba(255,255,255,0.1);
}

/* ========================================
   QUICK MENU BAR
   ======================================== */

.quick-menu-bar {
    width: 100%;
    background: white;
    padding: 15px 0;
    border-bottom: 1px solid #e0e0e0;
}

.quick-menu-bar .menu-wrapper {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0 20px;
}

.quick-menu {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.quick-menu-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--primary-red);
    color: white;
    text-decoration: none;
    border-radius: 25px;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s;
}

.quick-menu-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

.quick-menu-item.soi-cau { background: #ff6600; }
.quick-menu-item.thong-ke { background: #009688; }
.quick-menu-item.ket-qua { background: #4CAF50; }
.quick-menu-item.quay-thu { background: #9C27B0; }

/* ========================================
   MAIN CONTENT
   ======================================== */

.site-content {
    width: 100%;
    padding: 20px 0;
}

.site-content .container {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0 20px;
}

/* ========================================
   HOMEPAGE SECTIONS
   ======================================== */

.homepage-section {
    max-width: var(--max-width);
    margin: 0 auto 20px;
    background: white;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.section-header {
    background: linear-gradient(90deg, var(--primary-red) 0%, #ff6600 100%);
    color: white;
    padding: 12px 20px;
    border: none;
}

.section-title {
    font-size: 16px;
    font-weight: bold;
    text-transform: uppercase;
    margin: 0;
}

.section-content {
    padding: 15px;
}

/* ========================================
   RESPONSIVE DESIGN
   ======================================== */

@media (max-width: 1200px) {
    :root {
        --max-width: 100%;
    }
    
    .hero-banner-content,
    .header-wrapper,
    .nav-wrapper,
    .quick-menu-bar .menu-wrapper,
    .homepage-section,
    .site-content .container {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media (max-width: 768px) {
    /* Mobile header */
    .header-info {
        display: none;
    }
    
    .mobile-menu-toggle {
        display: block;
    }
    
    /* Mobile navigation */
    #site-navigation {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: var(--dark-blue);
        z-index: 9999;
    }
    
    #site-navigation.active {
        display: block;
    }
    
    .nav-menu {
        flex-direction: column;
        padding: 20px;
    }
    
    .nav-menu a {
        width: 100%;
        padding: 15px;
        border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    
    /* Mobile quick menu */
    .quick-menu {
        overflow-x: auto;
        flex-wrap: nowrap;
        justify-content: flex-start;
        gap: 8px;
        padding-bottom: 5px;
    }
    
    .quick-menu-item {
        flex-shrink: 0;
        font-size: 12px;
        padding: 8px 15px;
    }
    
    /* Mobile banner */
    .hero-banner-content,
    .single-banner,
    .single-banner img {
        height: 150px;
    }
    
    /* Mobile sections */
    .homepage-section {
        border-radius: 0;
        margin-bottom: 10px;
    }
    
    .section-header {
        padding: 10px 15px;
    }
    
    .section-title {
        font-size: 14px;
    }
    
    .section-content {
        padding: 10px;
    }
}

/* ========================================
   UTILITIES
   ======================================== */

.container {
    width: 100%;
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0 20px;
}

.text-center { text-align: center; }
.mt-10 { margin-top: 10px; }
.mt-20 { margin-top: 20px; }
.mb-10 { margin-bottom: 10px; }
.mb-20 { margin-bottom: 20px; }

/* ========================================
   CLEAN UP - Remove all unwanted lines
   ======================================== */

#masthead::before,
#masthead::after,
.header-wrapper::before,
.header-wrapper::after,
.site-header::before,
.site-header::after,
#site-navigation::before,
#site-navigation::after,
.nav-wrapper::before,
.nav-wrapper::after {
    display: none !important;
    content: none !important;
}

/* Remove all borders that might cause lines */
#masthead,
#masthead *,
.header-wrapper,
.header-wrapper *,
#site-navigation,
#site-navigation * {
    border-top: none;
    border-bottom: none;
    box-shadow: none;
    outline: none;
}

/* ========== hide-headers-and-borders.css ========== */
/* Hide Section Headers and Borders When Title is Hidden */

/* When Customizer setting is OFF - Hide only headers, keep content visible */

/* Hide section header but keep content */
.section-header,
.section-title {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Remove borders and backgrounds from sections */
.homepage-section {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    margin-bottom: 20px !important;
}

/* Remove borders from section content */
.section-content {
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* Remove borders from specific sections */
.results-section,
.soicau-section,
.statistics-section,
.blog-section {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Keep the content visible - explicitly show */
.results-section .section-content,
.soicau-section .section-content,
.statistics-section .section-content,
.blog-section .section-content {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
}

/* Ensure inner content remains visible */
.soicau-grid,
.soicau-box,
.stat-box,
.results-table,
.results-tabs,
.results-date,
.table-responsive,
.results-stats,
.soicau-items,
.soicau-tips,
.stats-container,
.statistics-table,
.statistics-content,
.thong-ke-table,
.thong-ke-content,
.lottery-stats,
.lottery-statistics {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Force hiển thị tất cả tables và wrappers của plugin */
.section-content table,
.statistics-section table {
    display: table !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    width: 100% !important;
}

.section-content tbody,
.statistics-section tbody {
    display: table-row-group !important;
    visibility: visible !important;
}

.section-content tr,
.statistics-section tr {
    display: table-row !important;
    visibility: visible !important;
}

.section-content td,
.section-content th,
.statistics-section td,
.statistics-section th {
    display: table-cell !important;
    visibility: visible !important;
}

.section-content .table,
.section-content .wp-block-table,
.section-content div[class*="table"],
.section-content div[class*="stats"],
.section-content div[class*="statistics"],
.section-content div[class*="thong-ke"],
.section-content div[class*="lottery"],
.section-content div[class*="xoso"],
.section-content div[class*="lo-"],
.section-content .widget,
.section-content .plugin-content,
.statistics-section .table,
.statistics-section div[class*="table"],
.statistics-section div[class*="stats"],
.statistics-section div[class*="lottery"],
.statistics-section div[class*="xoso"],
.statistics-section .widget,
.statistics-section > div,
.statistics-section > div > *,
.results-section > div,
.results-section > div > * {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    overflow: visible !important;
    max-height: none !important;
}

/* Remove any decorative borders/shadows */
.homepage-section::before,
.homepage-section::after,
.section-content::before,
.section-content::after {
    display: none !important;
}

/* Remove card-like styling */
.homepage-section {
    padding: 0 !important;
}

/* Mobile specific */
@media (max-width: 767px) {
    .homepage-section {
        border: none !important;
        box-shadow: none !important;
        background: transparent !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    .section-header,
    .section-title {
        display: none !important;
    }
    
    .section-content {
        border: none !important;
        padding: 0 !important;
    }
}

/* ========== hide-sections.css ========== */
/* Hide Section Header/Title/Border - Keep Content Visible */

/* Hide section-header globally */
.section-header {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Hide section-title globally */
.section-title {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Remove borders/backgrounds from section wrapper ONLY - Keep content visible */
.homepage-section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* IMPORTANT: Keep .section-content VISIBLE - Only hide headers */
.section-content {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    opacity: 1 !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Hide only headers/titles of specific sections - NOT content */
.results-section .section-header,
.soicau-section .section-header,
.statistics-section .section-header,
.blog-section .section-header,
.results-section .section-title,
.soicau-section .section-title,
.statistics-section .section-title,
.blog-section .section-title {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Keep section-content of specific sections VISIBLE */
.results-section .section-content,
.soicau-section .section-content,
.statistics-section .section-content,
.blog-section .section-content {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    opacity: 1 !important;
}

/* Force hiển thị tất cả content bên trong statistics section */
.statistics-section .section-content *,
.statistics-section .section-content * > *,
.section-content [class*="statistic"],
.section-content [class*="thong-ke"],
.section-content [class*="lo-"],
.section-content [id*="statistic"],
.section-content [id*="thong-ke"] {
    visibility: visible !important;
    opacity: 1 !important;
}

/* Override cho TOÀN BỘ statistics và results sections - Không ẩn bất cứ gì */
.statistics-section,
.results-section,
.homepage-section.statistics-section,
.homepage-section.results-section {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    overflow: visible !important;
}

/* Ensure toàn bộ children của statistics/results sections đều visible */
.statistics-section > *:not(.section-header):not(.section-title),
.results-section > *:not(.section-header):not(.section-title),
.statistics-section .section-content > *,
.results-section .section-content > * {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
}

/* HIGH SPECIFICITY override - Đảm bảo plugin content ALWAYS visible */
html body .statistics-section,
html body .results-section,
html body .statistics-section .section-content,
html body .results-section .section-content,
html body .statistics-section > div,
html body .results-section > div {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

html body .statistics-section table,
html body .results-section table,
html body .section-content table {
    display: table !important;
    visibility: visible !important;
    opacity: 1 !important;
}

html body .statistics-section tbody,
html body .results-section tbody,
html body .section-content tbody {
    display: table-row-group !important;
}

html body .statistics-section tr,
html body .results-section tr,
html body .section-content tr {
    display: table-row !important;
}

html body .statistics-section td,
html body .statistics-section th,
html body .results-section td,
html body .results-section th,
html body .section-content td,
html body .section-content th {
    display: table-cell !important;
}

/* Remove decorative elements from headers only */
.section-header::before,
.section-header::after,
.section-title::before,
.section-title::after {
    display: none !important;
}

/* Mobile and Desktop - Hide headers/titles only */
@media (max-width: 767px) {
    .section-header,
    .section-title {
        display: none !important;
    }
    
    /* Keep content visible */
    .section-content {
        display: block !important;
        visibility: visible !important;
    }
}

@media (min-width: 768px) {
    .section-header,
    .section-title {
        display: none !important;
    }
    
    /* Keep content visible */
    .section-content {
        display: block !important;
        visibility: visible !important;
    }
}

/* ========== remove-homepage-sections.css ========== */
/**
 * DISABLED - Chỉ ẩn header/title, GIỮ nội dung plugin hiển thị
 * Nếu muốn ẩn hoàn toàn sections, uncomment code bên dưới
 */

/* COMMENTED OUT - Uncomment nếu muốn ẩn HOÀN TOÀN sections */
/*
.homepage-section.results-section,
.homepage-section.soicau-section,
.homepage-section.statistics-section,
.homepage-section.blog-section,
.section-results,
.section-soicau,
.section-statistics,
.section-blog {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

#section-results,
#section-soicau,
#section-statistics,
#section-blog,
[id*="results"],
[id*="soicau"],
[id*="statistics"],
[id*="blog-section"] {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.results-wrapper,
.soicau-wrapper,
.statistics-wrapper,
.blog-wrapper,
.results-container,
.soicau-container,
.statistics-container,
.blog-container {
    display: none !important;
    visibility: hidden !important;
}

@media all {
    .homepage-section.results-section,
    .homepage-section.soicau-section,
    .homepage-section.statistics-section,
    .homepage-section.blog-section {
        display: none !important;
    }
}
*/

/* Ensure custom sections remain visible */
.homepage-section.custom-section,
[class*="custom-section"]:not([class*="results"]):not([class*="soicau"]):not([class*="statistics"]):not([class*="blog"]) {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
}

/* Remove any empty space */
.site-main > .homepage-section:empty {
    display: none !important;
}

/* ========== thumbnail-mobile-fix.css ========== */
/**
 * Fix Thumbnail Display on Mobile for Custom Sections
 * Ensures proper layout for posts with thumbnails
 */

/* Mobile Thumbnail Layout Fix */
@media (max-width: 767px) {
    /* Container fixes */
    .custom-section .posts-list-thumbnail {
        display: block !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
    
    /* Post item container */
    .custom-section .post-item-thumbnail {
        display: block !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
    
    /* Link container - Flex layout */
    .custom-section .post-link-thumbnail {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        width: 100% !important;
        padding: 10px !important;
        gap: 10px !important;
        box-sizing: border-box !important;
    }
    
    /* Thumbnail wrapper - Fixed size */
    .custom-section .post-thumbnail-wrapper {
        display: block !important;
        flex: 0 0 auto !important;
        flex-shrink: 0 !important;
        width: 80px !important;
        height: 80px !important;
        min-width: 80px !important;
        max-width: 80px !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 6px !important;
        overflow: hidden !important;
        position: relative !important;
    }
    
    /* Thumbnail image */
    .custom-section .post-thumbnail-img,
    .custom-section .post-thumbnail-wrapper img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Placeholder for missing images */
    .custom-section .post-thumbnail-placeholder {
        width: 100% !important;
        height: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #f0f0f0 !important;
        font-size: 20px !important;
        color: #ccc !important;
    }
    
    /* Content wrapper - Flexible width */
    .custom-section .post-content-wrapper {
        display: block !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: auto !important;
        overflow: hidden !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Post title */
    .custom-section .post-title-thumbnail {
        display: block !important;
        display: -webkit-box !important;
        font-size: 14px !important;
        line-height: 1.4 !important;
        font-weight: 600 !important;
        margin: 0 0 5px 0 !important;
        padding: 0 !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        word-wrap: break-word !important;
    }
    
    /* Post excerpt */
    .custom-section .post-excerpt {
        display: block !important;
        display: -webkit-box !important;
        font-size: 12px !important;
        line-height: 1.4 !important;
        color: #666 !important;
        margin: 0 !important;
        padding: 0 !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        word-wrap: break-word !important;
    }
    
    /* Fix for WordPress generated images */
    .custom-section .post-thumbnail-wrapper .attachment-thumbnail,
    .custom-section .post-thumbnail-wrapper .attachment-medium,
    .custom-section .post-thumbnail-wrapper .attachment-large {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }
    
    /* Ensure no overflow */
    .custom-section .stat-box-content {
        overflow: hidden !important;
    }
}

/* Small mobile devices (max-width: 480px) */
@media (max-width: 480px) {
    .custom-section .post-thumbnail-wrapper {
        width: 70px !important;
        height: 70px !important;
        min-width: 70px !important;
        max-width: 70px !important;
    }
    
    .custom-section .post-link-thumbnail {
        padding: 8px !important;
        gap: 8px !important;
    }
    
    .custom-section .post-title-thumbnail {
        font-size: 13px !important;
    }
    
    .custom-section .post-excerpt {
        font-size: 11px !important;
    }
}

/* Tablet (768px to 1024px) */
@media (min-width: 768px) and (max-width: 1024px) {
    .custom-section .post-thumbnail-wrapper {
        width: 100px !important;
        height: 100px !important;
        min-width: 100px !important;
    }
    
    .custom-section .post-link-thumbnail {
        padding: 12px !important;
        gap: 12px !important;
    }
}

/* Debug helper - Remove in production */
.debug-border .post-thumbnail-wrapper {
    border: 2px solid red !important;
}
.debug-border .post-content-wrapper {
    border: 2px solid blue !important;
}
