.mobile-overlay{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.45);

    opacity:0;

    visibility:hidden;

    transition:.35s;

    z-index:998;

}

.mobile-overlay.active{

    opacity:1;

    visibility:visible;

}

.mobile-menu{

    position:fixed;

    top:0;

    left:-340px;

    width:320px;

    height:100vh;

    background:#fff;

    z-index:999;

    transition:left .35s ease;

    overflow-y:auto;

    box-shadow:0 15px 40px rgba(0,0,0,.15);

}

.mobile-menu.active{

    left:0;

}

.mobile-header{

    padding:24px;

    text-align:center;

    position:relative;

    border-bottom:1px solid var(--border);

}

.mobile-header img{

    width:70px;

    margin:auto;

    margin-bottom:15px;

}

.mobile-header h3{

    font-size:20px;

    margin-bottom:5px;

}

.mobile-header span{

    color:var(--text-light);

    font-size:13px;

}

#closeMenu{

    position:absolute;

    top:18px;

    right:18px;

    width:36px;

    height:36px;

    border-radius:50%;

    border:none;

    background:#f4f6fb;

    cursor:pointer;

    transition:.3s;

}

#closeMenu:hover{

    background:var(--primary);

    color:#fff;

}

.mobile-search{

    padding:18px;

    display:flex;

}

.mobile-search input{

    flex:1;

    border:1px solid var(--border);

    border-radius:8px 0 0 8px;

    padding:12px;

}

.mobile-search button{

    width:55px;

    background:var(--primary);

    color:#fff;

    border-radius:0 8px 8px 0;

}

.mobile-nav li{

    border-bottom:1px solid #f2f2f2;

}

.mobile-nav a{

    display:flex;

    align-items:center;

    gap:15px;

    padding:14px 22px;

    transition:.3s;

}

.mobile-nav a:hover{

    background:#EEF4FF;

    color:var(--primary);

}

.mobile-actions{

    padding:25px;

    border-top:1px solid var(--border);

}

.mobile-actions a{

    display:flex;

    gap:12px;

    margin-bottom:18px;

}