/**
 * dir: assets/css/
 * file: header-search.css
 * ไฟล์จัดการสไตล์ส่วนหัวของเว็บ (Header), Navigation, Mobile Menu, Polylang, Ajax Search
 * [Optimized Version] - ล้างเส้นใต้ทั้งเว็บ และล้างสไตล์ปุ่ม Hamburger มือถือ
*/

/* =========================================
   1. GLOBAL OVERRIDES (ล้างค่าธีมแม่ทั้งเว็บ)
   ========================================= */

/* 🌟 ล้างเส้นใต้ลิงก์ทั้งหมดทั้งเว็บ (Global Link Reset) */
a, 
a:hover, 
a:focus, 
a:active {
    text-decoration: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* 🌟 GLOBAL FOCUS: ล้างค่าเส้นขอบ Focus (เส้นประ/สี่เหลี่ยม) ของธีมแม่ */
button:focus,
.btn:focus,
.search-submit-button-internal:focus,
.btn-close:focus,
.btn-mobile-back:focus,
.search-filter-buttons .btn:focus,
#gwc-pro-currency-select:focus,
.search-input-field:focus {
    outline: none !important; 
    /* เงาเรืองแสงสีเขียว (Glow Effect) ขอบมนตามรูปทรงของปุ่ม */
    box-shadow: 0 0 0 3px rgba(4, 163, 156, 0.3) !important; 
}

/* ให้เส้น Focus โชว์เฉพาะเวลากดคีย์บอร์ด (Tab) ไม่โชว์ตอนใช้เมาส์คลิก */
button:focus:not(:focus-visible),
.btn:focus:not(:focus-visible) {
    box-shadow: none !important;
    outline: none !important;
}


/* =========================================
   2. HEADER STRUCTURE (โครงสร้างหลัก)
   ========================================= */
.header-top-bar {
    background-color: var(--bg-light);
    width: 100%;
    position: relative;
    z-index: 1001;
}
.gustabe-header-full-width {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    width: 100%;
    z-index: 1000;
}
.header-wrapper { margin: 0 auto; }
.header-main-nav {
    background-color: #ffffff;
    width: 100%;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05); 
}

/* ยุบรวมขนาดโลโก้ Desktop และ Mobile */
.gustabe-header-full-width .custom-logo.desktop-logo,
.gustabe-header-full-width .custom-logo-mobile {
    width: auto; max-width: 100%; height: auto;
}
.gustabe-header-full-width .custom-logo.desktop-logo { max-height: 50px; }
.gustabe-header-full-width .custom-logo-mobile { max-height: 40px; display: block; }
.gustabe-header-full-width .site-branding a { color: var(--text-dark); }

/* รวบตึงเอฟเฟกต์ Hover "สีเขียว" ของลิงก์และไอคอน */
.search-icon-link,
.gustabe-header-full-width .main-navigation ul li a,
.gustabe-header-full-width .header-actions .cart-contents,
.gustabe-header-full-width .header-actions .my-account-link,
.woocommerce-breadcrumb a,
.gustabe-header-full-width .site-branding .site-title.desktop-logo a {
    color: var(--text-dark);
    transition: all 0.3s ease;
}
.gustabe-header-full-width .header-actions .cart-contents, .search-icon-link { color: var(--text-gray); }

/* เปลี่ยนเป็นสีธีมเมื่อ Hover หรือ Active */
.search-icon-link:hover,
.gustabe-header-full-width .main-navigation ul li a:hover,
.gustabe-header-full-width .main-navigation ul li.current-menu-item > a,
.gustabe-header-full-width .header-actions .cart-contents:hover,
.gustabe-header-full-width .header-actions .my-account-link:hover,
.woocommerce-breadcrumb a:hover,
.gustabe-header-full-width .site-branding .site-title.desktop-logo a:hover {
    color: var(--primary-color) !important;
}


/* =========================================
   3. DESKTOP NAVIGATION & MEGA MENU
   ========================================= */
.gustabe-header-full-width .main-navigation ul { list-style: none; margin: 0; padding: 0; }
.gustabe-header-full-width .main-navigation > ul > li { margin: 0 15px; }
.gustabe-header-full-width .main-navigation > ul > li > a { padding: 10px 0; display: block; font-weight: 500; }

@media (min-width: 992px) {
    .gustabe-header-full-width .mobile-logo, .gustabe-header-full-width .navbar-toggler { display: none !important; }
    .gustabe-header-full-width .desktop-logo { display: flex !important; align-items: center; }

    /* Mega Menu (Floating Card) */
    .gustabe-header-full-width .main-navigation { position: relative; }
    .gustabe-header-full-width .main-navigation ul li.menu-item-has-children > .sub-menu {
        position: absolute;
        top: calc(100% + 20px); left: 50%;
        transform: translateX(-50%) translateY(20px);
        width: 100vw; max-width: 1000px;
        background-color: #ffffff;
        border-radius: 24px;
        box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
        border: 1px solid #edf2f7;
        padding: 40px; display: flex; gap: 30px;
        opacity: 0; visibility: hidden;
        transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
        z-index: 1000;
    }
    .gustabe-header-full-width .main-navigation ul li.menu-item-has-children:hover > .sub-menu {
        opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0);
    }
    .gustabe-header-full-width .main-navigation ul li.menu-item-has-children > .sub-menu > li { flex: 1; margin: 0; padding: 0; }
    
    /* หัวข้อคอลัมน์ */
    .gustabe-header-full-width .main-navigation ul li.menu-item-has-children > .sub-menu > li > a {
        font-weight: 800; font-size: 1.1em; color: var(--primary-color);
        margin-bottom: 20px; border-bottom: 2px solid #f1f5f9; padding-bottom: 15px; display: block;
    }
    
    /* เมนูย่อยข้างในคอลัมน์ (ปุ่ม Card Hover) */
    .gustabe-header-full-width .main-navigation ul li.menu-item-has-children > .sub-menu .sub-menu {
        position: static; box-shadow: none; border: none; padding: 0; visibility: visible; opacity: 1; transform: none; display: block;
    }
    .gustabe-header-full-width .main-navigation ul li.menu-item-has-children > .sub-menu .sub-menu li { margin: 0 0 5px 0; }
    .gustabe-header-full-width .main-navigation ul li.menu-item-has-children > .sub-menu .sub-menu li a {
        font-weight: 500; font-size: 15px; color: var(--text-gray);
        padding: 12px 15px; border-radius: 12px; display: flex; align-items: center; gap: 10px; transition: all 0.2s ease;
    }
    .gustabe-header-full-width .main-navigation ul li.menu-item-has-children > .sub-menu .sub-menu li a:hover {
        background-color: var(--bg-light); transform: translateX(5px);
    }

    /* แบนเนอร์โปรโมชั่น */
    .mega-promo { background: linear-gradient(135deg, var(--primary-color), #083c23); border-radius: 16px; padding: 30px !important; }
    .mega-promo > a { color: #fff !important; border-bottom: none !important; margin-bottom: 10px !important; font-size: 1.3em !important; }
    .mega-promo .sub-menu li a { color: rgba(255,255,255,0.8) !important; padding: 8px 0 !important; }
    .mega-promo .sub-menu li a:hover { background: transparent !important; color: #fff !important; transform: translateX(5px) !important; }
}


/* =========================================
   4. MOBILE NAVIGATION & HAMBURGER
   ========================================= */
@media (max-width: 991.98px) {
    .gustabe-header-full-width .desktop-logo { display: none !important; }
    .gustabe-header-full-width .mobile-logo { display: flex !important; align-items: center; }
    
    /* 🌟 THE FIX: ล้างบางสไตล์ปุ่ม Hamburger มือถือ */
    .gustabe-header-full-width .navbar-toggler { 
        display: flex !important; 
        align-items: center;
        justify-content: center;
        border: none !important; 
        background: transparent !important; /* ลบพื้นหลังสีเทา */
        padding: 5px !important; /* ให้พื้นที่กดนิดหน่อย */
        outline: none !important; 
        margin-left: 10px;
        box-shadow: none !important; /* ลบเงา Bootrap */
    }
    .gustabe-header-full-width .navbar-toggler:focus,
    .gustabe-header-full-width .navbar-toggler:active,
    .gustabe-header-full-width .navbar-toggler:hover {
        background: transparent !important; /* ห้ามเปลี่ยนสีพื้นหลังตอนกด */
        border: none !important;
        box-shadow: none !important;
        outline: none !important;
    }
    .gustabe-header-full-width .navbar-toggler i.huge { 
        vertical-align: middle; 
        transition: color 0.3s; 
    }
    .gustabe-header-full-width .navbar-toggler:hover i.huge { 
        color: var(--primary-color) !important; 
    }

    /* UI เมนูหลักและปุ่มกด */
    .mobile-main-navigation ul { list-style: none !important; padding-left: 0 !important; margin: 0 !important; }
    .mobile-main-navigation li { margin-bottom: 8px !important; }
    .mobile-main-navigation a {
        display: block !important; padding: 15px 20px !important;
        color: var(--text-dark) !important; font-size: 16px !important; font-weight: 500 !important;
        background-color: #f8f9fa !important; border-radius: 12px !important; transition: all 0.2s ease !important;
    }
    .mobile-main-navigation a:hover, .mobile-main-navigation li.current-menu-item > a {
        background-color: var(--primary-light) !important; color: var(--primary-color) !important; font-weight: 700 !important;
    }

    /* --- Drill-down Logic (ระบบสไลด์) แก้บั๊กปุ่มทับเมนู --- */
    .btn-mobile-back {
        width: 100%; text-align: left; background: #f1f5f9; border: none; padding: 15px 20px;
        font-weight: bold; color: var(--primary-color); border-radius: 12px; 
        display: flex; align-items: center; gap: 10px; cursor: pointer;
        position: absolute; top: 0; left: 0; z-index: 10;
        transform: translateX(-100%); transition: transform 0.3s ease;
        height: 56px; /* ★ ฟิกความสูงปุ่มไปเลย จะได้คำนวณระยะหลบง่ายๆ */
    }
    .btn-mobile-back.active { transform: translateX(0); display: flex !important; }
    
    .drilldown-wrapper { width: 100%; transition: transform 0.3s ease; position: relative; }
    .drilldown-wrapper.shifted { transform: translateX(-100%); } /* ลบ padding-top เดิมออก */
    
    .mobile-main-navigation li.menu-item-has-children > a { display: flex !important; justify-content: space-between; align-items: center; }
    .mobile-main-navigation li.menu-item-has-children > a::after { content: '\276F'; font-size: 12px; color: #94a3b8; }
    
    .mobile-main-navigation .sub-menu {
        position: absolute; top: 0; left: 100%; width: 100%; height: auto;
        background: #fff; visibility: hidden; opacity: 0; z-index: 5;
        padding-top: 70px !important; /* ★ หัวใจสำคัญ: ดันหัวเมนูย่อยลงมาหลบปุ่ม 56px + ระยะห่าง */
    }
    .mobile-main-navigation .sub-menu.active-sub { visibility: visible; opacity: 1; }
    .mobile-main-navigation .sub-menu a { background-color: #fff !important; border: 1px solid var(--border-light) !important; margin-bottom: 5px; }

    /* Bottom Sheet User Menu */
    #site-header .header-actions .dropdown-menu {
        display: none; position: fixed !important; inset: auto 0 0 0 !important;
        width: 100% !important; margin: 0 !important; transform: none !important;
        border-radius: 20px 20px 0 0; border: none; padding: 20px 15px 30px 15px;
        z-index: 10000; background: #fff; animation: none;
    }
    #site-header .header-actions .dropdown-menu.show {
        display: block !important; animation: slideUpMobile 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
        box-shadow: 0 -5px 30px rgba(0,0,0,0.2);
    }
    #site-header .header-actions .dropdown-menu:before {
        content: ""; display: block; width: 40px; height: 4px; background-color: var(--border-color); border-radius: 10px; margin: 0 auto 20px auto;
    }
    #site-header .header-actions .dropdown-item {
        padding: 12px 10px; font-size: 1.1em; border-bottom: 1px solid var(--bg-light); display: flex; align-items: center; color: var(--text-dark);
    }
    #site-header .header-actions .dropdown-item i.huge { font-size: 1.5em; width: 40px; text-align: center; color: var(--text-gray); }
    .my-account-link-logged-in-split-text { background: transparent; padding: 0; }
    .my-account-link-logged-in-split-text .d-flex.flex-column { display: none; }
    .my-account-link-logged-in-split-text .avatar-wrapper img { width: 42px; height: 42px; border: 2px solid #fff; box-shadow: 0 2px 5px rgba(0,0,0,0.15); margin: 0; }
    #site-header .header-actions .dropdown-divider { display: none; }
}

@keyframes slideUpMobile { from { transform: translateY(100%); } to { transform: translateY(0); } }

/* 🌟 THE FIX: สไตล์ปุ่มกากบาท (Close) ปิดเมนูมือถือ */
    .offcanvas-header .btn-close {
        box-shadow: none !important;
        outline: none !important;
        border: none !important;
        opacity: 0.5; /* ปกติให้จางๆ นิดนึง */
        transition: all 0.3s ease !important;
        background-color: transparent !important;
    }
    .offcanvas-header .btn-close:hover,
    .offcanvas-header .btn-close:focus,
    .offcanvas-header .btn-close:active {
        opacity: 1; /* ชัดขึ้นตอนกด/ชี้ */
        transform: rotate(90deg); /* ลูกเล่นหมุนกากบาท */
        box-shadow: none !important;
        outline: none !important;
        background-color: transparent !important; /* ห้ามมีสีพื้นหลัง */
    }

    /* --- บังคับ Override สไตล์ธีมแม่ (reset.css) --- */
.mobile-main-navigation button.btn-mobile-back:focus,
.mobile-main-navigation button.btn-mobile-back:hover,
.mobile-main-navigation button.btn-mobile-back:active,
.mobile-main-navigation [type=button].btn-mobile-back:focus,
.mobile-main-navigation [type=button].btn-mobile-back:hover {
    background-color: #f1f5f9 !important; /* บังคับสีพื้นหลังเดิม */
    color: var(--primary-color) !important; /* บังคับตัวหนังสือสีเขียวธีม */
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* =========================================
   5. USER ACCOUNTS & HEADER ACTIONS (Desktop)
   ========================================= */
.my-account-link-split-text {
    background-color: var(--primary-color); color: #fff !important; border-radius: 5px; padding: 8px 12px; display: flex; align-items: center;
}
.my-account-link-split-text:hover { background-color: var(--primary-hover); }
.my-account-link-logged-in-split-text { background-color: #fff; border-radius: 8px; padding: 10px 15px; display: flex; align-items: center; }
.my-account-link-logged-in-split-text .avatar-wrapper img { border-radius: 50%; vertical-align: middle; margin-right: 8px; }
.my-account-link-logged-in-split-text:hover { background-color: var(--bg-gray); box-shadow: var(--shadow-sm); }
.dropdown { position: relative; }
.dropdown-menu { 
    display: none;
    position: absolute;
    top: calc(100% + 15px); /* เว้นระยะห่างจากปุ่ม 15px ให้ดูโปร่งขึ้น */
    right: 0;
    z-index: 1000;
    min-width: 14rem;
    background-color: #fff;
    border-radius: 16px; 
    box-shadow: 0 10px 40px rgba(0,0,0,0.08); 
    border: 1px solid rgba(0,0,0,0.05); 
    padding: 12px; 
    animation: fadeInDropdown 0.25s cubic-bezier(0.165, 0.84, 0.44, 1);
}
/* สร้างสะพานที่มองไม่เห็นเชื่อมระหว่างปุ่มกับเมนู กันเมาส์หลุด (Hover bridge) */
.dropdown-menu::before {
    content: "";
    position: absolute;
    top: -15px;
    left: 0;
    width: 100%;
    height: 15px;
    background: transparent;
}
@keyframes fadeInDropdown {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}
.dropdown-menu.show,
.dropdown:hover .dropdown-menu {
    display: block;
}
.dropdown-item {
    display: block;
    padding: 12px 18px;
    color: var(--text-dark, #333);
    border-radius: 10px;
    transition: all 0.2s ease;
    text-decoration: none;
    font-weight: 500;
    margin-bottom: 2px;
}
.dropdown-item:hover {
    background-color: #f4f7fa;
    color: var(--primary-color, #04a39c);
    transform: translateX(3px); /* เลื่อนขวาจังหวะ hover นิดนึงให้ดูพรีเมียม */
}
.dropdown-divider {
    height: 1px;
    margin: 8px 0;
    overflow: hidden;
    background-color: rgba(0,0,0,0.05);
    border: none;
}
.cart-contents { position: relative; font-size: 1.2em; }
.cart-count { font-size: 0.7em; background-color: var(--color-danger); padding: .25em .6em; border-radius: 50%; color: #fff; position: absolute; top: 0; left: 100%; transform: translate(-50%, -50%); }


/* =========================================
   6. MODERN SEARCH MODAL & COMPONENTS
   ========================================= */
.modal-backdrop.show { opacity: 0.7; backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); }
#search-popup-modal .modal-dialog { max-width: 600px; margin-top: 10vh; }
#search-popup-modal .modal-content { border: none; border-radius: 24px; box-shadow: var(--shadow-float); overflow: hidden; }
#search-popup-modal .modal-header { border-bottom: none; padding: 25px 25px 5px 25px; }
#search-popup-modal .modal-title { font-weight: 700; font-size: 1.5rem; color: var(--text-dark); }
#search-popup-modal .modal-body { padding: 20px 30px 40px 30px; }

/* Input ค้นหา */
.search-input-container { position: relative; width: 100%; }
.search-input-field { width: 100%; background-color: var(--bg-gray); border: 2px solid transparent; border-radius: 16px; padding: 15px 60px 15px 20px; font-size: 1.1rem; color: var(--text-dark); transition: all 0.3s; height: 60px; }
.search-input-field:focus { background-color: #ffffff; border-color: var(--primary-color); outline: none; box-shadow: 0 0 0 4px rgba(4, 163, 156, 0.1); }
.search-submit-button-internal { position: absolute; right: 15px; top: 50%; transform: translateY(-50%); background-color: var(--primary-color); width: 40px; height: 40px; border-radius: 12px; display: flex; align-items: center; justify-content: center; border: none; color: #fff !important; z-index: 2; transition: all 0.2s; cursor: pointer; }
.search-submit-button-internal:hover { background-color: var(--primary-hover); transform: translateY(-50%) scale(1.05); }

/* ปุ่ม Chips ตัวกรอง (Radio) */
.search-filter-buttons .btn-check { position: absolute; clip: rect(0,0,0,0); }
.search-filter-buttons .btn { border: 1px solid var(--border-color); color: var(--text-gray); background-color: #fff; border-radius: 50px; padding: 8px 20px; font-size: 0.95rem; font-weight: 500; transition: all 0.2s; margin-right: 5px; }
.search-filter-buttons .btn:hover { background-color: var(--bg-light); color: var(--text-dark); }
.search-filter-buttons .btn-check:checked + .btn { background-color: var(--primary-light); border-color: var(--primary-color); color: var(--primary-color); font-weight: 700; box-shadow: none; }

/* ปุ่มปิด Modal */
#search-popup-modal .btn-close { border: none !important; color: var(--text-dark); background-color: var(--bg-gray); opacity: 1; padding: 0; width: 32px; height: 32px; border-radius: 50%; display: flex; align-items: center; justify-content: center; transition: all 0.2s; background-size: 12px; }
#search-popup-modal .btn-close:hover { background-color: #e4e6e9; transform: rotate(90deg); }

/* Autocomplete (Typeahead) */
.tt-menu { position: absolute; top: 100%; left: 0; z-index: 9999; display: none; width: 100%; background-color: #fff; border: 1px solid rgba(0, 0, 0, 0.15); border-radius: 8px; box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); padding: 10px 0; margin-top: 5px; }
.tt-suggestion { padding: 8px 20px; cursor: pointer; border-bottom: 1px solid var(--border-light); color: var(--text-dark); }
.tt-suggestion:hover, .tt-suggestion.tt-cursor { background-color: var(--primary-color); color: #fff; }
.gustabe-search-item { transition: background-color 0.2s; cursor: pointer; }
.gustabe-search-item:hover { background-color: var(--bg-light); }
#gustabe-search-results:not(:empty) + #search-default-state { display: none; }

/* Global Button Override สำหรับหน้า Search */
.no-results-state .btn-primary { background-color: var(--primary-color); border: none; border-radius: 50px; padding: 10px 30px; color: #fff; }
.no-results-state .btn-primary:hover { background-color: var(--primary-hover); transform: translateY(-2px); }


/* =========================================
   7. PLUGINS & WIDGETS (Currency, Polylang, Breadcrumb)
   ========================================= */
/* Currency Switcher */
.gustab-currency-switcher { display: inline-block; position: relative; margin: 0; }
#gwc-pro-currency-select {
    appearance: none; -webkit-appearance: none; background-color: #ffffff; border: 1px solid var(--border-color); border-radius: 8px; padding: 8px 35px 8px 15px; font-size: 14px; font-weight: 500; color: var(--text-dark); cursor: pointer; transition: all 0.3s;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333333%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat; background-position: right 12px top 50%; background-size: 10px auto;
}
#gwc-pro-currency-select:hover { background-color: var(--bg-light); }
#gwc-pro-currency-select:focus { outline: none; border-color: var(--primary-color); box-shadow: 0 0 0 3px rgba(4, 163, 156, 0.2); }

/* Polylang Switcher */
.language-switcher-desktop ul { list-style: none; padding: 0; margin: 0; display: flex; gap: 10px; align-items: center; }
.language-switcher-desktop ul li:not(:last-child):after { content: "|"; margin-left: 10px; color: #ddd; }
.language-switcher-desktop ul li a { color: var(--text-muted); font-weight: 500; text-transform: uppercase; font-size: 0.95em; transition: color 0.3s; }
.language-switcher-desktop ul li.current-lang a { color: var(--primary-color); font-weight: 700; pointer-events: none; }
.language-switcher-desktop ul li a:hover { color: var(--primary-color); }



/* WooCommerce Breadcrumb & Title - Premium Lab Style */
.woocommerce .woocommerce-breadcrumb { 
    margin: 20px 0 30px 0; 
    padding: 12px 24px; 
    background-color: #f8fafc; 
    border-radius: 12px;
    border-left: 4px solid var(--primary-color, #04a39c);
    font-size: 14px; 
    color: #64748b; 
    display: flex; 
    align-items: center; 
    flex-wrap: wrap;
    font-weight: 500;
    box-shadow: 0 2px 10px rgba(0,0,0,0.02);
}
.woocommerce-breadcrumb a { 
    color: var(--primary-color, #04a39c);
    font-weight: 600;
    transition: all 0.2s ease;
    text-decoration: none;
    margin: 0 5px;
}
.woocommerce-breadcrumb a:first-child {
    margin-left: 0;
}
.woocommerce-breadcrumb a:hover { 
    color: var(--primary-hover, #038a84); 
}

/* WooCommerce Page Title */
.woocommerce-products-header__title.page-title {
    font-size: 2.2rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 30px 0;
    text-align: left;
    position: relative;
    padding-bottom: 15px;
    letter-spacing: -0.02em;
}
.woocommerce-products-header__title.page-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 80px;
    height: 4px;
    background: linear-gradient(90deg, var(--primary-color, #04a39c) 0%, rgba(4,163,156,0.1) 100%);
    border-radius: 2px;
}
/* --- Polylang Switcher (Mobile Button Style - ตัวย่อ ไม่มีธง) --- */
.language-switcher-mobile { 
    width: 100%;
}
.language-switcher-mobile ul { 
    list-style: none; padding: 0; margin: 0; 
    display: grid; grid-template-columns: repeat(auto-fit, minmax(80px, 1fr)); gap: 10px; 
}
.language-switcher-mobile ul li { width: 100%; }
.language-switcher-mobile ul li a { 
    display: flex; align-items: center; justify-content: center;
    color: var(--text-gray); 
    font-weight: 600; 
    text-transform: uppercase;
    background: #fff; 
    padding: 8px 10px; 
    border-radius: 12px; 
    border: 1px solid var(--border-color); 
    transition: all 0.2s ease; 
    font-size: 13px;
    width: 100%;
    text-align: center;
    white-space: nowrap;
}
.language-switcher-mobile ul li a:hover {
    color: var(--text-dark);
    border-color: var(--text-gray);
    background: var(--bg-light);
}
.language-switcher-mobile ul li.current-lang a { 
    background: var(--primary-color); 
    border-color: var(--primary-color); 
    color: #fff; 
    box-shadow: 0 4px 10px rgba(4, 163, 156, 0.2); 
    pointer-events: none; 
}
.language-switcher-mobile ul li img { display: none !important; }