/* ========== Custom AJAX Filters (basic styles) ========== */
.caf-wrap{--gap:14px; --radius:16px; --shadow:0 2px 10px rgba(0,0,0,.06); --b:#eaeaea; --bg:#fff; --muted:#666; --primary:#111;}
.caf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--gap);margin:0 0 14px 0}
.caf-field{background:var(--bg);border:1px solid var(--b);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}
.caf-label{font-weight:600;margin:0 0 8px 0;display:block}
.caf-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.caf-check{display:flex;align-items:center;gap:8px;font-size:14px}
.caf-actions{display:flex;gap:8px;align-items:center;margin:6px 0 16px}
.caf-btn{border-radius:999px;padding:10px 16px;border:1px solid var(--b);background:#f8f8f8;cursor:pointer}
.caf-btn--primary{background:#111;color:#fff;border-color:#111}
.caf-btn--ghost{background:#fff}
.caf-selected{margin:6px 0 16px;border:1px dashed var(--b);border-radius:var(--radius);padding:10px}
.caf-selected__inner{display:flex;flex-wrap:wrap;gap:8px}
.caf-chip{background:#f5f5f5;border:1px solid var(--b);border-radius:999px;padding:6px 10px;font-size:13px;line-height:1}
.caf-results{min-height:40px}
.caf-empty{padding:14px;color:var(--muted)}
.caf-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--gap)}
.caf-card{border:1px solid var(--b);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow);transition:transform .12s}
.caf-card:hover{transform:translateY(-2px)}
.caf-card__link{display:block;color:inherit;text-decoration:none}
.caf-card__thumb img{display:block;width:100%;height:auto}
.caf-card__title{font-size:18px;line-height:1.25;margin:10px 12px}
.caf-card__meta{font-size:12px;color:var(--muted);margin:0 12px 12px}
.caf-pagination{display:flex;justify-content:center;margin:16px 0}
.caf-pagelist{display:flex;gap:6px;align-items:center}
.caf-page{display:inline-block;border:1px solid var(--b);padding:6px 10px;border-radius:8px;text-decoration:none}
.caf-page.is-current{background:#111;color:#fff;border-color:#111}
@media (max-width:640px){.caf-checks{grid-template-columns:1fr}}

/* Dim disabled filters */
.caf-form input[type="checkbox"]:disabled,
.caf-form input[type="radio"]:disabled,
.caf-form select:disabled,
.caf-form label.disabled {
    opacity: 0.5;   /* make them look dim */
    cursor: not-allowed;
}
.caf-disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
.caf-form label.caf-disabled {
    opacity: 0.5;
    pointer-events: none; /* optional: prevent clicking */
}
