.page-shell {
    padding-bottom:24px
}
.model-search {
    position:relative;
    margin:0 0 16px
}
.model-search input {
    width:100%;
    height:46px;
    padding:0 14px;
    border:1px solid var(--line);
    border-radius:10px
}
.search-results {
    position:absolute;
    z-index:1000;
    top:50px;
    left:0;
    right:0;
    background:#fff;
    border:1px solid var(--line);
    border-radius:10px;
    box-shadow:0 12px 30px rgba(0,0,0,.12);
    overflow:hidden
}
.search-results a {
    display:block;
    padding:10px 13px;
    border-bottom:1px solid var(--line)
}
.layout {
    display:grid;
    grid-template-columns:285px minmax(0,1fr);
    gap:18px;
    align-items:start
}
.filters {
    position:sticky;
    top:76px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:12px;
    padding:14px;
    max-height:calc(100vh - 90px);
    overflow:auto
}
.filters h2 {
    margin:0 0 10px
}
.filter {
    margin-bottom:12px
}
.filter label {
    display:block;
    font-weight:700;
    margin-bottom:6px
}
.filter-row {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px
}
.filter input,.filter select,.filter-accordion input {
    width:100%;
    padding:9px;
    border:1px solid #d1d5db;
    border-radius:8px
}
.filter-accordion {
    margin:10px 0;
    border:1px solid var(--line);
    border-radius:10px;
    overflow:hidden
}
.filter-accordion summary {
    cursor:pointer;
    padding:10px 12px;
    background:var(--soft);
    display:flex;
    flex-direction:column
}
.filter-accordion summary span {
    font-weight:800
}
.filter-accordion summary small {
    color:var(--muted)
}
.filter-accordion-content {
    padding:10px
}
.checkbox-group {
    max-height:210px;
    overflow:auto
}
.checkbox-row {
    display:flex!important;
    align-items:center;
    gap:8px;
    padding:6px;
    border-radius:7px;
    cursor:pointer
}
.checkbox-row:hover {
    background:var(--soft)
}
.checkbox-row input {
    width:16px!important;
    height:16px
}
.brand-search-input {
    margin-bottom:6px
}
.filter-submit-button {
    width:100%;
    border:0;
    border-radius:8px;
    background:var(--brand);
    color:#fff;
    padding:10px;
    font-weight:800
}
.filter-reset {
    display:block;
    text-align:center;
    padding:9px;
    color:var(--muted)
}
.filter-toggle {
    display:none;
    margin-bottom:10px;
    background:var(--brand);
    color:#fff;
    border:0;
    border-radius:8px;
    padding:9px 12px
}
.results-meta {
    margin-bottom:9px;
    color:var(--muted)
}
.food-list {
    background:#fff;
    border:1px solid var(--line);
    border-radius:12px;
    overflow:hidden
}
.food-row {
    display:grid;
    grid-template-columns:minmax(340px,2fr) 120px 120px 105px 95px 100px;
    align-items:center;
    border-bottom:1px solid var(--line)
}
.food-row:last-child {
    border-bottom:0
}
.food-row--head {
    background:var(--soft);
    font-weight:800;
    font-size:13px
}
.food-row>div {
    padding:10px
}
.product-cell {
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0
}
.product-thumb {
    flex:0 0 68px;
    width:68px;
    height:78px;
    display:flex;
    align-items:center;
    justify-content:center
}
.product-thumb img {
    max-height:100%;
    object-fit:contain
}
.product-name {
    display:block;
    font-weight:800
}
.product-type {
    display:inline-block;
    margin-top:4px;
    padding:2px 7px;
    background:var(--brand-weak);
    border-radius:999px;
    font-size:11px
}
.compare-toggle {
    display:flex;
    gap:5px;
    margin-top:6px;
    border:0;
    background:none;
    padding:0;
    color:#555;
    cursor:pointer
}
.compare-toggle span {
    width:18px;
    height:18px;
    border-radius:50%;
    background:var(--brand);
    color:#fff
}
.price-cell {
    font-weight:800
}
.sort-icon {
    opacity:.35
}
.sort-icon.active {
    opacity:1;
    color:var(--brand)
}
.pager {
    display:flex;
    justify-content:center;
    gap:5px;
    margin-top:16px
}
.pager a {
    padding:7px 11px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:7px
}
.pager a.active {
    background:var(--brand);
    color:#fff
}
.seo-copy {
    margin-top:30px;
    padding:20px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:12px
}
@media(max-width:980px) {
    .layout {
        grid-template-columns:1fr
    }
    .filter-toggle {
        display:inline-block
    }
    .filters {
        display:none;
        position:static;
        max-height:none
    }
    .filters.is-open {
        display:block
    }
}

/* v2 - kapsamli facet filtreler */ .filters-header {
                                        display:flex;
                                        align-items:flex-start;
                                        justify-content:space-between;
                                        gap:10px;
                                        margin-bottom:12px;
                                        padding:0 2px
                                    }
.filters-header h2 {
    margin:0;
    font-size:18px
}
.filters-header span {
    display:block;
    margin-top:2px;
    font-size:12px;
    color:var(--muted)
}
.filter-clear-top {
    font-size:12px;
    font-weight:700;
    color:var(--brand);
    white-space:nowrap
}
.filter-accordion summary {
    position:relative;
    padding-right:30px
}
.filter-accordion summary:after {
    content:'+';
    position:absolute;
    right:11px;
    top:50%;
    transform:translateY(-50%);
    font-size:18px;
    font-weight:700;
    color:var(--muted)
}
.filter-accordion[open] summary:after {
    content:'−'
}
.filter-search {
    width:100%;
    margin:0 0 8px;
    padding:9px 10px;
    border:1px solid #d1d5db;
    border-radius:8px;
    background:#fff
}
.checkbox-group--tall {
    max-height:260px
}
.checkbox-label {
    min-width:0;
    flex:1;
    line-height:1.25
}
.filter-count {
    margin-left:auto;
    padding-left:8px;
    color:var(--muted);
    font-size:12px;
    white-space:nowrap
}
.facet-block {
    padding:2px 0 12px;
    margin-bottom:10px;
    border-bottom:1px solid var(--line)
}
.facet-block:last-child {
    border-bottom:0;
    margin-bottom:0;
    padding-bottom:0
}
.facet-title {
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:8px;
    margin:0 0 7px
}
.facet-title strong {
    font-size:13px
}
.facet-title small {
    font-size:11px;
    color:var(--muted)
}
.range-note {
    margin-top:6px;
    font-size:11px;
    color:var(--muted)
}
.filter-hint {
    margin:0 0 8px;
    color:var(--muted);
    font-size:12px;
    line-height:1.4
}
.filter-search-empty {
    padding:8px 4px;
    color:var(--muted);
    font-size:12px
}
.filter-actions {
    position:sticky;
    bottom:-14px;
    margin:12px -14px -14px;
    padding:10px 14px 14px;
    background:linear-gradient(to bottom,rgba(255,255,255,.75),#fff 18%);
    border-top:1px solid var(--line);
    z-index:3
}
.search-empty {
    display:block;
    padding:10px 13px;
    color:var(--muted)
}

/* Mobil: fırın listesindeki gibi tablo yapısını koru, yalnız tablo alanını yatay kaydır. */
.layout > main {
    min-width:0;
    width:100%;
}

@media(max-width:760px) {
    .food-list {
        max-width:100%;
        overflow-x:auto;
        overflow-y:hidden;
        -webkit-overflow-scrolling:touch;
    }

    .food-row {
        min-width:880px;
    }
}
