/* ===== Mobile Menu ===== */
.mobile__menu{
    top: 0; right: -320px; bottom: 0;
    position: fixed;
    padding: 100px 0 40px 0;
    overflow-y: auto;
    height: 100vh; width: 320px;
    background: #1a1f2b;
    z-index: 9998;
    transition: right .35s cubic-bezier(.4,0,.2,1);
}
.show__menu .mobile__menu { right: 0; }
.mobile__menu ul { padding: 0; margin: 0; list-style: none; }
.mobile__menu a { text-decoration: none !important; }

/* Level 1 — top level items */
.mobile__menu > ul > li > a {
    display: flex; align-items: center; justify-content: space-between;
    padding: 16px 24px;
    font-size: 17px; font-weight: 600; color: #fff;
    letter-spacing: 0.02em;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}
.mobile__menu > ul > li:not(.parent) > a { font-weight: 500; }

/* Chevron — Level 1 */
.mobile__menu > ul > li.parent > a::after {
    content: ""; display: inline-block;
    width: 8px; height: 8px;
    border-right: 2px solid rgba(255,255,255,0.4);
    border-bottom: 2px solid rgba(255,255,255,0.4);
    transform: rotate(-45deg); transition: transform .25s ease;
}
.mobile__menu > ul > li.parent.open > a::after { transform: rotate(45deg); }

/* All submenus */
.mobile__menu ul li ul { display: none; background: rgba(0,0,0,0.2); }

/* Level 2 — main category links (with href, no sub-children at lvl2) */
.mobile__menu > ul > li > ul > li > a {
    display: flex; align-items: center;
    padding: 14px 24px 14px 40px;
    font-size: 15px; font-weight: 400; color: rgba(255,255,255,0.85);
    border-bottom: 1px solid rgba(255,255,255,0.04);
}

/* Level 2 — parent section headers (href="#") */
.mobile__menu > ul > li > ul > li.parent > a {
    font-size: 12px; font-weight: 700; color: rgba(255,255,255,0.45);
    text-transform: uppercase; letter-spacing: 0.08em;
    padding: 10px 24px 10px 40px;
    border-bottom: none;
}
.mobile__menu > ul > li > ul > li.parent > a::after { display: none; }

/* Level 3 submenu (under section headers) */
.mobile__menu ul li ul li ul { background: rgba(0,0,0,0.15); }
.mobile__menu ul li ul li ul > li > a {
    display: flex; align-items: center;
    padding: 12px 24px 12px 56px;
    font-size: 14px; font-weight: 400; color: rgba(255,255,255,0.75);
    border-bottom: 1px solid rgba(255,255,255,0.03);
}

/* Level 3 — parent (Бензиновые генераторы etc.) */
.mobile__menu ul li ul li ul > li.parent > a {
    font-weight: 500; color: rgba(255,255,255,0.85);
}
/* Chevron for level 3 parents */
.mobile__menu ul li ul li ul > li.parent > a::after {
    content: ""; display: inline-block;
    width: 6px; height: 6px;
    border-right: 1.5px solid rgba(255,255,255,0.4);
    border-bottom: 1.5px solid rgba(255,255,255,0.4);
    transform: rotate(-45deg); transition: transform .25s ease;
    margin-left: auto;
}
.mobile__menu ul li ul li ul > li.parent.open > a::after { transform: rotate(45deg); }

/* Level 4 submenu */
.mobile__menu ul li ul li ul li ul { background: rgba(0,0,0,0.1); }
.mobile__menu ul li ul li ul li ul li a {
    display: flex; align-items: center;
    padding: 10px 24px 10px 68px;
    font-size: 13px; font-weight: 400; color: rgba(255,255,255,0.65);
    border-bottom: 1px solid rgba(255,255,255,0.02);
}

/* Hover states */
.mobile__menu > ul > li > a:hover,
.mobile__menu ul li ul li a:hover { background: rgba(255,255,255,0.04); }

/* Active state */
.mobile__menu ul li.active > a { background: #0032a0; color: #fff !important; }

/* Catalog icons */
.mobile-cat-icon { width: 24px; height: auto; margin-right: 14px; opacity: 0.8; flex-shrink: 0; }

/* Search bar */
.mobile-menu-search { padding: 20px 24px 20px 24px; border-bottom: 1px solid rgba(255,255,255,0.06); }
.mobile-menu-search .input-group { display: flex; border-radius: 10px; overflow: hidden; background: rgba(255,255,255,0.08); }
.mobile-menu-search input {
    flex: 1; height: 48px; padding: 0 16px;
    background: transparent; border: none; color: #fff; font-size: 15px; outline: none;
}
.mobile-menu-search input::placeholder { color: rgba(255,255,255,0.4); }
.mobile-menu-search button {
    width: 48px; height: 48px; background: #0032a0; border: none;
    color: #fff; font-size: 16px; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
}


/* Level 2 section header parents (Генераторы, Мотопомпы, etc.) */
.mobile__menu > ul > li > ul > li.parent > a {
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    padding: 12px 24px 12px 40px;
    text-transform: none;
    letter-spacing: 0.02em;
    border-bottom: 1px solid rgba(255,255,255,0.05);
}
.mobile__menu > ul > li > ul > li.parent > a::after {
    content: "";
    display: inline-block;
    width: 6px; height: 6px;
    border-right: 1.5px solid rgba(255,255,255,0.4);
    border-bottom: 1.5px solid rgba(255,255,255,0.4);
    transform: rotate(-45deg);
    transition: transform .25s ease;
    margin-left: auto;
}
.mobile__menu > ul > li > ul > li.parent.open > a::after {
    transform: rotate(45deg);
}
