/* ==========================================================================
   Áo mưa Linh Đan — CSS chính
   1. Nền tảng   2. Thành phần chung   3. Header   4. Trang chủ
   5. Sản phẩm   6. Bài viết / trang   7. Footer   8. Nút nổi   9. Responsive
   Màu lấy từ Giao diện → Tuỳ biến (biến --ld-primary / --ld-accent, in trong <head>).
   ========================================================================== */

/* --- 1. Nền tảng --------------------------------------------------------- */
@font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url("../fonts/inter-vietnamese.woff2") format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url("../fonts/inter-latin.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --ld-primary: #016598;
    --ld-primary-dark: #01537d;
    --ld-primary-deep: #013854;
    --ld-primary-soft: #ebf4f8;
    --ld-accent: #f08a24;
    --ld-accent-dark: #ce771f;
    --ld-price: #d92d20;
    --ld-text: #333;
    --ld-muted: #667085;
    --ld-border: #e4e8ee;
    --ld-bg: #f3f5f8;
    --ld-surface: #fff;
    --ld-radius: 12px;
    --ld-radius-sm: 8px;
    --ld-shadow: 0 1px 2px rgba(16, 24, 40, 0.05);
    --ld-container: 1320px;
    --ld-gutter: 24px;
    --ld-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 76px; }
body {
    margin: 0;
    background: var(--ld-bg);
    color: var(--ld-text);
    font-family: var(--ld-font);
    font-size: 15px;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}
img, svg { max-width: 100%; height: auto; vertical-align: middle; }
a { color: var(--ld-primary); text-decoration: none; }
a:hover { color: var(--ld-primary-dark); }
h1, h2, h3, h4 { margin: 0 0 0.5em; line-height: 1.3; font-weight: 700; color: #101828; }
p { margin: 0 0 1em; }
ul, ol { margin: 0; padding: 0; list-style: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; }
:focus-visible { outline: 2px solid var(--ld-primary); outline-offset: 2px; border-radius: 4px; }
[hidden] { display: none !important; }

.screen-reader-text {
    position: absolute !important;
    width: 1px; height: 1px;
    margin: -1px; padding: 0; border: 0;
    overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap;
}
.ld-skip { position: absolute; left: -9999px; top: 8px; z-index: 1000; padding: 10px 16px; border-radius: 8px; background: #fff; box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2); }
.ld-skip:focus { left: 8px; }
.ld-icon { flex: none; }

.ld-container { width: 100%; max-width: var(--ld-container); margin-inline: auto; padding-inline: var(--ld-gutter); }
.ld-main { display: block; min-height: 50vh; padding-bottom: 40px; }

/* --- 2. Thành phần chung -------------------------------------------------- */
.ld-box {
    background: var(--ld-surface);
    border-radius: var(--ld-radius);
    box-shadow: var(--ld-shadow);
    padding: 20px;
}
.ld-section { margin-top: 20px; }
.ld-section-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px 16px;
    margin-bottom: 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--ld-border);
}
.ld-section-title, .ld-box-title {
    position: relative;
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.01em;
}
.ld-section-title a, .ld-box-title a { color: inherit; }
.ld-section-title a:hover, .ld-box-title a:hover { color: var(--ld-primary); }
.ld-section-title::after {
    content: "";
    position: absolute;
    left: 0; bottom: -13px;
    width: 64px; height: 3px;
    border-radius: 3px;
    background: var(--ld-primary);
}
/* Tiêu đề khối đặt giữa, gạch ngắn bên dưới (khối danh mục ở trang chủ) */
.ld-section-head--center { justify-content: center; margin-bottom: 26px; padding: 6px 0 14px; border-bottom: 0; text-align: center; }
.ld-section-head--center .ld-section-title { font-size: 20px; }
.ld-section-head--center .ld-section-title::after { left: 50%; bottom: -14px; width: 48px; height: 2px; transform: translateX(-50%); }
.ld-section-more { margin: 20px 0 0; text-align: center; }
.ld-section-more a { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.ld-section-more a:hover .ld-icon { transform: translateX(3px); }
.ld-section-more .ld-icon { transition: transform .15s; }

/* Nút */
.ld-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 18px;
    border: 1.5px solid transparent;
    border-radius: var(--ld-radius-sm);
    font-weight: 600;
    font-size: 15px;
    line-height: 1.2;
    white-space: nowrap;
    transition: background .15s, color .15s, border-color .15s, transform .15s;
}
.ld-btn--lg { min-height: 48px; padding: 0 22px; font-size: 16px; }
.ld-btn--primary { background: var(--ld-primary); color: #fff; }
.ld-btn--primary:hover { background: var(--ld-primary-dark); color: #fff; }
.ld-btn--accent { background: var(--ld-accent); color: #fff; }
.ld-btn--accent:hover { background: var(--ld-accent-dark); color: #fff; }
.ld-btn--outline { border-color: var(--ld-primary); color: var(--ld-primary); background: #fff; }
.ld-btn--outline:hover { background: var(--ld-primary-soft); }
.ld-btn--zalo { background: #0068ff; color: #fff; }
.ld-btn--zalo:hover { background: #0054d1; color: #fff; }
.ld-zalo-icon { flex: none; }
.ld-btn--light { background: rgba(255, 255, 255, 0.14); border-color: rgba(255, 255, 255, 0.55); color: #fff; }
.ld-btn--light:hover { background: #fff; color: var(--ld-primary); }

/* Nút lọc / sắp xếp dạng viên thuốc */
.ld-chips, .ld-sort, .ld-subcats { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.ld-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-height: 34px;
    padding: 0 14px;
    border: 1px solid #d0d5dd;
    border-radius: 9999px;
    background: #fff;
    color: var(--ld-text);
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    white-space: nowrap;
    transition: background .15s, color .15s, border-color .15s;
}
.ld-chip:hover { border-color: var(--ld-primary); color: var(--ld-primary); }
.ld-chip.is-active { background: var(--ld-primary); border-color: var(--ld-primary); color: #fff; font-weight: 600; }
.ld-chip small { color: inherit; opacity: 0.7; font-size: 12px; }
.ld-sort { flex: none; flex-wrap: nowrap; }
.ld-sort > span { color: var(--ld-muted); font-size: 14px; white-space: nowrap; }
/* Menu thả tự vẽ (sắp xếp) */
.ld-dd { position: relative; }
.ld-dd-toggle {
    display: inline-flex; align-items: center; justify-content: space-between; gap: 10px;
    min-width: 150px; height: 38px; padding: 0 12px 0 14px;
    border: 1px solid var(--ld-border); border-radius: var(--ld-radius-sm);
    background: #fff; color: var(--ld-text); font-size: 14px; font-weight: 500;
    transition: border-color .15s;
}
.ld-dd-toggle .ld-icon { color: var(--ld-muted); transition: transform .18s ease; }
.ld-dd-toggle:hover, .ld-dd-toggle:focus, .ld-dd-toggle[aria-expanded="true"] { border-color: var(--ld-primary); outline: 0; box-shadow: none; }
.ld-dd-toggle[aria-expanded="true"] .ld-icon { transform: rotate(180deg); }
.ld-dd-menu {
    position: absolute; top: calc(100% + 6px); right: 0; z-index: 30;
    min-width: 100%; padding: 6px;
    border: 1px solid var(--ld-border); border-radius: var(--ld-radius);
    background: #fff; box-shadow: 0 12px 32px rgba(16, 24, 40, 0.12);
    animation: ld-dd-in .16s ease;
}
.ld-dd-menu[hidden] { display: none; }
.ld-dd-menu a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 9px 12px; border-radius: 6px; color: var(--ld-text); font-size: 14px; white-space: nowrap; }
.ld-dd-menu a:hover, .ld-dd-menu a:focus { background: var(--ld-bg); color: var(--ld-primary); outline: 0; }
.ld-dd-menu a.is-active { background: var(--ld-primary-soft); color: var(--ld-primary); font-weight: 600; }
@keyframes ld-dd-in { from { opacity: 0; transform: translateY(-4px); } }
@media (prefers-reduced-motion: reduce) { .ld-dd-menu { animation: none; } }

/* Nhãn góc ảnh */
.ld-badge {
    position: absolute;
    top: 10px; left: 10px;
    padding: 3px 9px;
    border-radius: 9999px;
    background: var(--ld-price);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
}
.ld-badge--hot { background: var(--ld-accent); }
.ld-badge--muted { background: #667085; }

/* Giá */
.ld-price { color: var(--ld-price); font-weight: 700; font-size: 16px; }
.ld-price small { font-size: 0.8em; font-weight: 700; margin-left: 1px; }
.ld-price--contact { font-size: 15px; }
.ld-price-old { margin-left: 8px; color: #98a2b3; font-size: 13px; }

/* Breadcrumb */
.ld-breadcrumb { margin-bottom: 6px; }
.ld-breadcrumb ol { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 0; padding: 16px 0; font-size: 14px; color: var(--ld-muted); }
.ld-breadcrumb li { display: inline-flex; align-items: center; min-width: 0; }
.ld-breadcrumb li + li::before { content: "/"; margin: 0 10px; color: #c2c8d0; }
.ld-breadcrumb a { color: var(--ld-text); display: inline-flex; }
.ld-breadcrumb a:hover { color: var(--ld-primary); }
.ld-breadcrumb [aria-current] span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 60vw; }

/* Bố cục 2 cột */
.ld-layout { display: grid; grid-template-columns: minmax(0, 1fr) 290px; gap: 20px; align-items: start; }
.ld-sidebar { display: grid; gap: 16px; }
.ld-page { max-width: 960px; }
.ld-page-title { margin: 0 0 4px; font-size: 22px; font-weight: 700; }

/* Phân trang */
.ld-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin-top: 24px; }
.ld-pagination .page-numbers {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 40px; height: 40px; padding: 0 10px;
    border: 1px solid var(--ld-border); border-radius: var(--ld-radius-sm);
    background: #fff; color: var(--ld-text); font-weight: 600;
}
.ld-pagination a.page-numbers:hover { border-color: var(--ld-primary); color: var(--ld-primary); }
.ld-pagination .current { background: var(--ld-primary); border-color: var(--ld-primary); color: #fff; }
.ld-pagination .dots { border: 0; background: none; }

.ld-empty { padding: 40px 16px; text-align: center; color: var(--ld-muted); }
.ld-empty strong { color: var(--ld-text); font-size: 17px; }

/* --- 3. Header ------------------------------------------------------------ */
.ld-topbar { background: var(--ld-primary); color: #fff; font-size: 14px; }
.ld-topbar .ld-container { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 40px; }
.ld-topbar-name { font-weight: 500; text-transform: uppercase; letter-spacing: 0.02em; }
.ld-topbar-addr { display: inline-flex; align-items: center; gap: 6px; opacity: 0.95; }

.ld-mainbar { background: var(--ld-surface); }
.ld-mainbar > .ld-container { display: flex; align-items: center; gap: 28px; min-height: 88px; }
.ld-logo { flex: none; }
.ld-logo img { display: block; width: auto; max-height: 58px; }
.ld-logo-text { display: inline-flex; align-items: center; gap: 10px; color: var(--ld-primary); }
.ld-logo-text:hover { color: var(--ld-primary-dark); }
.ld-logo-mark { display: inline-flex; }
.ld-logo-words { display: flex; flex-direction: column; line-height: 1.05; }
.ld-logo-words small { font-size: 12px; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; color: var(--ld-accent); }
.ld-logo-words strong { font-size: 27px; font-weight: 800; letter-spacing: -0.01em; text-transform: uppercase; }

.ld-mainbar-search { flex: 1; min-width: 0; }
/* Ô tìm kiếm: [chọn danh mục] [từ khoá | nút] — viền xám nhạt, nút màu chủ đạo */
.ld-search { display: flex; gap: 8px; width: 100%; max-width: 720px; margin-inline: auto; }
.ld-search-cat {
    flex: none; width: 200px; height: 46px; padding: 0 38px 0 14px;
    border: 1px solid #d5dae1; border-radius: var(--ld-radius-sm);
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23475467' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;
    color: var(--ld-text); font-size: 15px; text-overflow: ellipsis;
    -webkit-appearance: none; appearance: none; cursor: pointer;
}
.ld-search-cat:hover { border-color: #b8c0cc; }
.ld-search-cat:focus { outline: none; border-color: var(--ld-primary); box-shadow: 0 0 0 3px var(--ld-primary-soft); }
/* Ô chọn danh mục tự vẽ (main.js dựng từ <select class="ld-search-cat">) */
.ld-sel { position: relative; flex: none; width: 200px; }
.ld-sel-native { display: none; }
.ld-sel-toggle { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; height: 46px; padding: 0 12px 0 14px; border: 1px solid #d5dae1; border-radius: var(--ld-radius-sm); background: #fff; color: var(--ld-text); font-size: 15px; text-align: left; cursor: pointer; transition: border-color .15s; }
.ld-sel-toggle span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ld-sel-toggle::after { content: ""; flex: none; width: 7px; height: 7px; margin: -4px 3px 0 0; border-right: 1.6px solid #475467; border-bottom: 1.6px solid #475467; transform: rotate(45deg); transition: transform .18s ease, margin .18s ease; }
.ld-sel-toggle[aria-expanded="true"]::after { margin-top: 4px; transform: rotate(225deg); }
.ld-sel-toggle:hover { border-color: #b8c0cc; }
.ld-sel-toggle:focus { outline: none; }
.ld-sel-toggle:focus-visible, .ld-sel-toggle[aria-expanded="true"] { border-color: var(--ld-primary); }
.ld-sel-menu { position: absolute; top: calc(100% + 6px); left: 0; z-index: 120; min-width: 100%; width: max-content; max-width: min(300px, calc(100vw - 28px)); max-height: min(60vh, 380px); padding: 6px; border: 1px solid var(--ld-border); border-radius: 12px; background: #fff; box-shadow: 0 14px 34px rgba(16, 24, 40, 0.16); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; animation: ld-dd-in .16s ease; }
.ld-sel-menu[hidden] { display: none; }
.ld-sel-menu button { display: flex; align-items: center; justify-content: space-between; gap: 14px; width: 100%; padding: 10px 12px; border: 0; border-radius: 8px; background: none; color: #101828; font-size: 14.5px; font-weight: 600; line-height: 1.35; text-align: left; cursor: pointer; }
.ld-sel-menu button.is-child { padding-left: 26px; color: var(--ld-text); font-weight: 400; }
.ld-sel-menu button:hover, .ld-sel-menu button:focus { background: var(--ld-bg); color: var(--ld-primary); outline: 0; }
.ld-sel-menu button.is-active { background: var(--ld-primary-soft); color: var(--ld-primary); }
.ld-sel-menu button.is-active::after { content: ""; flex: none; width: 6px; height: 11px; margin: -3px 2px 0 0; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); }
@media (prefers-reduced-motion: reduce) { .ld-sel-menu { animation: none; } }
.ld-search-box { display: flex; flex: 1; min-width: 0; border: 1px solid #d5dae1; border-radius: var(--ld-radius-sm); background: #fff; overflow: hidden; transition: border-color .15s, box-shadow .15s; }
.ld-search-box:hover { border-color: #b8c0cc; }
.ld-search-box:focus-within { border-color: var(--ld-primary); box-shadow: 0 0 0 3px var(--ld-primary-soft); }
.ld-search input[type="search"] { flex: 1; min-width: 0; height: 44px; padding: 0 16px; border: 0; background: transparent; outline: none; font-size: 15px; -webkit-appearance: none; appearance: none; }
.ld-search input::placeholder { color: #98a2b3; }
.ld-search input::-webkit-search-cancel-button { -webkit-appearance: none; }
.ld-search-box button { flex: none; width: 50px; border: 0; background: var(--ld-primary); color: #fff; transition: background .15s; }
.ld-search-box button:hover { background: var(--ld-primary-dark); }

.ld-mainbar-actions { display: flex; align-items: center; gap: 26px; flex: none; }
/* Hotline / Đại lý: icon trong vòng tròn nền nhạt, nhãn xám, chữ đậm màu chủ đạo */
.ld-hotline { display: inline-flex; align-items: center; gap: 12px; color: var(--ld-text); }
.ld-hotline-ic { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 46px; height: 46px; border-radius: 50%; background: var(--ld-primary-soft); color: var(--ld-primary); transition: background .15s, color .15s; }
.ld-hotline small { display: block; color: var(--ld-muted); font-weight: 400; font-size: 13px; line-height: 1.3; }
.ld-hotline strong { display: block; color: var(--ld-primary); font-size: 15px; font-weight: 700; line-height: 1.3; white-space: nowrap; }
.ld-hotline:hover .ld-hotline-ic { background: var(--ld-primary); color: #fff; }
.ld-hotline:hover strong { color: var(--ld-primary-dark); }

.ld-mobile-actions { display: none; align-items: center; gap: 2px; margin-left: auto; }
.ld-iconbtn { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--ld-text); }
.ld-iconbtn:hover { background: var(--ld-bg); color: var(--ld-primary); }
.ld-msearch { padding: 0 0 12px; background: var(--ld-surface); }

/* Thanh menu — dính trên đầu khi cuộn */
.ld-nav { position: relative; z-index: 90; background: var(--ld-surface); border-top: 1px solid var(--ld-border); box-shadow: 0 2px 8px rgba(16, 24, 40, 0.06); }
.ld-nav > .ld-container { display: flex; align-items: stretch; gap: 6px; }
.ld-nav-home { display: inline-flex; align-items: center; padding: 0 12px 0 0; color: #1a1a1a; }
.ld-nav-home:hover { color: var(--ld-primary); }
.ld-menu { display: flex; flex-wrap: wrap; flex: 1; min-width: 0; }
.ld-menu > li { position: relative; }
.ld-menu > li > a {
    display: flex; align-items: center; gap: 6px;
    height: 54px; padding: 0 14px;
    color: #1a1815; font-size: 15px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.3px;
    white-space: nowrap;
}
.ld-menu > li > a::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: var(--ld-primary); transform: scaleX(0); transition: transform .18s; }
.ld-menu > li:hover > a, .ld-menu > li:focus-within > a,
.ld-menu > .current-menu-item > a, .ld-menu > .current-menu-ancestor > a, .ld-menu > .current-menu-parent > a { color: var(--ld-primary); }
.ld-menu > li:hover > a::after, .ld-menu > li:focus-within > a::after,
.ld-menu > .current-menu-item > a::after, .ld-menu > .current-menu-ancestor > a::after { transform: scaleX(1); }
.ld-menu > .menu-item-has-children > a::before {
    content: ""; order: 2; width: 7px; height: 7px; margin-top: -4px;
    border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); opacity: 0.7;
}
.ld-menu .sub-menu {
    position: absolute; left: 0; top: 100%; z-index: 5;
    min-width: 250px; padding: 8px;
    background: #fff; border: 1px solid var(--ld-border); border-radius: 0 0 var(--ld-radius) var(--ld-radius);
    box-shadow: 0 16px 32px rgba(16, 24, 40, 0.12);
    opacity: 0; visibility: hidden; transform: translateY(6px);
    transition: opacity .16s, transform .16s, visibility .16s;
}
.ld-menu li:hover > .sub-menu, .ld-menu li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.ld-menu .sub-menu a { display: block; padding: 9px 12px; border-radius: 6px; color: var(--ld-text); font-weight: 500; }
.ld-menu .sub-menu a:hover, .ld-menu .sub-menu .current-menu-item > a { background: var(--ld-primary-soft); color: var(--ld-primary); }
.ld-menu .sub-menu .sub-menu { left: 100%; top: 0; border-radius: var(--ld-radius); }
.ld-menu .sub-menu li { position: relative; }
.ld-menu .sub-menu .menu-item-has-children > a { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.ld-menu .sub-menu .menu-item-has-children > a::after { content: ""; flex: none; width: 6px; height: 6px; border-top: 2px solid currentColor; border-right: 2px solid currentColor; transform: rotate(45deg); opacity: 0.6; }

/* Menu trượt (điện thoại) */
@supports (height: 100dvh) { .ld-drawer { bottom: auto !important; height: 100dvh; } }
.ld-drawer { position: fixed; inset: 0; z-index: 200; background: rgba(15, 23, 42, 0.5); opacity: 0; transition: opacity .2s; }
.ld-drawer.is-open { opacity: 1; }
.ld-drawer-panel { position: absolute; top: 0; right: 0; bottom: 0; display: flex; flex-direction: column; width: min(86vw, 340px); background: #fff; transform: translateX(100%); transition: transform .22s ease; overflow: hidden; }
.ld-drawer.is-open .ld-drawer-panel { transform: none; }
/* Đầu menu: logo căn giữa trên nền màu chủ đạo, nút đóng nằm bên phải */
.ld-drawer-head { position: relative; display: flex; flex: none; align-items: center; justify-content: center; min-height: 64px; padding: 10px 52px; background: var(--ld-primary); color: #fff; }
.ld-drawer-head .ld-iconbtn { position: absolute; top: 50%; right: 6px; transform: translateY(-50%); color: #fff; }
.ld-drawer-head .ld-iconbtn:hover { background: rgba(255, 255, 255, 0.15); color: #fff; }
.ld-drawer-logo .ld-logo-text, .ld-drawer-logo .ld-logo-text:hover { color: #fff; }
.ld-drawer-logo img { display: block; width: auto; max-width: 100%; max-height: 44px; }
.ld-drawer-logo .ld-logo-mark svg { width: 32px; height: 32px; }
.ld-drawer-logo .ld-logo-words small { font-size: 10px; }
.ld-drawer-logo .ld-logo-words strong { font-size: 21px; }
/* Bảng tìm kiếm (điện thoại): dùng chung khung với menu trượt, rộng gần hết màn hình */
.ld-sdrawer .ld-drawer-panel { width: min(100vw, 440px); }
.ld-sdrawer-head { justify-content: flex-start; min-height: 56px; padding: 8px 52px 8px 18px; }
.ld-sdrawer-head strong { font-size: 16px; font-weight: 700; letter-spacing: 0.02em; text-transform: uppercase; }
.ld-sdrawer-form { flex: none; padding: 14px; border-bottom: 1px solid var(--ld-border); }
.ld-sdrawer-form .ld-search { max-width: none; }
.ld-sdrawer-form .ld-sel { width: 132px; }
.ld-sdrawer-form .ld-sel-toggle { height: 46px; padding: 0 9px 0 12px; font-size: 14px; }
.ld-sdrawer-form .ld-search input[type="search"] { padding: 0 12px; font-size: 16px; }
.ld-sdrawer-form .ld-search-box button { width: 44px; }
.ld-sdrawer-body { flex: 1; min-height: 0; padding: 12px 14px calc(28px + env(safe-area-inset-bottom, 0px)); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.ld-sdrawer-status { margin: 0 0 4px; color: var(--ld-muted); font-size: 13px; font-weight: 600; letter-spacing: 0.03em; text-transform: uppercase; }
.ld-sdrawer-status:empty { display: none; }
.ld-sresults:empty::before { content: attr(data-hint); display: block; padding: 36px 12px; color: var(--ld-muted); text-align: center; }
.ld-sresults.is-loading { opacity: 0.45; transition: opacity .15s; }
.ld-sresults li + li { border-top: 1px solid var(--ld-border); }
.ld-sresult { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; align-items: center; padding: 10px 0; color: var(--ld-text); }
.ld-sresult-body { min-width: 0; }
.ld-sresult-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; margin-bottom: 3px; font-size: 14.5px; font-weight: 500; line-height: 1.4; }
.ld-sresult:hover .ld-sresult-name { color: var(--ld-primary); }
.ld-sresult .ld-price { font-size: 14px; }
.ld-sdrawer-empty { padding: 28px 8px; color: var(--ld-muted); text-align: center; }
.ld-sdrawer-all { display: flex; margin-top: 14px; }
.ld-sdrawer-all[hidden] { display: none; }

/* Ô tìm kiếm ngay dưới đầu menu: kính lúp bên trái, gõ xong nhấn Enter / nút Tìm trên bàn phím */
.ld-drawer-search { position: relative; flex: none; padding: 12px 14px; border-bottom: 1px solid var(--ld-border); }
.ld-drawer-search .ld-icon { position: absolute; top: 50%; left: 28px; transform: translateY(-50%); color: #667085; pointer-events: none; }
.ld-drawer-search input[type="search"] { display: block; width: 100%; height: 44px; padding: 0 14px 0 42px; border: 1px solid transparent; border-radius: 8px; background: #f2f4f7; color: #101828; font: inherit; font-size: 16px; outline: none; -webkit-appearance: none; appearance: none; transition: border-color .15s, background-color .15s; }
.ld-drawer-search input[type="search"]::placeholder { color: #667085; }
.ld-drawer-search input[type="search"]:focus { border-color: var(--ld-primary); background: #fff; }
/* Đầu menu và ô tìm kiếm đứng yên; danh sách + thông tin liên hệ cuộn chung, khối liên hệ luôn nằm sát đáy khi menu ngắn */
.ld-drawer-body { display: flex; flex: 1; flex-direction: column; min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.ld-drawer-body > nav { flex: none; }
.ld-drawer-menu li { display: flex; flex-wrap: wrap; align-items: stretch; }
.ld-drawer-menu li > a { flex: 1; min-width: 0; }
.ld-drawer-menu li > .sub-menu { flex: 0 0 100%; }
.ld-drawer-menu > li { border-bottom: 1px solid var(--ld-border); }
.ld-drawer-menu > li > a { display: flex; align-items: center; gap: 12px; padding: 13px 18px; color: #101828; font-weight: 600; }
.ld-drawer-menu > li > a .ld-icon { flex: none; color: var(--ld-primary); }
/* Menu con: nền xám nhạt theo cấp, mỗi mục có mũi tên nhỏ ở đầu; xổ / thu gọn bằng chiều cao (main.js) */
.ld-drawer-menu .sub-menu { height: 0; background: #f8fafc; overflow: hidden; visibility: hidden; transition: height .28s cubic-bezier(.4, 0, .2, 1), visibility 0s .28s; }
.ld-drawer-menu li.is-open > .sub-menu { height: auto; visibility: visible; transition: height .28s cubic-bezier(.4, 0, .2, 1), visibility 0s; }
.ld-drawer-menu .sub-menu > li { border-top: 1px solid #edf0f4; }
.ld-drawer-menu .sub-menu a { display: flex; align-items: center; gap: 10px; padding: 10px 18px 10px 48px; color: var(--ld-text); }
.ld-drawer-menu .sub-menu a::before { content: ""; flex: none; width: 6px; height: 6px; border-top: 1.5px solid currentColor; border-right: 1.5px solid currentColor; transform: rotate(45deg); opacity: 0.55; }
.ld-drawer-menu .sub-menu .sub-menu { background: #f1f5f9; }
.ld-drawer-menu .sub-menu .sub-menu a { padding-left: 64px; font-size: 14.5px; }
.ld-drawer-toggle { display: flex; flex: none; align-items: center; justify-content: center; width: 48px; border: 0; background: none; color: #667085; cursor: pointer; }
.ld-drawer-toggle svg { transform: rotate(-90deg); transition: transform .28s cubic-bezier(.4, 0, .2, 1); }
.ld-drawer-menu li.is-open > .ld-drawer-toggle { color: var(--ld-primary); }
.ld-drawer-menu li.is-open > .ld-drawer-toggle svg { transform: none; }
.ld-drawer-menu a:hover, .ld-drawer-menu .current-menu-item > a { color: var(--ld-primary); background: var(--ld-primary-soft); }
@media (prefers-reduced-motion: reduce) { .ld-drawer-menu .sub-menu, .ld-drawer-toggle svg { transition: none !important; } }
.ld-drawer-foot { flex: none; padding: 20px 14px calc(40px + env(safe-area-inset-bottom, 0px)); }   /* nằm ngay dưới danh sách, không ghim xuống đáy */
/* Thông tin liên hệ: hộp nền xám nhạt, tách khỏi danh sách phía trên và lề dưới */
.ld-drawer-contact { padding: 16px 16px 18px; border-radius: 12px; background: #f2f4f7; font-size: 14.5px; }
.ld-drawer-contact strong { display: block; margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1px solid #dde2ea; color: #101828; font-size: 15px; font-weight: 700; line-height: 1.4; text-transform: uppercase; }
.ld-drawer-contact ul { display: grid; gap: 11px; }
.ld-drawer-contact li { display: flex; align-items: flex-start; gap: 10px; color: #344054; font-weight: 500; line-height: 1.5; }
.ld-drawer-contact .ld-icon { flex: none; margin-top: 2px; color: var(--ld-accent); }
.ld-drawer-contact li a { color: inherit; }
.ld-drawer-contact li a:hover { color: var(--ld-primary); }
.ld-drawer-socials { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 0; }
.ld-drawer-socials a { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: #fff; color: #344054; font-size: 11px; font-weight: 700; transition: background-color .15s, color .15s; }
.ld-drawer-socials a:hover { background: var(--ld-primary); color: #fff; }
/* Khoá cuộn (menu trượt, xem ảnh lớn) — main.js bù bề rộng thanh cuộn bằng lề phải của body để trang không xê ngang */
html.ld-noscroll { overflow: hidden; }

/* --- 4. Trang chủ --------------------------------------------------------- */
.ld-home { padding-top: 0; }
/* Slider tràn màn hình: không bo góc, không lề. Màn hình rất rộng thì giới hạn chiều cao (ảnh cắt đều 2 mép trên dưới). */
.ld-hero .aomua-slider { --sl-radius: 0; }
.ld-hero .aomua-slide { max-height: 720px; }
.ld-hero .aomua-slider-prev { left: 16px; }
.ld-hero .aomua-slider-next { right: 16px; }
.ld-hero .aomua-slider-dots { bottom: 16px; }

/* Dải cam kết: thanh trắng bo tròn (không bóng đổ), đè nhẹ lên mép dưới slider; biểu tượng trong ô vuông bo góc nền chuyển màu */
.ld-usps-wrap { position: relative; z-index: 2; margin-top: 20px; }
.ld-usps-nav { display: none; }
.ld-usps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; padding: 10px; border: 1px solid var(--ld-border); border-radius: 20px; background: #fff; }
.ld-hero + .ld-home .ld-usps-wrap { margin-top: -38px; }
.ld-hero:has(+ .ld-home .ld-usps) .aomua-slider-dots { bottom: 54px; }
.ld-usps li { position: relative; display: flex; align-items: center; gap: 14px; padding: 14px 18px; border-radius: 14px; transition: background .2s ease; }
.ld-usps li:hover { background: var(--ld-primary-soft); }
.ld-usps li + li::before { content: ""; position: absolute; left: 0; top: 26%; bottom: 26%; width: 1px; background: var(--ld-border); }
.ld-usp-ic { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 52px; height: 52px; border-radius: 15px; background: linear-gradient(135deg, var(--ld-primary) 0%, #2aa3d8 100%); color: #fff; }
.ld-usps strong { display: block; color: #101828; font-size: 15.5px; font-weight: 700; line-height: 1.3; }
.ld-usps small { display: block; margin-top: 2px; color: var(--ld-muted); font-size: 13px; line-height: 1.4; }

/* Ô danh mục: luôn canh giữa và chia đều bề ngang — hàng cuối thiếu ô cũng canh giữa, không dồn trái để hở khoảng trắng. */
/* Danh mục sản phẩm (trang chủ): không đóng khung, tiêu đề giữa; mỗi danh mục là 1 thẻ trắng — 5 thẻ một hàng, hàng lẻ canh giữa */
.ld-home .ld-cats { margin-top: 36px; padding: 0; border-radius: 0; background: transparent; box-shadow: none; }
.ld-tiles { --tile-gap: 16px; --tile-cols: 5; display: flex; flex-wrap: wrap; justify-content: center; gap: var(--tile-gap); }
.ld-tiles > li { flex: 0 0 calc((100% - (var(--tile-cols) - 1) * var(--tile-gap)) / var(--tile-cols)); min-width: 0; }
.ld-tiles a { display: flex; flex-direction: column; align-items: center; gap: 4px; height: 100%; padding: 22px 12px 20px; border: 1px solid var(--ld-border); border-radius: var(--ld-radius); background: #fff; color: var(--ld-text); text-align: center; transition: border-color .18s, box-shadow .18s, transform .18s; }
/* Rê chuột: chỉ nhấc thẻ lên + bóng đổ (không viền, không phóng ảnh) — giống thẻ sản phẩm */
.ld-tiles a:hover { border-color: transparent; box-shadow: 0 12px 28px rgba(16, 24, 40, 0.14); transform: translateY(-4px); }
.ld-tile-img { display: inline-flex; align-items: center; justify-content: center; width: 84px; height: 84px; margin-bottom: 10px; border-radius: 50%; overflow: hidden; background: var(--ld-primary-soft); color: var(--ld-primary); }
.ld-tile-img img { width: 100%; height: 100%; object-fit: cover; }
.ld-tile-name { font-size: 14px; font-weight: 700; line-height: 1.4; text-transform: uppercase; letter-spacing: 0.01em; color: #101828; }
.ld-tiles small { color: var(--ld-muted); font-size: 13px; }
.ld-tiles a:hover .ld-tile-name { color: var(--ld-primary); }
@media (max-width: 1024px) { .ld-tiles { --tile-cols: 3; } }
/* Nhiều hơn 1 hàng → dải trượt ngang: mũi tên 2 bên + chấm trang (main.js thêm .is-slider) */
.ld-tiles-wrap { position: relative; }
.ld-tiles.is-slider { flex-wrap: nowrap; justify-content: flex-start; margin: -8px -6px -20px; padding: 8px 6px 28px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; }
.ld-tiles.is-slider::-webkit-scrollbar { display: none; }
.ld-tiles.is-slider > li { scroll-snap-align: start; scroll-margin-left: 6px; }
.ld-tiles-nav { position: absolute; top: 50%; z-index: 2; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; margin-top: -30px; padding: 0; border: 0; border-radius: 50%; background: #fff; color: var(--ld-primary); box-shadow: 0 4px 14px rgba(16, 24, 40, 0.14); transition: background .15s, color .15s, opacity .15s; }
.ld-tiles-nav[hidden], .ld-tiles-dots[hidden] { display: none; }
.ld-tiles-nav:hover { background: var(--ld-primary); color: #fff; }
.ld-tiles-nav:disabled { opacity: 0.35; pointer-events: none; }
.ld-tiles-prev { left: -14px; }
.ld-tiles-prev .ld-icon { transform: rotate(180deg); }
.ld-tiles-next { right: -14px; }
.ld-tiles-dots { display: flex; justify-content: center; gap: 8px; margin-top: 14px; }
.ld-tiles-dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: #cbd5e1; transition: background .15s, transform .15s; }
.ld-tiles-dots button.is-active { background: var(--ld-primary); transform: scale(1.25); }
@media (max-width: 600px) { .ld-tiles-prev { left: -6px; } .ld-tiles-next { right: -6px; } }
@media (prefers-reduced-motion: reduce) { .ld-tiles.is-slider { scroll-behavior: auto; } }

/* Giỏ hàng: biểu tượng + số lượng ở header, khối mua hàng ở trang sản phẩm, trang giỏ hàng */
.ld-cart-link { position: relative; }
.ld-cart-link .ld-hotline-ic { position: relative; }
.ld-cart-badge {
    position: absolute; top: -4px; right: -6px;
    min-width: 20px; height: 20px; padding: 0 5px;
    border-radius: 10px; border: 2px solid #fff;
    background: var(--ld-price); color: #fff;
    font-size: 11px; font-weight: 700; line-height: 16px; text-align: center;
}
.ld-iconbtn .ld-cart-badge { top: 2px; right: 0; }
.ld-product-buy { margin-bottom: 14px; }
.ld-product-buy .aomua-atc { margin-top: 0; }
.ld-product-buy .ld-btn[data-atc] { cursor: pointer; font-family: inherit; padding-inline: 12px; }
.ld-cart-page { padding-bottom: 8px; }
.ld-cart-page .ld-page-title { margin-bottom: 16px; }
.ld-cart-page .aomua-cart-box { border: 0; border-radius: var(--ld-radius); box-shadow: var(--ld-shadow); }
.ld-cart-page .aomua-cart-empty { box-shadow: var(--ld-shadow); }

/* Dải kêu gọi đại lý */
.ld-cta {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 32px;
    margin-top: 20px; padding: 28px 32px;
    border-radius: var(--ld-radius);
    background: linear-gradient(110deg, var(--ld-primary-deep) 0%, var(--ld-primary) 62%, var(--ld-primary) 100%);
    color: #fff;
    position: relative; overflow: hidden;
}
.ld-cta::after { content: ""; position: absolute; right: -60px; top: -80px; width: 320px; height: 320px; border-radius: 50%; background: rgba(255, 255, 255, 0.07); pointer-events: none; }
.ld-cta h2 { margin: 0 0 6px; color: #fff; font-size: 22px; font-weight: 700; }
.ld-cta p { margin: 0; max-width: 640px; opacity: 0.92; }
.ld-cta-actions { display: flex; flex-wrap: wrap; gap: 12px; position: relative; z-index: 1; }

/* --- 5. Sản phẩm ---------------------------------------------------------- */
.ld-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.ld-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }   /* trang danh mục / tìm kiếm: 3 sản phẩm một hàng */
.ld-card { display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--ld-border); border-radius: var(--ld-radius); background: #fff; overflow: hidden; }

.ld-card[hidden] { display: none; }
.ld-card-media { position: relative; display: block; aspect-ratio: 1; background: #f4f6f8; overflow: hidden; }
/* Rê chuột: thẻ đứng yên (không nhấc, không bóng đổ), chỉ ảnh phóng nhẹ — mỗi thẻ 1 chuyển động */
.ld-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.ld-card:hover .ld-card-media img { transform: scale(1.05); }
@media (prefers-reduced-motion: reduce) { .ld-card-media img { transition: none; } .ld-card:hover .ld-card-media img { transform: none; } }
.ld-card-noimg { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; min-height: 120px; color: #c2c8d0; }
.ld-card-body { display: flex; flex-direction: column; gap: 6px; padding: 12px 14px 14px; flex: 1; }
.ld-card-title { margin: 0; font-size: 15px; font-weight: 600; line-height: 1.4; }
.ld-card-title a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; min-height: 2.8em; color: #101828; }
.ld-card-title a:hover { color: var(--ld-primary); }
/* Bấm cả thẻ để mở sản phẩm */
.ld-card { position: relative; }
.ld-card-title a::after { content: ""; position: absolute; inset: 0; }
.ld-card-price { margin-top: auto; }

/* Trang chủ: lưới 4 cột (mặc định của .ld-grid), thẻ có ảnh lọt lòng bo góc, tên in hoa, giá có chữ "Giá:" */
/* Khối danh mục ở trang chủ không đóng khung: tiêu đề + thẻ sản phẩm nằm thẳng trên nền xám của trang */
.ld-home .ld-catblock { margin-top: 36px; padding: 0; border-radius: 0; background: transparent; box-shadow: none; }
.ld-home .ld-catblock + .ld-cta, .ld-home .aomua-block + .ld-cta { margin-top: 36px; }
/* Banner trên trang chủ nằm trong khung trắng */
.ld-banner-box { padding: 16px; }
.ld-home .ld-banner-box + .ld-catblock { margin-top: 28px; }
.ld-album-page { padding-bottom: 8px; }
.ld-album-page .ld-page-title { margin-bottom: 18px; }
.ld-home .ld-card-media { margin: 18px 18px 0; border-radius: 10px; }
.ld-home .ld-card-body { padding: 14px 18px 18px; }
.ld-home .ld-card-title { font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.01em; }
.ld-home .ld-price { font-size: 15px; font-weight: 600; }
.ld-home .ld-price:not(.ld-price--contact)::before { content: "Giá: "; font-weight: 500; }
.ld-catblock .ld-card.is-entering { opacity: 0; transform: translateY(12px) scale(0.98); transition: none; }
.ld-catblock .ld-card.is-entering.is-entered { opacity: 1; transform: none; transition: opacity .45s ease, transform .5s cubic-bezier(.22, .8, .24, 1); }
.ld-catblock-more { margin: 24px 0 4px; text-align: center; }
.ld-catblock-more[hidden] { display: none; }
/* Nút "Xem thêm N sản phẩm": không viền, không nền; rê chuột → nổi lên thành viên thuốc trắng, mũi tên trượt sang phải */
.ld-more-btn { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 20px; border: 0; border-radius: 999px; background: transparent; color: var(--ld-primary); font-size: 14.5px; font-weight: 600; cursor: pointer; transition: background .2s ease, color .2s ease, box-shadow .2s ease; }
.ld-more-btn .ld-icon { transition: transform .2s ease; }
.ld-more-btn:hover, .ld-more-btn:focus-visible { background: #fff; color: var(--ld-primary-dark); box-shadow: 0 4px 14px rgba(16, 24, 40, 0.1); outline: 0; }
.ld-more-btn:hover .ld-icon, .ld-more-btn:focus-visible .ld-icon { transform: translateX(4px); }
.ld-more-btn:active { transform: scale(0.97); }
.ld-more-btn.is-loading { opacity: 0.6; pointer-events: none; }
@media (prefers-reduced-motion: reduce) { .ld-catblock .ld-card.is-entering.is-entered { transition: none; } }

/* Trang danh mục */
.ld-archive-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 20px; margin-bottom: 18px; padding-bottom: 14px; border-bottom: 1px solid var(--ld-border); }
.ld-archive-head .ld-page-title { margin: 0; color: #101828; font-size: 16px; font-weight: 700; letter-spacing: 0.01em; line-height: 1.4; text-transform: uppercase; }   /* cùng cỡ, cùng kiểu với tiêu đề các khối ở sidebar */
.ld-archive-desc { margin-bottom: 18px; padding: 14px 16px; border-radius: var(--ld-radius-sm); background: var(--ld-bg); font-size: 14px; }
.ld-archive-desc > :last-child { margin-bottom: 0; }
.ld-subcats { margin-bottom: 18px; }

/* Cột danh mục */
.ld-cat-box { padding: 16px 18px; }
.ld-box-title { font-size: 16px; padding-bottom: 12px; margin-bottom: 8px; border-bottom: 1px solid var(--ld-border); }
.ld-cat-box.is-active .ld-box-title { color: var(--ld-primary); border-bottom-color: var(--ld-primary); }
.ld-side-products ul { display: grid; }
.ld-side-products li { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; align-items: center; padding: 10px 0; border-top: 1px solid var(--ld-border); }
.ld-side-products li:first-child { border-top: 0; padding-top: 4px; }
.ld-side-products li:last-child { padding-bottom: 0; }
.ld-side-thumb { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; border: 1px solid var(--ld-border); border-radius: var(--ld-radius-sm); background: #f4f6f8; color: var(--ld-muted); overflow: hidden; }
.ld-side-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.ld-side-products li:hover .ld-side-thumb img { transform: scale(1.06); }
.ld-side-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; margin-bottom: 3px; color: var(--ld-text); font-size: 14px; font-weight: 500; line-height: 1.4; }
.ld-side-name:hover { color: var(--ld-primary); }
.ld-side-products .ld-price { font-size: 14px; }
.ld-cat-list a { display: flex; justify-content: space-between; gap: 10px; padding: 8px 0 8px 16px; position: relative; color: var(--ld-text); font-size: 14.5px; }
.ld-cat-list a::before { content: ""; position: absolute; left: 2px; top: 50%; width: 5px; height: 5px; margin-top: -2.5px; border-radius: 50%; background: #c2c8d0; }
.ld-cat-list a:hover, .ld-cat-list .is-current a { color: var(--ld-primary); }
.ld-cat-list .is-current a { font-weight: 700; }
.ld-cat-list a:hover::before, .ld-cat-list .is-current a::before { background: var(--ld-primary); }

/* Chi tiết sản phẩm */
.ld-product { display: grid; grid-template-columns: minmax(0, 460px) minmax(0, 1fr); gap: 28px; align-items: start; }
.ld-gallery-main { position: relative; border: 1px solid var(--ld-border); border-radius: var(--ld-radius); background: #f4f6f8; overflow: hidden; }
.ld-gallery-item { display: flex; align-items: center; justify-content: center; aspect-ratio: 1; cursor: zoom-in; }
.ld-gallery-item img { width: 100%; height: 100%; object-fit: contain; }
.ld-gallery-thumbs { display: flex; gap: 8px; margin-top: 10px; overflow-x: auto; padding-bottom: 2px; }
.ld-gallery-thumbs button { flex: none; width: 68px; height: 68px; padding: 0; border: 2px solid var(--ld-border); border-radius: var(--ld-radius-sm); background: #fff; overflow: hidden; }
.ld-gallery-thumbs button.is-active, .ld-gallery-thumbs button:hover { border-color: var(--ld-primary); }
.ld-gallery-thumbs img { width: 100%; height: 100%; object-fit: cover; }

.ld-product-title { margin: 0 0 10px; font-size: 22px; font-weight: 700; line-height: 1.3; }
.ld-product-meta { display: flex; flex-wrap: wrap; gap: 6px 22px; margin: 0 0 14px; color: var(--ld-muted); font-size: 14px; }
.ld-product-meta span { display: inline-flex; align-items: center; gap: 6px; }
.ld-product-meta .is-in { color: #079455; }
.ld-product-meta .is-out { color: var(--ld-price); }
.ld-product-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; margin-bottom: 14px; padding: 12px 16px; border-radius: var(--ld-radius-sm); background: #fef3f2; }
.ld-product-price-label { color: var(--ld-muted); font-size: 14px; }
.ld-product-price .ld-price { font-size: 26px; line-height: 1.2; }
.ld-product-price .ld-price--contact { font-size: 22px; }
.ld-product-price .ld-price-old { font-size: 15px; }
.ld-product-short { margin-bottom: 14px; color: #344054; }
.ld-product-short > * { margin: 0 0 8px; }
.ld-product-short > :last-child { margin-bottom: 0; }
.ld-product-short ul, .ld-product-short ol { padding-left: 20px; }
.ld-product-short ul { list-style: disc; }
.ld-product-short ol { list-style: decimal; }
.ld-product-short li { margin-bottom: 4px; }
.ld-product-short li::marker { color: var(--ld-primary); }
.ld-specs { display: grid; grid-template-columns: 130px minmax(0, 1fr); margin: 0 0 16px; border: 1px solid var(--ld-border); border-radius: var(--ld-radius-sm); overflow: hidden; font-size: 14.5px; }
.ld-specs dt, .ld-specs dd { margin: 0; padding: 9px 14px; border-bottom: 1px solid var(--ld-border); }
.ld-specs dt { background: var(--ld-bg); color: var(--ld-muted); font-weight: 500; }
.ld-specs dt:last-of-type, .ld-specs dd:last-of-type { border-bottom: 0; }
.ld-specs dd { font-weight: 600; }
.ld-product-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 16px; }
.ld-product-actions .ld-btn { flex: 1 1 180px; }
.ld-product-contact { border: 1px solid var(--ld-border); border-radius: var(--ld-radius-sm); overflow: hidden; }
.ld-product-contact-title { margin: 0; padding: 10px 16px; background: var(--ld-bg); border-bottom: 1px solid var(--ld-border); font-weight: 700; }
.ld-product-contact ul { padding: 10px 16px; display: grid; gap: 8px; font-size: 14.5px; }
.ld-product-contact li { display: flex; align-items: flex-start; gap: 10px; }
.ld-product-contact .ld-icon { margin-top: 3px; color: var(--ld-primary); }
.ld-product-phone { color: var(--ld-price); font-size: 17px; font-weight: 700; line-height: 1.3; }

/* Form đặt hàng / liên hệ của Core trong khung theme */
.ld-main .aomua-of { margin: 0; border: 0; border-radius: var(--ld-radius); box-shadow: var(--ld-shadow); font-family: var(--ld-font); }
.ld-main .aomua-of-head h3 { font-size: 19px; font-weight: 700; }
.ld-prose .aomua-of { margin: 20px 0 0; border: 1px solid var(--ld-border); box-shadow: none; }

/* Xem ảnh lớn */
.ld-gallery-item img { transition: transform .35s ease; }
@media (hover: hover) { .ld-gallery-item:hover img { transform: scale(1.04); } }
.ld-lightbox { position: fixed; inset: 0; z-index: 300; display: flex; align-items: center; justify-content: center; padding: 56px 72px; background: rgba(8, 15, 26, 0.88); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); cursor: zoom-out; opacity: 0; transition: opacity .22s ease; }
.ld-lightbox.is-open { opacity: 1; }
.ld-lightbox img { max-width: 100%; max-height: 100%; border-radius: 10px; background: #fff; box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45); cursor: default; transform: scale(0.94); opacity: 0; transition: transform .28s cubic-bezier(.2, .8, .2, 1), opacity .2s ease; }
.ld-lightbox.is-open img.is-ready { transform: none; opacity: 1; }
.ld-lightbox button { position: absolute; display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; padding: 0; border: 0; border-radius: 50%; background: rgba(255, 255, 255, 0.14); color: #fff; transition: background .15s; }
.ld-lightbox button:hover { background: rgba(255, 255, 255, 0.3); }
.ld-lightbox-close { top: 14px; right: 14px; }
.ld-lightbox-prev { left: 14px; top: 50%; margin-top: -23px; }
.ld-lightbox-next { right: 14px; top: 50%; margin-top: -23px; }
.ld-lightbox-count { position: absolute; left: 50%; bottom: 16px; transform: translateX(-50%); padding: 4px 12px; border-radius: 999px; background: rgba(255, 255, 255, 0.14); color: #fff; font-size: 13px; font-weight: 600; }
@media (max-width: 782px) {
    .ld-lightbox { padding: 60px 12px; }
    .ld-lightbox-prev { left: 6px; }
    .ld-lightbox-next { right: 6px; }
}
@media (prefers-reduced-motion: reduce) { .ld-lightbox, .ld-lightbox img, .ld-gallery-item img { transition: none; } }

/* --- 6. Bài viết / trang -------------------------------------------------- */
.ld-posts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ld-post { display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--ld-border); border-radius: var(--ld-radius); overflow: hidden; background: #fff; }
.ld-post-media { display: block; aspect-ratio: 16 / 10; background: #f4f6f8; overflow: hidden; }
.ld-post-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.ld-post:hover .ld-post-media img { transform: scale(1.04); }
.ld-post-body { padding: 14px 16px 16px; }
.ld-post-title { margin: 0 0 6px; font-size: 16px; line-height: 1.4; }
.ld-post-title a { color: #101828; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.ld-post-title a:hover { color: var(--ld-primary); }
.ld-post-meta { display: flex; align-items: center; gap: 6px; margin: 0 0 8px; color: var(--ld-muted); font-size: 13px; }
.ld-post-excerpt { margin: 0; color: #475467; font-size: 14px; }
.ld-posts--list { grid-template-columns: 1fr; }
.ld-posts--list .ld-post { flex-direction: row; }
.ld-posts--list .ld-post-media { flex: none; width: 260px; aspect-ratio: auto; }

.ld-article { padding: 26px 28px; }
.ld-article .ld-page-title { font-size: 24px; margin-bottom: 10px; }

/* Nội dung soạn bằng trình soạn thảo */
.ld-prose { font-size: 16px; line-height: 1.75; color: #344054; overflow-wrap: break-word; }
.ld-prose > :first-child { margin-top: 0; }
.ld-prose > :last-child { margin-bottom: 0; }
.ld-prose h2 { margin: 1.5em 0 0.6em; font-size: 22px; }
.ld-prose h3 { margin: 1.4em 0 0.5em; font-size: 19px; }
.ld-prose h4 { margin: 1.3em 0 0.5em; font-size: 17px; }
.ld-prose ul, .ld-prose ol { margin: 0 0 1em; padding-left: 1.4em; }
.ld-prose ul { list-style: disc; }
.ld-prose ol { list-style: decimal; }
.ld-prose li { margin-bottom: 0.35em; }
.ld-prose li::marker { color: var(--ld-primary); }
.ld-prose a { text-decoration: underline; text-underline-offset: 2px; }
.ld-prose a.aomua-agent-btn, .ld-prose a.ld-btn { text-decoration: none; }
.ld-prose img { border-radius: var(--ld-radius-sm); }
.ld-prose hr { margin: 1.6em 0; border: 0; border-top: 1px solid var(--ld-border); }
.ld-prose blockquote { margin: 1.2em 0; padding: 12px 18px; border-left: 4px solid var(--ld-primary); background: var(--ld-bg); border-radius: 0 var(--ld-radius-sm) var(--ld-radius-sm) 0; }
.ld-prose table { width: 100%; margin: 1em 0; border-collapse: collapse; font-size: 15px; }
.ld-prose th, .ld-prose td { padding: 9px 12px; border: 1px solid var(--ld-border); text-align: left; }
.ld-prose th { background: var(--ld-bg); }
.ld-prose .aligncenter { display: block; margin-inline: auto; }
.ld-prose .alignleft { float: left; margin: 0.3em 1.2em 0.8em 0; }
.ld-prose .alignright { float: right; margin: 0.3em 0 0.8em 1.2em; }
.ld-prose .wp-caption { max-width: 100%; }
.ld-prose .wp-caption-text { margin-top: 6px; color: var(--ld-muted); font-size: 13px; text-align: center; }
.ld-prose iframe { max-width: 100%; }

.ld-widget ul { display: grid; gap: 6px; }
.ld-widget a { color: var(--ld-text); }
.ld-widget a:hover { color: var(--ld-primary); }

.ld-404 { text-align: center; padding: 40px 20px; }
.ld-404-code { margin: 0; font-size: 72px; font-weight: 700; line-height: 1; color: var(--ld-primary); }
.ld-404 .ld-search { margin: 16px auto; max-width: 480px; }

/* --- 7. Footer ------------------------------------------------------------ */
/* Chân trang nền tối: dải dịch vụ → 4 cột (thương hiệu · liên hệ · liên kết · bản đồ) → chính sách + bản quyền */
.ld-footer { margin-top: 40px; background: linear-gradient(110deg, var(--ld-primary-deep) 0%, var(--ld-primary) 62%, var(--ld-primary) 100%); color: rgba(255, 255, 255, 0.9); font-size: 15px; }
.ld-footer a { color: #fff; }
.ld-footer a:hover { color: var(--ld-accent); }
.ld-footer-services { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; padding: 34px 0 30px; border-bottom: 1px solid rgba(255, 255, 255, 0.16); }
.ld-footer-services li { display: flex; align-items: flex-start; gap: 16px; }
.ld-footer-services .ld-icon { flex: none; margin-top: 2px; color: #fff; stroke-width: 1.5; }
.ld-footer-services strong { display: block; margin-bottom: 4px; color: #fff; font-size: 14px; font-weight: 600; letter-spacing: 0.02em; text-transform: uppercase; }
.ld-footer-services small { display: block; color: rgba(255, 255, 255, 0.86); font-size: 14px; line-height: 1.5; }
.ld-footer-grid { display: grid; grid-template-columns: 1.25fr 1.25fr 0.7fr 1.5fr; gap: 44px; padding-top: 48px; padding-bottom: 44px; }
.ld-footer-logo { margin-bottom: 16px; }
.ld-footer-logo img { display: block; width: auto; max-height: 64px; }
.ld-footer-logo .ld-logo-text, .ld-footer-logo .ld-logo-text:hover { color: #fff; }
.ld-footer-brand { margin: 0 0 12px; color: #fff; font-size: 17px; font-weight: 700; line-height: 1.4; text-transform: uppercase; letter-spacing: 0.01em; }
.ld-footer-about p:not(.ld-footer-brand) { margin: 0 0 12px; line-height: 1.6; }
.ld-footer-title { margin: 0 0 20px; color: #fff; font-size: 18px; font-weight: 700; letter-spacing: 0.01em; text-transform: uppercase; }
.ld-footer-contact { display: grid; gap: 12px; }
.ld-footer-contact li { display: flex; gap: 8px; align-items: flex-start; line-height: 1.6; }
.ld-footer-contact .ld-icon { flex: none; margin-top: 5px; color: #fff; }
.ld-footer-contact b { color: #fff; font-weight: 600; }
.ld-footer-contact a { font-weight: 600; }
.ld-footer-links { display: grid; gap: 12px; }
.ld-footer-links a { display: inline-flex; align-items: center; gap: 10px; }
.ld-footer-links a::before { content: ""; flex: none; width: 6px; height: 6px; border-top: 1.5px solid currentColor; border-right: 1.5px solid currentColor; transform: rotate(45deg); opacity: 0.75; transition: transform .15s; }
.ld-footer-links a:hover::before { transform: translateX(3px) rotate(45deg); }
.ld-footer-map { border-radius: 4px; background: rgba(255, 255, 255, 0.12); overflow: hidden; }
.ld-footer-map iframe { display: block; width: 100%; height: 200px; border: 0; }
.ld-footer-maplink { margin: 14px 0 0; line-height: 1.6; }
.ld-footer-maplink a { font-style: italic; text-decoration: underline; text-underline-offset: 3px; }
.ld-footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.16); padding: 26px 0 30px; text-align: center; font-size: 14px; }
.ld-footer-bottom p { margin: 0; }
.ld-footer-bottom p a { color: #fff; font-weight: 600; }
.ld-footer-policy { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 0; margin-bottom: 18px; }
.ld-footer-policy li + li::before { content: ""; display: inline-block; width: 1px; height: 12px; margin: 0 12px; background: rgba(255, 255, 255, 0.3); vertical-align: -1px; }

/* --- 8. Nút nổi (phải dưới: Zalo, gọi, lên đầu trang) --------------------- */
.ld-fabs { position: fixed; right: 16px; bottom: 16px; z-index: 80; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.ld-fab { display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; padding: 0; border: 0; border-radius: 50%; color: #fff; box-shadow: 0 8px 20px rgba(16, 24, 40, 0.22); transition: transform .15s; }
.ld-fab:hover { transform: translateY(-2px); color: #fff; }
.ld-fab--zalo { background: #0068ff; font-size: 13px; font-weight: 700; letter-spacing: -0.01em; }
.ld-fab--call { background: var(--ld-accent); animation: ld-ring 2.4s infinite; }
.ld-fab--top { width: 46px; height: 46px; background: #fff; color: var(--ld-primary); border: 1.5px solid var(--ld-primary); box-shadow: none; }
/* Nút Hỗ trợ trực tuyến (Core, 54px) xếp thẳng trục dọc với nút Lên đầu trang (46px): cùng tâm, cách nhau 16px */
body .aomua-sp { right: 12px; bottom: 78px; }   /* "body": thắng CSS của Core (nạp sau, ở cuối trang) */
body .aomua-sp-toggle::before { animation-name: ld-sp-pulse; }   /* vòng lan toả hẹp hơn để không trùm lên nút bên dưới */
@keyframes ld-sp-pulse { to { box-shadow: 0 0 0 11px transparent; } }
.ld-fab--top:hover { color: var(--ld-primary); }
@keyframes ld-ring { 0%, 100% { box-shadow: 0 8px 20px rgba(16, 24, 40, 0.22), 0 0 0 0 rgba(240, 138, 36, 0.45); } 60% { box-shadow: 0 8px 20px rgba(16, 24, 40, 0.22), 0 0 0 12px rgba(240, 138, 36, 0); } }

/* --- 9. Responsive -------------------------------------------------------- */
@media (max-width: 1200px) {
    .ld-layout .ld-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ld-menu > li > a { padding: 0 11px; font-size: 14px; }
    .ld-mainbar > .ld-container { gap: 20px; }
    .ld-search-cat, .ld-sel { width: 168px; }
    .ld-mainbar-actions { gap: 18px; }
    .ld-footer-grid { grid-template-columns: 1fr 1fr; gap: 36px; }
    .ld-footer-services { grid-template-columns: 1fr 1fr; }
    .ld-footer-bottom { padding-bottom: 80px; }   /* chừa chỗ cho các nút nổi, không đè lên dòng bản quyền */
}

@media (max-width: 1024px) {
    :root { --ld-gutter: 16px; }
    .ld-topbar { display: none; }   /* điện thoại / máy tính bảng: bỏ thanh trên cùng, header bắt đầu từ hàng logo */
    .ld-topbar .ld-container { justify-content: center; min-height: 34px; }
    .ld-mainbar > .ld-container { min-height: 64px; }
    .ld-mainbar-search, .ld-mainbar-actions, .ld-nav { display: none; }
    .ld-mobile-actions { display: flex; }
    .ld-mainbar { position: relative; z-index: 90; box-shadow: 0 2px 8px rgba(16, 24, 40, 0.08); }
    .ld-logo img { max-height: 44px; }
    .ld-logo-words strong { font-size: 22px; }
    .ld-logo-mark svg { width: 34px; height: 34px; }
    .ld-layout { grid-template-columns: 1fr; }
    .ld-sidebar { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ld-grid, .ld-layout .ld-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ld-usps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ld-usps li:nth-child(3)::before { display: none; }
    .ld-hero + .ld-home .ld-usps-wrap { margin-top: -26px; }
    .ld-hero:has(+ .ld-home .ld-usps) .aomua-slider-dots { bottom: 38px; }
    .ld-product { grid-template-columns: minmax(0, 380px) minmax(0, 1fr); gap: 20px; }
}

@media (max-width: 782px) {
    body { font-size: 15px; }
    .ld-box { padding: 14px; }
    .ld-section-title { font-size: 17px; }
    .ld-product { grid-template-columns: 1fr; }
    .ld-product-title { font-size: 21px; }
    .ld-posts { grid-template-columns: 1fr; }
    .ld-posts--list .ld-post { flex-direction: column; }
    .ld-posts--list .ld-post-media { width: 100%; aspect-ratio: 16 / 10; }
    .ld-article { padding: 18px 16px; }
    .ld-article .ld-page-title { font-size: 23px; }
    .ld-cta { padding: 22px 18px; }
    .ld-cta h2 { font-size: 20px; }
    .ld-cta-actions { width: 100%; }
    .ld-cta-actions .ld-btn { flex: 1 1 100%; }
    .ld-footer-grid { grid-template-columns: 1fr; gap: 30px; padding-top: 34px; padding-bottom: 32px; }
    .ld-footer-services { gap: 18px 14px; padding: 26px 0 22px; }
    .ld-footer-services li { gap: 10px; }
    .ld-footer-services .ld-icon { width: 26px; height: 26px; }
    .ld-footer-services strong { font-size: 12.5px; }
    .ld-footer-services small { font-size: 12.5px; }
    /* Hàng nút lọc: cuộn ngang thay vì xuống nhiều dòng */
    .ld-section-head .ld-chips, .ld-subcats { flex-wrap: nowrap; overflow-x: auto; width: 100%; padding-bottom: 4px; scrollbar-width: none; }
    .ld-section-head .ld-chips::-webkit-scrollbar, .ld-subcats::-webkit-scrollbar { display: none; }
    .ld-chip { flex: none; }
    .ld-fabs { right: 12px; bottom: 12px; }
    body .aomua-sp { right: 10px; bottom: 72px; }
}

@media (max-width: 600px) {
    .ld-grid, .ld-layout .ld-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .ld-card-body { padding: 10px 10px 12px; }
    .ld-card-title { font-size: 14px; }
    .ld-price { font-size: 16px; }
    .ld-sidebar { grid-template-columns: 1fr; }
    /* Dải cam kết: một hàng trượt ngang, 2 mục mỗi lần; mũi tên nằm ở hai lề của khung */
    .ld-usps { display: flex; padding: 6px 26px; border-radius: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 26px; scroll-behavior: smooth; scrollbar-width: none; overscroll-behavior-x: contain; }
    .ld-usps::-webkit-scrollbar { display: none; }
    .ld-usps li { flex: 0 0 50%; min-width: 0; padding: 10px 8px; gap: 10px; scroll-snap-align: start; }
    .ld-usps li:hover { background: none; }
    .ld-usps-nav { position: absolute; top: 1px; bottom: 1px; z-index: 1; display: flex; align-items: center; justify-content: center; width: 26px; padding: 0; border: 0; background: #fff;   /* trùng nền khung: che mục kế tiếp ló ra ở lề */ color: #667085; cursor: pointer; -webkit-tap-highlight-color: transparent; }
    .ld-usps-nav:focus { outline: none; }
    .ld-usps-nav:focus-visible { color: var(--ld-primary); }
    .ld-usps-prev { left: 1px; border-radius: 15px 0 0 15px; }
    .ld-usps-prev .ld-icon { transform: rotate(180deg); }
    .ld-usps-next { right: 1px; border-radius: 0 15px 15px 0; }
    .ld-usps li::before { display: none; }
    .ld-usp-ic { width: 40px; height: 40px; border-radius: 12px; }
    .ld-usp-ic .ld-icon { width: 20px; height: 20px; }
    .ld-hero + .ld-home .ld-usps-wrap { margin-top: -18px; }
    .ld-hero:has(+ .ld-home .ld-usps) .aomua-slider-dots { bottom: 26px; }
    .ld-hero .aomua-slider-prev { left: 2px; }
    .ld-hero .aomua-slider-next { right: 2px; }
    .ld-hero:has(+ .ld-home .ld-usps) .aomua-slider-nav { margin-top: -31px; }   /* canh giữa phần ảnh còn lộ ra phía trên dải cam kết */
    .ld-usps strong { font-size: 13.5px; }
    .ld-usps small { display: none; }
    /* Điện thoại: 3 ô mỗi hàng, hàng cuối canh giữa (5 danh mục = 3 + 2). Đúng 4 danh mục thì xếp 2 × 2. */
    .ld-tiles { --tile-cols: 2; --tile-gap: 10px; }
    .ld-tiles a { padding: 16px 8px 14px; }
    .ld-tile-img { width: 64px; height: 64px; margin-bottom: 6px; }
    .ld-tile-name { font-size: 13px; }
    .ld-specs { grid-template-columns: 110px minmax(0, 1fr); }
    .ld-topbar-name { font-size: 12.5px; }
    /* Nút "Đăng ký đại lý" nổi của Core: chỉ còn icon để không che nội dung */
    .aomua-agent-float span { display: none; }
    .aomua-agent-float { padding: 0.75rem; }
}

/* Thanh menu cố định: cuộn qua khỏi header thì thanh (menu ngang trên máy tính, hàng logo trên điện thoại) được ghim
   ngoài mép trên màn hình; cuộn ngược lên một đoạn thì trượt xuống hiện ra, cuộn xuống tiếp thì ẩn đi (main.js). */
.ld-header .is-stuck { position: fixed; top: var(--wp-admin--admin-bar--height, 0px); left: 0; right: 0; transform: translateY(-110%); visibility: hidden; transition: transform .28s ease, visibility 0s .28s; box-shadow: 0 4px 16px rgba(16, 24, 40, 0.12); }
.ld-header .is-stuck.is-shown { transform: none; visibility: visible; transition: transform .28s ease, visibility 0s; }
@media (max-width: 600px) { .ld-header .is-stuck { top: 0; } }
@media (prefers-reduced-motion: reduce) { .ld-header .is-stuck { transition: none; } }

/* Điện thoại hẹp: logo + 4 nút biểu tượng phải vừa một hàng, không đẩy trang rộng hơn màn hình
   (trang rộng hơn màn hình thì các khung phủ như menu trượt bị cắt mất phần đáy). */
@media (max-width: 400px) {
    .ld-mainbar .ld-logo { min-width: 0; }
    .ld-mainbar .ld-logo img { max-height: 44px; max-width: 100%; }
    .ld-mainbar .ld-logo-text { gap: 7px; }
    .ld-mainbar .ld-logo-mark svg { width: 28px; height: 28px; }
    .ld-mainbar .ld-logo-words small { font-size: 9.5px; letter-spacing: 0.18em; }
    .ld-mainbar .ld-logo-words strong { font-size: 18px; }
    .ld-mobile-actions { gap: 0; }
    .ld-mobile-actions .ld-iconbtn { width: 40px; height: 40px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
}

@media print {
    .ld-header, .ld-footer, .ld-fabs, .ld-sidebar, .aomua-agent-float, .aomua-popup, .ld-breadcrumb { display: none !important; }
    body { background: #fff; }
}

/* Máy tính: header đã có nút "Đăng ký đại lý" → ẩn nút nổi của Core (chỉ để lại trên tablet/điện thoại). */
@media (min-width: 1025px) { .aomua-agent-float { display: none; } }
/* Nút nổi luôn nằm dưới menu trượt, popup và thanh menu dính. */
.aomua-agent-float { z-index: 80; }
body.ld-lock .ld-fabs, body.ld-lock .aomua-agent-float,
body.aomua-popup-lock .ld-fabs, body.aomua-popup-lock .aomua-agent-float { display: none; }
