/* Filter Form */
.cai-filter-form { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:20px; }
.cai-filter-group { display:flex; flex-direction:column; min-width:140px; flex:1 1 140px; font-size: 14px;}
.cai-filter-group.search-group { flex:2 1 200px; font-size: 14px; }
.cai-filter-group.button-group { align-self:flex-end; font-size: 14px;  }
#cai-filters select, #cai-filters input { font-size: 14px; padding: 6px; }
#cai-filters .dropdown-filter > label {font-weight: bold;}

/* Dropdown Checkbox Styling */
.dropdown-wrapper { position:relative; border:1px solid #ccc; border-radius:4px; cursor:pointer; background:#fff; }
.dropdown-selected { padding:5px 8px; user-select:none; }
.dropdown-selected::after { content:""; float:right; margin-left:5px; }
.dropdown-options { display:none; position:absolute; top:100%; left:0; right:0; background:#fff; border:1px solid #ccc; border-radius:4px; max-height:180px; overflow-y:auto; z-index:10; padding:5px; }
.dropdown-options label { display:block; font-size:0.9rem; margin-bottom:3px; cursor:pointer; }
.dropdown-options input[type=checkbox] { margin-right:5px; }

/* Grid Layout */
.cai-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap:15px; width:100%; }

/* Card Styling */
.cai-card { border:1px solid #ddd; padding:15px; background:#fff; }
.cai-card:hover { border: 1px solid var(--primary-1) }
.cai-card h3 { font-size: 1.2rem; font-weight: bold; margin-top:0; margin-bottom:5px; }
.cai-card p { margin-bottom: 2px; }

/* Pagination */
.cai-pagination button { margin:2px; padding:5px 8px; cursor:pointer; }
