.sdgf-finder{
    --sdgf-border:#dedede;
    --sdgf-bg:#fff;
    --sdgf-muted:#666;
    --sdgf-text:#1f2937;
    max-width:1200px;
    margin:0 auto;
    color:var(--sdgf-text);
}
.sdgf-finder *{box-sizing:border-box}

.sdgf-filter-toolbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    padding:12px 14px;
    border:1px solid var(--sdgf-border);
    border-radius:10px;
    background:#fff;
    margin-bottom:10px;
}
.sdgf-filter-summary{
    display:flex;
    align-items:baseline;
    gap:10px;
    flex-wrap:wrap;
}
.sdgf-filter-summary span{
    color:var(--sdgf-muted);
    font-size:.9rem;
}
.sdgf-filter-toggle{
    border:1px solid #222!important;
    background:#fff!important;
    color:#222!important;
    border-radius:8px!important;
    padding:7px 11px!important;
    font:inherit!important;
    cursor:pointer;
    white-space:nowrap;
}

.sdgf-filter-panel{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px 18px;
    background:#fff;
    border:1px solid var(--sdgf-border);
    border-radius:10px;
    padding:14px;
    margin-bottom:12px;
}
.sdgf-filter-panel[hidden]{display:none!important}

.sdgf-filter-title-row{
    display:flex;
    justify-content:space-between;
    align-items:baseline;
    gap:10px;
    flex-wrap:wrap;
}
.sdgf-filter-group h3{
    margin:0 0 7px;
    font-size:.95rem;
}
.sdgf-filter-hint{
    color:var(--sdgf-muted);
    font-size:.8rem;
}
.sdgf-chip-list{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
}
.sdgf-finder button.sdgf-filter-chip{
    border:1px solid var(--sdgf-border)!important;
    background:#fff!important;
    color:#222!important;
    border-radius:999px!important;
    padding:6px 10px!important;
    min-height:32px;
    line-height:1.1!important;
    font:inherit!important;
    font-size:.88rem!important;
    cursor:pointer;
}
.sdgf-finder button.sdgf-filter-chip:hover,
.sdgf-finder button.sdgf-filter-chip.is-active{
    border-color:#222!important;
    background:#222!important;
    color:#fff!important;
}
.sdgf-reset{
    justify-self:start;
    align-self:end;
    border:0!important;
    background:transparent!important;
    color:#555!important;
    text-decoration:underline;
    padding:0!important;
    font:inherit!important;
    cursor:pointer;
}

.sdgf-active-filters{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    margin:8px 0 10px;
}
.sdgf-active-chip{
    border:0!important;
    background:#efefef!important;
    color:#222!important;
    border-radius:999px!important;
    padding:6px 9px!important;
    font:inherit!important;
    font-size:.85rem!important;
    cursor:pointer;
}

.sdgf-results-head{
    display:flex;
    align-items:center;
    min-height:26px;
    margin:10px 0;
}

.sdgf-products{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}
.sdgf-product-card{
    border:1px solid var(--sdgf-border);
    border-radius:10px;
    overflow:hidden;
    background:#fff;
    display:flex;
    flex-direction:column;
    min-width:0;
}
.sdgf-product-image{
    aspect-ratio:1/1;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fafafa;
    padding:12px;
}
.sdgf-product-image img{
    max-width:100%;
    max-height:100%;
    object-fit:contain;
}
.sdgf-placeholder{color:#999}
.sdgf-product-body{
    padding:11px;
    display:flex;
    flex-direction:column;
    gap:8px;
    flex:1;
}
.sdgf-product-body h3{
    font-size:.96rem;
    line-height:1.3;
    margin:0;
}
.sdgf-price{font-weight:700}
.sdgf-card-actions{
    display:grid;
    gap:7px;
    margin-top:auto;
}
.sdgf-save,.sdgf-amazon-link,.sdgf-link-disabled{
    display:block;
    text-align:center;
    border-radius:7px;
    padding:8px 9px;
}
.sdgf-save{
    border:1px solid var(--sdgf-border)!important;
    background:#fff!important;
    color:#222!important;
    font:inherit!important;
    cursor:pointer;
}
.sdgf-save.is-saved{
    background:#222!important;
    color:#fff!important;
    border-color:#222!important;
}
.sdgf-amazon-link{
    background:#222;
    color:#fff!important;
    text-decoration:none;
}
.sdgf-link-disabled{
    background:#eee;
    color:#777;
}
.sdgf-more-wrap{text-align:center;margin:18px 0}
.sdgf-more{
    border:1px solid #222!important;
    background:#fff!important;
    color:#222!important;
    border-radius:8px!important;
    padding:8px 13px!important;
    font:inherit!important;
    cursor:pointer;
}
.sdgf-empty{
    grid-column:1/-1;
    padding:24px;
    text-align:center;
    border:1px dashed var(--sdgf-border);
    border-radius:10px;
    color:var(--sdgf-muted);
}

/* Merkliste */
.sdgf-wishlist-launcher{
    position:fixed;
    right:18px;
    bottom:18px;
    z-index:9990;
    display:inline-flex;
    align-items:center;
    gap:8px;
    border:1px solid #222!important;
    background:#222!important;
    color:#fff!important;
    border-radius:999px!important;
    padding:10px 14px!important;
    font:inherit!important;
    box-shadow:0 6px 18px rgba(0,0,0,.16);
    cursor:pointer;
}
.sdgf-wishlist-launcher strong{
    min-width:22px;
    height:22px;
    padding:0 5px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    color:#222;
    border-radius:999px;
    font-size:.8rem;
}
.sdgf-wishlist-backdrop{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.3);
    z-index:9991;
}
.sdgf-wishlist-panel{
    position:fixed;
    top:0;
    right:0;
    width:min(410px,92vw);
    height:100vh;
    background:#fff;
    z-index:9992;
    box-shadow:-12px 0 30px rgba(0,0,0,.15);
    transform:translateX(105%);
    transition:transform .2s ease;
    display:flex;
    flex-direction:column;
}
.sdgf-wishlist-panel.is-open{transform:translateX(0)}
.sdgf-wishlist-header{
    display:flex;
    justify-content:space-between;
    gap:14px;
    padding:18px;
    border-bottom:1px solid var(--sdgf-border);
}
.sdgf-wishlist-header h2{margin:0 0 3px;font-size:1.15rem}
.sdgf-wishlist-header p{margin:0;color:var(--sdgf-muted);font-size:.86rem}
.sdgf-wishlist-close{
    width:34px;
    height:34px;
    border:1px solid var(--sdgf-border)!important;
    background:#fff!important;
    color:#222!important;
    border-radius:50%!important;
    font-size:1.35rem!important;
    cursor:pointer;
}
.sdgf-wishlist-items{flex:1;overflow:auto;padding:10px 16px}
.sdgf-wishlist-item{
    display:grid;
    grid-template-columns:68px 1fr;
    gap:10px;
    padding:10px 0;
    border-bottom:1px solid #eee;
}
.sdgf-wishlist-item-image{
    width:68px;
    height:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fafafa;
    border:1px solid #eee;
    border-radius:8px;
    overflow:hidden;
    color:#999;
    font-size:.72rem;
    text-align:center;
}
.sdgf-wishlist-item-image img{width:100%;height:100%;object-fit:contain}
.sdgf-wishlist-item-body{display:flex;flex-direction:column;gap:5px;min-width:0}
.sdgf-wishlist-item-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:3px}
.sdgf-wishlist-item-actions a,
.sdgf-wishlist-item-actions button{
    font:inherit!important;
    font-size:.82rem!important;
    border-radius:7px!important;
    padding:6px 8px!important;
    cursor:pointer;
    text-decoration:none;
}
.sdgf-wishlist-item-actions a{background:#222;color:#fff!important}
.sdgf-wishlist-item-actions button{border:1px solid var(--sdgf-border)!important;background:#fff!important;color:#222!important}
.sdgf-wishlist-empty{padding:24px 18px;color:var(--sdgf-muted);text-align:center}
.sdgf-wishlist-footer{border-top:1px solid var(--sdgf-border);padding:14px 18px}
.sdgf-wishlist-clear{
    width:100%;
    border:1px solid var(--sdgf-border)!important;
    background:#fff!important;
    color:#222!important;
    border-radius:8px!important;
    padding:9px!important;
    font:inherit!important;
    cursor:pointer;
}
.sdgf-wishlist-clear:disabled{opacity:.45;cursor:not-allowed}
body.sdgf-wishlist-open{overflow:hidden}

@media(max-width:900px){
    .sdgf-filter-panel{grid-template-columns:1fr}
    .sdgf-products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
    .sdgf-filter-toolbar{align-items:flex-start}
    .sdgf-filter-summary{display:grid;gap:2px}
    .sdgf-products{grid-template-columns:1fr}
    .sdgf-wishlist-launcher{right:10px;bottom:10px}
}


/* Sortierung V0.6.1 */
.sdgf-results-head{
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
}
.sdgf-sort-wrap{
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--sdgf-muted);
    font-size:.9rem;
}
.sdgf-sort-wrap select{
    border:1px solid var(--sdgf-border);
    background:#fff;
    color:#222;
    border-radius:8px;
    padding:7px 30px 7px 9px;
    min-height:36px;
}
@media(max-width:560px){
    .sdgf-results-head{
        align-items:flex-start;
    }
    .sdgf-sort-wrap{
        width:100%;
        justify-content:space-between;
    }
    .sdgf-sort-wrap select{
        flex:1;
        max-width:230px;
    }
}


/* Ergebnisaktionen V0.6.2 */
.sdgf-results-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}
.sdgf-saved-only{
    border:1px solid var(--sdgf-border)!important;
    background:#fff!important;
    color:#222!important;
    border-radius:8px!important;
    padding:7px 10px!important;
    min-height:36px;
    font:inherit!important;
    font-size:.9rem!important;
    cursor:pointer;
}
.sdgf-saved-only.is-active{
    border-color:#222!important;
    background:#222!important;
    color:#fff!important;
}
@media(max-width:560px){
    .sdgf-results-actions{
        width:100%;
        align-items:stretch;
    }
    .sdgf-sort-wrap{
        flex:1 1 100%;
    }
    .sdgf-saved-only{
        width:100%;
    }
}


/* Einstiegseite V0.6.3 */
.sdgf-entry{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:24px;
    padding:20px 0 18px;
    margin-bottom:10px;
    border-bottom:1px solid var(--sdgf-border);
}
.sdgf-entry-copy{max-width:760px}
.sdgf-entry-kicker{
    display:inline-block;
    margin-bottom:6px;
    color:var(--sdgf-muted);
    font-size:.82rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.sdgf-entry h1{
    margin:0 0 8px;
    font-size:clamp(1.65rem,3vw,2.4rem);
    line-height:1.08;
    color:var(--sdgf-text);
}
.sdgf-entry p{
    margin:0;
    max-width:680px;
    color:var(--sdgf-muted);
    font-size:1rem;
    line-height:1.5;
}
.sdgf-entry-actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.sdgf-entry-filter,
.sdgf-entry-results{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    border-radius:8px!important;
    padding:8px 12px!important;
    font:inherit!important;
    text-decoration:none!important;
    cursor:pointer;
}
.sdgf-entry-filter{
    border:1px solid #222!important;
    background:#222!important;
    color:#fff!important;
}
.sdgf-entry-results{
    border:1px solid var(--sdgf-border);
    background:#fff;
    color:#222!important;
}
.sdgf-affiliate-note{
    margin:8px 0 6px;
    padding:8px 10px;
    border-radius:8px;
    background:#f6f7f7;
    color:#50575e;
    font-size:.8rem;
    line-height:1.4;
}
.sdgf-sponsored-label{
    display:block;
    margin:0 0 4px;
    color:#777;
    font-size:.72rem;
    text-align:center;
}
@media(max-width:760px){
    .sdgf-entry{
        grid-template-columns:1fr;
        align-items:start;
        gap:14px;
    }
    .sdgf-entry-actions{justify-content:flex-start}
}
@media(max-width:560px){
    .sdgf-entry{padding-top:14px}
    .sdgf-entry-actions{
        display:grid;
        grid-template-columns:1fr;
        width:100%;
    }
    .sdgf-entry-filter,
    .sdgf-entry-results{width:100%}
}
