/*
 Theme Name:   Fabrica Child Theme
 Theme URI:    http://fabrica.ancorathemes.com/
 Description:  Fabrica Child Theme
 Author:       AncoraThemes
 Author URI:   http://ancorathemes.com/
 Template:     fabrica
 Version:      1.0.0
 Tags: blog, e-commerce, portfolio, grid-layout, one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, custom-logo, custom-menu, editor-style, featured-image-header, featured-images, flexible-header, footer-widgets, full-width-template, microformats, post-formats, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks
 Text Domain:  fabrica
*/

/* =Theme customization starts here
------------------------------------------------------------ */

/* ==========================================================================
   Blogger Filters Hierarchy - Expand/Collapse System
   ========================================================================== */

/* ---------------------------------------------------------------------
   Base Styles
   --------------------------------------------------------------------- */
ul.sc_item_filters_tabs > li > a {
    font-size: 0.95em;
}

.sc_blogger.sc_item_filters_tabs_left .sc_item_filters_tabs li > a {
    margin: 0.25em 0;
}

.sc_item_filters_hierarchy .sc_item_filters_tabs {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/* ---------------------------------------------------------------------
   Hidden Checkbox Toggle (CSS-only expand/collapse)
   --------------------------------------------------------------------- */
.sc_item_filters_hierarchy .sc_filter_toggle {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
}

/* ---------------------------------------------------------------------
   Chevron Button
   --------------------------------------------------------------------- */
.sc_item_filters_hierarchy .sc_filter_chevron {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    margin-right: 4px;
    cursor: pointer;
    border-radius: 3px;
    transition: background-color 0.2s ease;
    flex-shrink: 0;
    vertical-align: middle;
}

.sc_item_filters_hierarchy .sc_filter_chevron:hover {
    background-color: rgba(0, 0, 0, 0.05);
}

.sc_item_filters_hierarchy .sc_filter_chevron:focus {
    outline: 2px solid var(--theme-color-text_link, #0073aa);
    outline-offset: 1px;
}

/* Chevron icon using CSS */
.sc_item_filters_hierarchy .sc_filter_chevron::before {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(-45deg) translateY(-1px);
    transition: transform 0.25s ease;
    opacity: 0.6;
}

.sc_item_filters_hierarchy .sc_filter_chevron:hover::before {
    opacity: 1;
}

/* Rotate chevron when expanded */
.sc_item_filters_hierarchy .sc_filter_toggle:checked + .sc_filter_chevron::before {
    transform: rotate(45deg) translateY(0);
}

/* ---------------------------------------------------------------------
   List Item Layout
   --------------------------------------------------------------------- */
.sc_item_filters_hierarchy .sc_item_filters_tabs > li,
.sc_item_filters_hierarchy .sc_item_filters_tabs_children > li {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    position: relative;
}

/* Items without children - add spacing to align with siblings that have chevrons */
.sc_item_filters_hierarchy .sc_item_filters_tabs > li:not(.sc_filter_has_children),
.sc_item_filters_hierarchy .sc_item_filters_tabs_children > li:not(.sc_filter_has_children) {
    padding-left: 24px; /* Same as chevron width + margin */
}

/* Items with children - no extra padding (chevron provides it) */
.sc_item_filters_hierarchy .sc_item_filters_tabs > li.sc_filter_has_children,
.sc_item_filters_hierarchy .sc_item_filters_tabs_children > li.sc_filter_has_children {
    padding-left: 0;
}

/* ---------------------------------------------------------------------
   Children Container - Collapse/Expand Animation
   --------------------------------------------------------------------- */
div.sc_item_filters.sc_item_filters_hierarchy ul.sc_item_filters_tabs ul.sc_item_filters_tabs_children {
    display: grid;
    grid-template-rows: 0fr;
    position: static;
    list-style: none;
    padding: 0;
    margin: 0;
    margin-left: 24px;
    background: transparent;
    box-shadow: none;
    width: 100%;
    transition:
        grid-template-rows 0.3s ease,
        opacity 0.25s ease,
        visibility 0.3s;
    opacity: 0;
    visibility: hidden;
}

/* Inner wrapper for smooth height animation */
div.sc_item_filters.sc_item_filters_hierarchy ul.sc_item_filters_tabs ul.sc_item_filters_tabs_children > li {
    overflow: hidden;
}

/* Expanded state */
.sc_item_filters_hierarchy .sc_filter_toggle:checked ~ .sc_item_filters_tabs_children {
    grid-template-rows: 1fr;
    opacity: 1;
    visibility: visible;
    padding-top: 2px;
    padding-bottom: 4px;
}

/* ---------------------------------------------------------------------
   Child Items Styling
   --------------------------------------------------------------------- */
div.sc_item_filters.sc_item_filters_hierarchy ul.sc_item_filters_tabs ul.sc_item_filters_tabs_children li {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin: 0;
    padding: 0;
}

div.sc_item_filters.sc_item_filters_hierarchy ul.sc_item_filters_tabs ul.sc_item_filters_tabs_children li a {
    display: inline-block;
    padding: 4px 0;
    white-space: nowrap;
    color: #555;
    font-size: 0.9em;
    margin: 0;
    transition: color 0.2s ease;
}

div.sc_item_filters.sc_item_filters_hierarchy ul.sc_item_filters_tabs ul.sc_item_filters_tabs_children li a:hover,
div.sc_item_filters.sc_item_filters_hierarchy
    ul.sc_item_filters_tabs
    ul.sc_item_filters_tabs_children
    li.sc_item_filters_tabs_active
    > a {
    color: var(--theme-color-text_link);
}

/* ---------------------------------------------------------------------
   Depth-based Styling (Progressive indentation visual cue)
   --------------------------------------------------------------------- */
.sc_item_filters_hierarchy li[data-depth='1'] > a {
    font-size: 0.9em;
}

.sc_item_filters_hierarchy li[data-depth='2'] > a {
    font-size: 0.85em;
}

.sc_item_filters_hierarchy li[data-depth='3'] > a,
.sc_item_filters_hierarchy li[data-depth='4'] > a {
    font-size: 0.8em;
}

/* Subtle left border for nested levels */
div.sc_item_filters.sc_item_filters_hierarchy ul.sc_item_filters_tabs_children {
    border-left: 1px solid rgba(0, 0, 0, 0.08);
    padding-left: 8px !important;
    margin-left: 8px;
}

/* ---------------------------------------------------------------------
   Active Ancestor Indicator
   --------------------------------------------------------------------- */
.sc_item_filters_hierarchy li.sc_filter_has_active_child > a {
    color: var(--theme-color-text_link);
    opacity: 0.7;
}

/* ---------------------------------------------------------------------
   Post Count Badge
   --------------------------------------------------------------------- */
.sc_item_filters_hierarchy .sc_item_filters_tabs_count {
    font-size: 0.85em;
    opacity: 0.6;
    margin-left: 4px;
}

/* ---------------------------------------------------------------------
   Responsive Adjustments
   --------------------------------------------------------------------- */
@media (max-width: 767px) {
    .sc_item_filters_hierarchy .sc_filter_chevron {
        width: 28px;
        height: 28px;
    }

    .sc_item_filters_hierarchy .sc_filter_chevron::before {
        width: 7px;
        height: 7px;
    }

    div.sc_item_filters.sc_item_filters_hierarchy ul.sc_item_filters_tabs ul.sc_item_filters_tabs_children li a {
        padding: 6px 0;
    }
}
