
.mobile-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    z-index: 1050;
}

.mobile-modal-content {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    border-radius: 0;
    display: flex;
    flex-direction: column;
    z-index: 1051;
}

/* Animations */
.slide-up { animation: slide-up 0.3s ease-out forwards; }
.slide-down { animation: slide-down 0.3s ease-in forwards; }
@keyframes slide-up { from { transform: translateY(100%); } to { transform: translateY(0); } }
@keyframes slide-down { from { transform: translateY(0); } to { transform: translateY(100%); } }

/* Header */
.mobile-list-modal-header {
    display: flex;
    justify-content: start;
    align-items: center;
    padding: 1rem;
    border-bottom: 1px solid #f0f0f0;
    background-color: #F6861F;
    position: relative;
}

.mobile-list-modal-title {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 600;
    color: white;
}

.mobile-list-modal-header .btn-close {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
}

/* Body */
.mobile-list-modal-body {
    padding: 0;
    overflow-y: auto;
    flex-grow: 1;
}

.list-group-item {
    padding: 0;
    border: 0;
    border-bottom: 1px solid #f0f0f0;
}

.list-group-item:last-child {
    border-bottom: 0;
}

.list-item-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.5rem 1rem 1rem;
    cursor: pointer;
    width: 100%;
}

.item-text {
    font-size: 1rem;
    color: #333;
}

.expander-icon {
    color: #adb5bd;
    transition: transform 0.2s ease-in-out;
}

.list-item-header[aria-expanded="true"] .expander-icon {
    transform: rotate(90deg);
}

/* Sub-items & Tree View */
.sub-items-container {
    position: relative;
    padding: 0;
    background-color: #fff;
    margin-left: 10px;
    padding-left: 10px;
    border-left: 1px solid #e1e1e1;
}

.sub-items-container .list-item-header,
.sub-items-container .all-link {
    position: relative;
}

/* The horizontal line */
    .sub-items-container .list-item-header::before,
    .sub-items-container .all-link::before {
        content: '';
        position: absolute;
        top: 50%;
        left: -10px;
        width: 10px;
        height: 1px;
        background-color: #e1e1e1;
    }

.sub-item {
    font-size: 0.95rem;
    cursor: pointer;
    border-bottom: 1px solid #f0f0f0;
}

.sub-items-container .list-group-item:last-child {
    border-bottom: 0;
}

.sub-item.all-link {
    font-weight: 500;
    padding: 0.8rem 1rem; /* Reduced vertical padding */
}

.sub-item:hover {
    color: #0d6efd;
}

/* All Products Item */
.all-products-item {
    background-color: #f8f9fa;
    border-bottom: 1px solid #e9ecef !important;
}

.all-products-item .list-item-header {
    background: #ffffff;
    color: #ff8006;
    margin: 0;
    border-radius: 0;
    border-left: 4px solid #ff8006;
    padding: 1.2rem 1.5rem 1.2rem 1rem;
}

.all-products-item .list-item-header:hover {
    background: #f8f9fa;
    color: #e67300;
}

.all-products-item .item-text {
    color: #ff8006;
    font-weight: 700;
}
