/* Smart left sidebar v3.19.68 */
.tt-shop { --tt-sidebar-w: 282px; }

/* One source of truth: sidebar only. */
.tt-shop-layout--sidebar-smart {
    display: grid !important;
    grid-template-columns: var(--tt-sidebar-w) minmax(0,1fr) !important;
    gap: 16px !important;
    align-items: start;
}
.tt-shop-layout--sidebar-smart .tt-shop-content { min-width: 0; width: 100%; }

.tt-shop-smart-sidebar {
    position: sticky;
    top: 16px;
    max-height: calc(100vh - 32px);
    overflow: auto;
    border: 1px solid #e2e7ef;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(15,23,42,.055);
    scrollbar-width: thin;
}
.tt-shop-smart-sidebar__head {
    position: sticky;
    top: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 13px 14px 11px;
    border-bottom: 1px solid #edf0f4;
    background: rgba(255,255,255,.96);
    backdrop-filter: blur(8px);
}
.tt-shop-smart-sidebar__head > div { display: grid; gap: 2px; min-width: 0; }
.tt-shop-smart-sidebar__eyebrow { color: var(--tt-primary,#dc2626); font-size: 10px; font-weight: 850; letter-spacing: .055em; text-transform: uppercase; }
.tt-shop-smart-sidebar__head strong { color: #172033; font-size: 15px; line-height: 1.2; }
.tt-shop-smart-sidebar__head > a { color: #737d8e !important; font-size: 10.5px; font-weight: 750; text-decoration: none !important; white-space: nowrap; }
.tt-shop-smart-sidebar__head > a:hover { color: var(--tt-primary,#dc2626) !important; }

.tt-shop-smart-sidebar__form { padding: 12px !important; }
.tt-shop-smart-sidebar .tt-shop-filter__group { margin-bottom: 12px; padding-bottom: 12px; }
.tt-shop-smart-sidebar .tt-shop-filter__title { margin-bottom: 6px; font-size: 12.5px; font-weight: 800; }
.tt-shop-smart-sidebar__select {
    width: 100%;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 32px 0 10px !important;
    border: 1px solid #dce3ec !important;
    border-radius: 9px !important;
    background-color: #fff !important;
    color: #263144 !important;
    box-shadow: none !important;
    font-size: 12.5px !important;
}
.tt-shop-smart-sidebar__select:focus,
.tt-shop-smart-sidebar input:focus { border-color: rgba(220,38,38,.55) !important; box-shadow: 0 0 0 3px rgba(220,38,38,.07) !important; outline: 0; }

.tt-shop-sidebar-section {
    margin: 0;
    padding-top: 11px;
    border-bottom: 1px solid #edf0f4;
}
.tt-shop-sidebar-section__title {
    display: block;
    margin: 0 0 8px;
    padding: 0 2px;
    color: #293446;
    font-size: 12.5px;
    font-weight: 800;
    line-height: 1.35;
}
.tt-shop-sidebar-section__body { display:grid; gap:8px; padding: 0 0 12px; }
.tt-shop-sidebar-section__body--stack { gap: 9px; }
.tt-shop-sidebar-field { display:grid; gap:5px; margin:0; }
.tt-shop-sidebar-field > span { color:#697386; font-size:10.5px; font-weight:750; }
.tt-shop-sidebar-section__body--radios { gap: 1px; }
.tt-shop-smart-sidebar .tt-shop-radio, .tt-shop-smart-sidebar .tt-shop-check { min-height: 29px; font-size:12.5px; }
.tt-shop-smart-sidebar__sale { margin-top: 4px !important; }
.tt-shop-smart-sidebar .tt-shop-price-range { gap:7px; }
.tt-shop-smart-sidebar .tt-shop-price-range label { grid-template-columns: 28px minmax(0,1fr); font-size:11.5px; }
.tt-shop-smart-sidebar .tt-shop-price-range input { height:35px !important; font-size:12px !important; }

.tt-shop-smart-sidebar .tt-shop-active-filters { margin: 10px 0 0; gap:5px; }
.tt-shop-smart-sidebar .tt-shop-active-filter { min-height:25px; padding:3px 7px; font-size:10.5px; }
.tt-shop-smart-sidebar__actions {
    position: sticky;
    bottom: -12px;
    z-index: 2;
    margin: 12px -12px -12px !important;
    padding: 10px 12px 12px;
    border-top: 1px solid #edf0f4;
    background: rgba(255,255,255,.97);
    backdrop-filter: blur(8px);
}

.tt-shop-mobile-tools--smart { display:none; }

@media (max-width: 1199px) and (min-width: 850px) {
    .tt-shop { --tt-sidebar-w: 236px; }
    .tt-shop-layout--sidebar-smart { gap: 12px !important; }
}

@media (max-width: 849px) {
    .tt-shop-layout--sidebar-smart { display:block !important; }
    .tt-shop-mobile-tools--smart {
        display:flex !important;
        align-items:center;
        gap:8px;
        margin-bottom:10px;
    }
    .tt-shop-smart-sidebar {
        position: fixed;
        top:0;
        bottom:0;
        left:0;
        z-index:100100;
        width:min(340px,90vw);
        max-width:90vw;
        max-height:none;
        overflow-y:auto;
        border:0;
        border-radius:0 16px 16px 0;
        transform:translateX(-105%);
        transition:transform .24s ease;
        box-shadow:16px 0 50px rgba(15,23,42,.2);
    }
    .tt-shop-smart-sidebar.is-open { transform:translateX(0); }
    .tt-shop-smart-sidebar__head { top:52px; }
    .tt-shop-smart-sidebar__form { padding-bottom:20px !important; }
    .tt-shop-smart-sidebar__actions { bottom:-20px; }
}

@media (max-width: 849px) {
    .tt-shop-mobile-tools--smart .tt-shop-filter-open { width: auto; min-width: 118px; }
}
