/* Shared Filter Modal Styles (used by bgg_collection and treffen_edit) */
.filter-modal-container { text-align: left; max-width: 600px; margin: 0 auto; }
.filter-section { margin-bottom: 2rem; background-color: #f8f9fa; padding: 1.5rem; border-radius: 12px; border: none; }
.filter-section:last-child { margin-bottom: 0; }
.filter-section-title { font-weight: 600; color: #2c4021; margin-bottom: 1rem; font-size: 1rem; }
.filter-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1.5rem; }
.filter-group { display: flex; flex-direction: column; gap: 0.5rem; }
.filter-label { font-size: 0.875rem; color: #495057; font-weight: 500; margin-bottom: 0.25rem; }
.filter-input-group { display: flex; gap: 0.5rem; align-items: center; }
.filter-input-group input, .modal-filter-input { flex: 1; padding: 0.75rem; border: 2px solid #e9ecef; border-radius: 8px; font-size: 0.9rem; background-color: white; }
.filter-input-group input:focus, .modal-filter-input:focus { border-color: #2c4021; box-shadow: 0 0 0 4px rgba(44,64,33,0.1); outline: none; }
.filter-input-group span { color: #6c757d; font-size: 1rem; font-weight: 500; }
.checkbox-group { display: flex; flex-direction: column; gap: 0.75rem; }
.filter-checkbox { display: flex; align-items: center; font-size: 0.9rem; cursor: pointer; padding: 0.75rem 1rem; border-radius: 8px; background-color: white; border: 2px solid #e9ecef; }
.filter-checkbox:hover { background-color: #f8f9fa; border-color: #dee2e6; }
.filter-checkbox input[type="checkbox"] { margin-right: 0.75rem; cursor: pointer; width: 18px; height: 18px; }
.filter-checkbox input[type="checkbox"]:checked { accent-color: #2c4021; }
.filter-checkbox input[type="checkbox"]:checked ~ span { font-weight: 500; color: #2c4021; }
