.directory-toolbar { display: flex; flex-wrap: wrap; gap: 16px; align-items: end; margin: 0 0 24px; }
.directory-field { display: grid; gap: 7px; min-width: min(100%, 210px); color: var(--gp-text-main); font-size: .875rem; font-weight: 650; }
.directory-field:first-child { flex: 1 1 280px; }
.directory-field :is(input, select) { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid var(--gp-border-strong); border-radius: 10px; background: var(--gp-surface); color: var(--gp-text-main); font: inherit; font-weight: 400; }
.directory-field :is(input, select):focus-visible { outline: 3px solid var(--gp-primary-border); outline-offset: 2px; }
.directory-status { min-height: 24px; margin: 0 0 24px; color: var(--gp-text-secondary); font-size: .9375rem; }
.directory-image-missing { background: var(--gp-bg-soft); }
.directory-image-missing::after { content: 'Product photo unavailable'; display: grid; place-items: center; height: 100%; color: var(--gp-text-secondary); font-size: .8125rem; }
.product-card__body > .btn, .supplier-card > .btn { margin-top: auto; align-self: stretch; text-align: center; }
.supplier-card__specs { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.supplier-card__top { flex-wrap: wrap; }
.supplier-card__status { white-space: normal; }
.category-grid > .directory-status { grid-column: 1 / -1; }
.section-action { display: flex; justify-content: center; margin-top: 32px; }
@media (max-width: 640px) { .directory-toolbar { display: grid; } .directory-field { min-width: 0; } }
