/****************************
 * TEACHING FILTER FORM
 ****************************/


#filters .panel-title {
    font-weight: 800;
    text-transform: uppercase;
    color: #03272d !important;
    letter-spacing: 1px;
    border-bottom: 1px solid lightgray !important;
    line-height: 1;
    position: relative;
    display: block;
    padding: 1.25rem 1rem;
}

#filters .search-box {
    padding-bottom: 9px;
}

#filters .panel-Success {
    margin-top: 0px;
}

#filters .panel-Success .panel-body {
    padding-top: 5px;
}

/****************************
 * Foundation overrides
 ****************************/
#filters .accordion,
#filters .accordion-content,
#filters .accordion-body,
#filters .panel,
#filters .panel-body,
#filters .panel-group,
#filters .panel-title,
#filters .panel-title a:hover,
#filters .panel-title a:focus,
#filters .panel-title a:visited,
#filters .accordion-header,
#filters .accordion-header:hover,
#filters .accordion-header:focus
 {
    background-color: var(--light-gray);
    border: none;
	text-decoration: none;
}

.panel-title a .filter-arrow::before {
    content: "\f106";
}

.panel-title a.collapsed .filter-arrow::before {
    content: "\f107";
}


#filters .panel-title {
    border-bottom: 2px solid var(--medium-gray);
}

#filters .accordion-item,
#filters .accordian-body,
#filters .accordion-content {
    padding: 1em;
}

#headingFilters {
	padding: 0;
}

/****************************
 * Typography
 ****************************/
#filters .filter-main-header {
    font-size: 1.2rem;
    font-weight: bold;
    /* margin-top: 1rem; */
}

#filters .filter-header {
    font-size: 0.8rem;
    font-weight: bold;
    text-transform: uppercase;
    margin-top: 0.5rem;
}

#filters label {
    /* font-size: 1.0rem;
    display: block; */
    margin: 0;
    font-weight: 600;
    /* line-height: 1.8; */
    color: #0a0a0a;
    width:100%;
}

#filters .dropdown-list {
    font-size: 1.0rem;
}

#filters label.disabled,
#filters label.disabled + button.dropdown-button {
    color: var(--disabled-color);
    cursor: not-allowed;
}

#filters .form-group {
    /*margin: 0.75rem 0;*/
}

#filters select {
    border-radius: 5px;
    border-radius: 5px;
    height: 2.4375rem;
    /*margin: 0 0 1rem;*/
    padding: 0.5rem;
    font-size: 0.8rem;
    line-height: 1.5;
    font-weight: 600;
	border: 1px solid var(--medium-gray);
	/*
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="24" viewBox="0 0 32 24"><polygon points="0,0 32,0 16,24" style="fill: rgb%28138, 138, 138%29"></polygon></svg>');
    background-origin: content-box;
    background-repeat: no-repeat;
    background-position: right -1rem center;
    background-size: 20px 12px;
	*/
    padding-right: 1rem;
    width: 100%;
    box-sizing: border-box;
	cursor: pointer;
}

#filters option {
    font-weight: 600;
}

/****************************
 * Book / Topical toggle
 ****************************/
#topical {
    display: flex;
    justify-content: space-evenly;
}

    #topical label {
        display: flex;
        align-items: center;
        border: 2px solid var(--medium-gray);
        border-radius: 5px;
        font-size: 0.7rem;
        font-weight: bold;
        line-height: 1.0rem;
        margin: 0.5rem;
        padding: 0.5rem;
        text-transform: uppercase;
        vertical-align: middle;
    }

        #topical label.active,
        #topical label:hover {
            border-color: var(--toxic-green);
        }

        #topical label input[type=radio] {
            /* -webkit-appearance: none; */
            margin: 0 0.5rem 0 0;
        }

        #topical label:has(input:checked) {
            border-color: var(--toxic-green);
        }

/* #topical > label > input:checked {
	background-color: var(--toxic-green);
} */

/****************************
 * Search text box
 ****************************/
#filters input[type="search"] {
    border-radius: 5px;
    border: 1px solid var(--medium-gray);
    height: 2.4375rem;
    padding: 0.5rem;
    font-size: .8rem;
    line-height: 1.5;
    font-weight: 600;
    width: 86%;
    box-sizing: border-box;
}

#filters #btnSearchText {
    border: 1px solid;
    border-color: #72DB2B;
    background-color: #72DB2B;
    vertical-align: top;
    height: 2.4375rem;
    padding: 5px 5px;
    margin: 0;
    border-radius: 4px;
    color: white;
    min-width: 12%
}

#filters #btnSearchText::-webkit-search-cancel-button {
    display: block;
    opacity: 1.0;
}

/****************************
 * More Filters toggle
 ****************************/
#more-filters-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 2px solid var(--medium-gray);
    border-bottom: 2px solid var(--medium-gray);
    /* font-size: 1.5rem; */
    /* font-weight: bold; */
    /* margin: 2.0rem 0; */
    margin: 0;
    padding: 0.75rem 1rem;
}

#more-filters {
    border-bottom: 2px solid var(--medium-gray);
    /* margin-bottom: 2em; */
    padding-bottom: 2em;
}

#more-filters-link {
    text-decoration: none;
}


#filter-button-clear {
    columns: var(--evergreen);
    font-size: 0.8rem;
    font-weight: bold;
    margin: 0.5rem 0;
    display: inline-block;
}

#teaching-filter-form .filter-buttons {
    margin-bottom: 0.5em;
}

.btn.btn-primary {
    background-color: var(--toxic-green);
    color: var(--evergreen) !important;
    font-weight: bold;
    text-transform: uppercase;
    padding-left: 1em;
    padding-right: 1em;
    padding-top: 0.85em;
    padding-bottom: 0.85em;
    margin: 2rem 0;
	border-color: var(--toxic-green);
}

.button.primary:focus, .button.primary:hover {
    background-color: var(--toxic-green);
}

.flex-container {
    display: flex;
}

.flex-child-auto {
    flex: 1 1 auto;
}


/****************************
 * Dropdown menus
 ****************************/
#filters .dropdown-button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
    background-color: var(--white);
    border: 1px solid var(--medium-gray);
    height: 2.5rem;
    width: 100%;
    padding: 0.5rem;
    border-radius: 5px;
    outline: none;
    font-weight: 600;
}

#filters .button-p-container p {
    margin: 0;
}

#filters .dropdown-list {
    color: var(--black);
    background-color: var(--light-gray);
    border: 1px solid var(--medium-gray);
    border-top: none;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

    #filters .dropdown-list ul {
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        list-style-type: none;
        text-align: center;
        max-height: 20rem;
        overflow-y: auto;
        box-sizing: border-box;
        padding: 0;
    }

#filters .dropdown-list li {
    margin: 0;
    width: 20%;
    color: var(--evergreen);
    padding-top: .5rem;
    border-bottom: .5px solid var(--light-gray);
    border-right: .5px solid var(--light-gray);
    box-sizing: border-box;
    cursor: pointer;
    font-weight: bold;
    padding: 0.5rem 0.25rem;
}

    #filters .dropdown-list li:nth-child(5n + 5) {
        border-right: none;
    }

    #filters .dropdown-list li:hover {
        background-color: var(--toxic-green);
    }

#filters .inactive {
    color: var(--medium-gray);
    cursor: default;
}

#filters .dropdown-list li.inactive {
    color: var(--medium-gray);
    cursor: default;
}

#filters .dropdown-list li.inactive:hover {
    /* background-color: var(--disabled-color); */
    background-color: var(--light-gray);
    cursor: not-allowed;
}


#filters .selected {
    border: 2px solid var(--toxic-green) !important;
}

#filters .inactive:hover {
    /* background-color: var(--disabled-color); */
    background-color: var(--light-gray);
    cursor: not-allowed;
}

#filters .dropdown-list ul::-webkit-scrollbar {
    width: 4px;
}

#filters .dropdown-list ul::-webkit-scrollbar-track {
    /*box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);*/
    background-color: var(--light-gray);
    border-bottom-right-radius: 5px;
}

#filters .dropdown-list ul::-webkit-scrollbar-thumb {
    background-color: var(--toxic-green);
}

#filters .no-bottom-border-radius {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

#filters .icon-container {
    display: flex;
    align-items: center;
    height: 2.5rem;
    width: 1rem;
}

#filters .dropdown-chevron {
    padding: 6px 10px 6px 15px;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 16px 12px;
    border-radius: 4px;
/*  appearance: none;
    height: 1rem;
    width: 1rem;
    margin: .5rem;
*/
}

#filters .chevron-up {
    transform: rotate(180deg);
}

#filters .hidden {
    display: none;
}


/* Bible book dropdown */
#filters #booksDropdown ul {
    max-height: none;
}

    #filters #booksDropdown ul:first-child {
        border-bottom: 2px solid var(--toxic-green);
    }

/****************************
 * Checkbox Filters
 ****************************/
#filters .form-group-checkbox {
    justify-content: center;
    max-height: 10rem;
    margin: auto;
    overflow: auto;
}

#filters .form-group-checkboxfilter > label {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
}

#filters .form-group-checkbox > label > input {
    -webkit-appearance: none;
    background-color: var(--light-gray);
    border: 1px solid var(--medium-gray);
    border-radius: 3px;
    height: 1rem;
    width: 1rem;
    margin: auto 8px auto 0;
}

    #filters .form-group-checkbox > label > input:checked {
        background-color: var(--toxic-green);
		padding-left: 3px;
    }

    #filters .form-group-checkbox > label > input:focus {
        outline: none;
    }

    #filters .form-group-checkbox > label > input:checked:after {
        content: '✓';
        font-size: .8rem;
        vertical-align: top;
    }

#filters .form-group-checkbox::-webkit-scrollbar {
    width: 5px;
}

#filters .form-group-checkbox::-webkit-scrollbar-track {
    background-color: var(--light-gray);
    border-bottom-right-radius: 5px;
}

#filters .form-group-checkbox::-webkit-scrollbar-thumb {
    background-color: var(--toxic-green);
}

#content-wrapper {
    background-color: white;
}

.accordion-body,
.accordian-content {
	position: relative;
}

.filter-overlay {
	position: relative;
}

#loader-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    background-color: rgba(0, 0, 0, 0.0);
	display: none;
}

#loader-message {
    display: block;
    position: absolute;
	color: var(--emerald-green);
	font-weight: bold;
    left: 58%;
    top: 30%;
    width: 100px;
    height: 100px;
    margin: -50px 0 0 -50px;
}

#loader {
    display: block;
    position: absolute;
    left: 50%;
    top: 25%;
    width: 100px;
    height: 100px;
    margin: -50px 0 0 -50px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: var(--emerald-green); /* #3498db; */
    -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
    animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */
}
 
#loader:before {
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    right: 5px;
    bottom: 5px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: var(--toxic-green); /*#e74c3c;*/
    -webkit-animation: spin 3s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
      animation: spin 3s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */
}
 
#loader:after {
    content: "";
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: var(--toxic-green); /* #f9c922;*/
    -webkit-animation: spin 1.5s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
      animation: spin 1.5s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */
}
 
@-webkit-keyframes spin {
    0%   {
        -webkit-transform: rotate(0deg);  /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: rotate(0deg);  /* IE 9 */
        transform: rotate(0deg);  /* Firefox 16+, IE 10+, Opera */
    }
    100% {
        -webkit-transform: rotate(360deg);  /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: rotate(360deg);  /* IE 9 */
        transform: rotate(360deg);  /* Firefox 16+, IE 10+, Opera */
    }
}
@keyframes spin {
    0%   {
        -webkit-transform: rotate(0deg);  /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: rotate(0deg);  /* IE 9 */
        transform: rotate(0deg);  /* Firefox 16+, IE 10+, Opera */
    }
    100% {
        -webkit-transform: rotate(360deg);  /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: rotate(360deg);  /* IE 9 */
        transform: rotate(360deg);  /* Firefox 16+, IE 10+, Opera */
    }
}



/****************************
 * Responsiveness
 ****************************/
/* Medium and up */
@media screen and (min-width: 40em) {

    /* On larger displays, hide accordion toggle */
    #filters .panel-heading {
        display: none !important;
    }

    #filters .is-active > .accordion-title {
        border-bottom: none !important;
    }
    /* and force accordion open */
    #filters .panel-body {
        display: block !important;
    }
    #collapseFilters {
        display: block !important;
    }
	
}


/* downsizing font */
.button-p{
    font-size:.8rem !important;
}

.form-group{
    font-size:0.8rem !important;

}

