.filter-bar{margin:24px 0}.filter-bar input{width:100%;max-width:400px;padding:10px 16px;font-family:var(--font-body);font-size:.95rem;border:1px solid var(--clr-border);border-radius:var(--radius);background:var(--clr-surface);color:var(--clr-text);transition:border-color .2s}.filter-bar input:focus{outline:0;border-color:var(--clr-accent)}.filter-sort-bar{margin:24px 0 8px}.filter-sort-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.filter-sort-row input{flex:1 1 220px;min-width:180px;padding:10px 16px;font-family:var(--font-body);font-size:.95rem;border:1px solid var(--clr-border);border-radius:var(--radius);background:var(--clr-surface);color:var(--clr-text);transition:border-color .2s,box-shadow .2s}.filter-sort-row input:focus{outline:0;border-color:var(--clr-accent);box-shadow:0 0 0 3px var(--clr-accent-bg)}.filter-select{padding:10px 32px 10px 14px;font-family:var(--font-ui);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--clr-border);border-radius:var(--radius);background:var(--clr-surface);color:var(--clr-text);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%236B6560'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:border-color .2s,box-shadow .2s}.filter-select:focus{outline:0;border-color:var(--clr-accent);box-shadow:0 0 0 3px var(--clr-accent-bg)}.filter-select:hover{border-color:var(--clr-accent-light)}.multiselect{position:relative}.multiselect-toggle{width:100%;min-width:140px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}.multiselect-toggle.has-value{color:var(--clr-accent);border-color:var(--clr-accent-light)}.multiselect-dropdown{display:none;position:absolute;top:calc(100% + 4px);left:0;z-index:100;min-width:180px;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);box-shadow:0 6px 20px rgba(0,0,0,.1);padding:6px 0}.multiselect.open .multiselect-dropdown{display:block}.multiselect-option{display:flex;align-items:center;gap:8px;padding:7px 14px;font-family:var(--font-ui);font-size:.85rem;cursor:pointer;transition:background .15s}.multiselect-option:hover{background:var(--clr-accent-bg)}.multiselect-option input[type=checkbox]{accent-color:var(--clr-accent);width:15px;height:15px;min-width:15px;flex:0 0 15px;margin:0;cursor:pointer}.multiselect-search-wrap{padding:6px 8px;border-bottom:1px solid var(--clr-border);position:sticky;top:0;background:var(--clr-surface);z-index:1}.multiselect-search{width:100%;padding:6px 10px;font-family:var(--font-ui);font-size:.82rem;border:1px solid var(--clr-border);border-radius:calc(var(--radius) - 2px);background:var(--clr-bg);color:var(--clr-body);outline:0;box-sizing:border-box}.multiselect-search:focus{border-color:var(--clr-accent-light)}.multiselect-options{max-height:260px;overflow-y:auto}.multiselect-option.ms-hidden{display:none}.multiselect-show-more{display:block;width:100%;padding:8px 14px;font-family:var(--font-ui);font-size:.8rem;color:var(--clr-accent);background:0 0;border:none;border-top:1px solid var(--clr-border);cursor:pointer;text-align:center;transition:background .15s}.multiselect-show-more:hover{background:var(--clr-accent-bg)}.multiselect-show-more.ms-hidden{display:none}.active-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.active-filters:empty{display:none}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;font-family:var(--font-ui);font-size:.78rem;font-weight:500;background:var(--clr-accent-bg);color:var(--clr-accent);border-radius:20px;letter-spacing:.02em}.filter-chip-remove{background:0 0;border:none;color:var(--clr-accent);cursor:pointer;font-size:1rem;line-height:1;padding:0;opacity:.7;transition:opacity .15s}.filter-chip-remove:hover{opacity:1}.clear-all-filters{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;font-family:var(--font-ui);font-size:.78rem;font-weight:500;background:var(--clr-warning-bg);color:var(--clr-rx);border:none;border-radius:20px;cursor:pointer;letter-spacing:.02em;transition:background .15s}.clear-all-filters:hover{background:var(--clr-warning-border)}.result-count{font-family:var(--font-ui);font-size:.82rem;color:var(--clr-text-muted);margin-bottom:16px}.result-count:empty{display:none}.no-filter-results{grid-column:1/-1;text-align:center;padding:48px 24px;color:var(--clr-text-muted);font-style:italic;font-size:1rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;padding-bottom:48px}.card{display:block;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s,border-color .2s}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--clr-accent-light)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;flex-wrap:wrap}.card-header h3{font-family:var(--font-display);font-size:1.1rem;font-weight:500;color:var(--clr-text);line-height:1.3}.card-generic{font-size:.88rem;color:var(--clr-text-secondary);font-style:italic;margin-bottom:4px}.card-brand,.card-category{font-family:var(--font-ui);font-size:.78rem;color:var(--clr-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.card-desc{font-size:.88rem;color:var(--clr-text-secondary);line-height:1.5;margin-bottom:12px}.card-aliases{font-size:.82rem;color:var(--clr-text-muted)}.card-aliases em{font-style:italic}.card-compounds{display:flex;flex-wrap:wrap;gap:6px}.compound-chip{font-family:var(--font-ui);font-size:.72rem;padding:3px 10px;background:var(--clr-compound-bg);color:var(--clr-compound);border-radius:20px;letter-spacing:.02em;font-weight:500}.card-icd{font-family:var(--font-ui);font-size:.72rem;color:var(--clr-text-muted);margin-bottom:4px}.badge{font-family:var(--font-ui);font-size:.7rem;font-weight:500;padding:3px 10px;border-radius:20px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.badge-rx{background:var(--clr-rx-bg);color:var(--clr-rx)}.badge-otc{background:var(--clr-otc-bg);color:var(--clr-otc)}.badge-compound{background:var(--clr-compound-bg);color:var(--clr-compound)}.badge-cosmetic{background:var(--clr-cosmetic-bg);color:var(--clr-cosmetic)}.badge-origin{background:var(--clr-origin-bg);color:var(--clr-origin)}.badge-category{background:var(--clr-accent-bg);color:var(--clr-accent)}.badge-default{background:var(--clr-surface-alt);color:var(--clr-text-secondary)}.card-wrap{position:relative;display:flex;flex-direction:column}.card-wrap .card{flex:1;border-bottom-left-radius:0;border-bottom-right-radius:0}.card-compare-btn{font-family:var(--font-ui);font-size:.78rem;font-weight:500;letter-spacing:.04em;padding:8px 16px;border:1px solid var(--clr-border);border-top:none;border-bottom-left-radius:var(--radius);border-bottom-right-radius:var(--radius);background:var(--clr-surface-alt);color:var(--clr-text-secondary);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.card-compare-btn:hover{background:var(--clr-accent-bg);color:var(--clr-accent);border-color:var(--clr-accent-light)}.card-compare-btn.active{background:var(--clr-accent);color:#fff;border-color:var(--clr-accent)}.card-compare-btn.active:hover{background:var(--clr-accent-light)}.compare-checklist{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin:20px 0 32px}.compare-check-item{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);cursor:pointer;transition:border-color .2s,background .15s,box-shadow .2s}.compare-check-item:hover{border-color:var(--clr-accent-light);background:var(--clr-accent-bg)}.compare-check-item:has(input:checked){border-color:var(--clr-accent);background:var(--clr-accent-bg);box-shadow:var(--shadow-sm)}.compare-check-item input[type=checkbox]{accent-color:var(--clr-accent);width:16px;height:16px;flex-shrink:0}.cci-name{font-family:var(--font-display);font-size:.92rem;font-weight:500;color:var(--clr-text)}.cci-sub{font-family:var(--font-ui);font-size:.75rem;color:var(--clr-text-muted);margin-left:auto;white-space:nowrap}@media (max-width:768px){.card-grid{grid-template-columns:1fr}.compare-controls{flex-direction:column;align-items:stretch}.compare-checklist{grid-template-columns:1fr}}