/* Ts-Immo Biens similaires — grille de cartes.
   Tout est scopé sous .tssim-* pour ne pas déborder sur le thème. */

.tssim{margin:2rem 0;color:var(--tsv-color-fg,#1f2933)}
.tssim-title{margin:0 0 1rem;font-size:1.25rem;font-weight:700;font-family:var(--tsv-font-head,inherit);color:var(--tsv-color-dark,#0f172a)}

.tssim-grid{
    list-style:none;margin:0;padding:0;display:grid;gap:1.25rem;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
}

.tssim-card{margin:0}
.tssim-link{
    display:flex;flex-direction:column;height:100%;
    text-decoration:none;color:inherit;background:var(--tsv-color-bg,#fff);
    border:1px solid var(--tsv-color-border,#e5e7eb);border-radius:var(--tsv-radius,16px);overflow:hidden;
    transition:box-shadow .15s,transform .15s;
}
.tssim-link:hover,.tssim-link:focus-visible{
    box-shadow:var(--tsv-shadow-sm,0 6px 20px rgba(16,24,40,.12));transform:translateY(-2px);
}
.tssim-link:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}

.tssim-media{display:block;aspect-ratio:4 / 3;background:#f3f4f6;overflow:hidden}
.tssim-media img,.tssim-thumb{width:100%;height:100%;object-fit:cover;display:block}
.tssim-media--empty{
    background:repeating-linear-gradient(45deg,#f3f4f6,#f3f4f6 10px,#eef0f3 10px,#eef0f3 20px);
}

.tssim-body{display:flex;flex-direction:column;gap:.25rem;padding:.8rem .9rem}
.tssim-name{font-weight:700;font-size:.98rem;line-height:1.25}
.tssim-city{font-size:.8rem;color:var(--tsv-color-muted,#6b7280);text-transform:uppercase;letter-spacing:.03em}
.tssim-price{margin-top:.15rem;font-weight:700;font-size:1.05rem;color:var(--tsv-color-dark,#0f172a)}

.tssim-inline{margin:2rem 0 0}

@media (max-width:480px){
    .tssim-grid{grid-template-columns:1fr 1fr;gap:.9rem}
    .tssim-name{font-size:.9rem}
}
