﻿html, body {
    overflow-x: hidden;
}

.search-box {
    position: relative;
    max-width: 100%;
    margin-bottom: 0px;
}

.search-input {
    width: 100%;
    max-width: 100%;
    height: 56px;
    padding-right: 3rem;
    border-radius: 12px;
}

.search-icon {
    position: absolute;
    top: 50%;
    right: 1rem;
    transform: translateY(-50%);
    color: #6c757d;
    font-size: 1.2rem;
}

.results-filters {
    margin-bottom: 1rem;
}

.filter-group {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    margin-bottom: 0.5rem;
}

.filter-title {
    font-weight: 600;
    margin-right: 0.5rem;
    white-space: nowrap;
}

.filter-search-group {
    display: flex;
}

    .filter-search-group .filters-search-input {
        padding: 5px !important;
        width: 90%;
        font-size: 0.8rem;
    }

    .filter-search-group .btn.btn-filter-search {
        width: 10% !important;
        border: none;
        margin: 1px;
        color: #fff;
    }

        .filter-search-group .btn.btn-filter-search:hover {
            transform: none !important;
            background-color: var(--color-primary);
        }

.filter-items {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.filter-tag {
    display: inline-flex;
    align-items: center;
    background-color: #f1f3f5;
    border-radius: 20px;
    padding: 0.25rem 0.75rem;
    font-size: 0.9rem;
}

.remove-button {
    background: none;
    border: none;
    color: #dc3545;
    font-size: 1rem;
    margin-left: 0.5rem;
    cursor: pointer;
    line-height: 1;
}

    .remove-button:hover {
        color: #a71d2a;
    }

.clear-filters {
    background: none;
    border: none;
    color: #0d6efd;
    padding: 0;
    font-size: 0.9rem;
    cursor: pointer;
}

/** Filters DropDowns**/
.filter-dropdowns {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 0.75rem;
    margin-bottom: 20px;
}

.filter-dropdown {
    flex: 1 1 100px;
    max-width: 200px;
    box-sizing: border-box;
}

button.btn.dropdown-toggle.show {
    background-color: var(--color-secondary);
    color: #fff;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

.filter-dropdown .dropdown-menu {
    padding: 0.5rem;
    min-width: 240px;
    font-size: 0.8rem;
}


.filter-dropdown input[type="checkbox"] {
    margin-right: 0.5rem;
}

.dropdown-menu {
    --bs-dropdown-link-active-bg: transparent;
}

.filter-dropdown .btn {
    width: 100%;
    color: var(--color-secondary);
    border-color: var(--color-secondary);
    padding: 5px;
    font-size: 0.8rem;
}

    .filter-dropdown .btn:hover, .filter-dropdown .btn:active {
        color: #fff;
        background-color: var(--color-secondary);
        border-color: var(--color-secondary);
    }

ul.dropdown-menu.show {
    max-height: 200px;
    overflow-y: scroll;
    border: solid 1px #6c34b9;
    /* border-top: 0px; */
    margin-top: -1px !important;
    border-radius: 0;
    /* background-color: #f0f0f0*/
}

ul.dropdown-menu li label {
    cursor: pointer !important;
}

h3.sidebar-header {
    font-size: 0.9rem;
    font-weight: bold;
    border-bottom: solid 2px #eeee;
}

.sidebar ul {
    list-style: none;
    padding-left: 0;
}


    .sidebar ul li a {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 10px 12px;
        border-radius: 10px;
        text-decoration: none;
        color: var(--color-secondary);
        text-decoration: none;
        font-size: 0.8rem;
        transition: all .25s;
    }

.sidebar a:hover {
    background: #f1f3f5;
}

.sidebar i {
    font-size: 18px;
}

/* DEFAULT layout */
/* smooth animation */
.layout-wrapper > div {
    transition: all 0.3s ease;
}

.content-a {
    flex: 0 0 75%;
    max-width: 75%;
}

.content-b {
    flex: 0 0 25%;
    max-width: 25%;
    box-sizing: border-box;
}


@media (max-width: 768px) {

    /* content A always full width on mobile */
    .content-a {
        flex: 0 0 100%;
        max-width: 100%;
    }

    /* sidebar becomes drawer */
    .content-b {
        position: fixed;
        top: 0;
        right: -320px; /* hidden outside screen */
        width: 320px;
        height: 100vh;
        background: #fff;
        z-index: 1001;
        padding: 20px 0px;
        overflow-y: auto;
        overflow-x: hidden;
        box-shadow: -10px 0 30px rgba(0,0,0,.15);
        transition: .35s ease;
    }

    .sidebar ul {
        padding: 0px;
    }

    #sidebarToggle:checked ~ .layout-wrapper .sidebar li {
        display: flex; /*Centerized the icons*/
    }

    #sidebarToggle:checked ~ .layout-wrapper .content-b {
        right: 0; /* slide in */
    }

    #sidebarToggle:checked ~ .sidebar-overlay {
        opacity: 1;
        pointer-events: auto;
    }

    .sidebar-toggle {
        position: fixed;
        bottom: 20px;
        right: 20px;
        width: 56px;
        height: 56px;
        border-radius: 50%;
        padding: 0;
        z-index: 1100;
    }

    .open-text {
        display: none;
    }

    .sidebar-toggle .hamburger {
        display: block;
        font-size: 26px;
    }
}
