.filters { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 18px; }
.filters .trade-filter { grid-column: span 2; }
.filters label { font-size: .875rem; }
.trade-filter select { font-size: 1rem; }
.specialty-picker summary { cursor: pointer; min-height: 44px; padding: 10px 0; font-size: 1rem; font-weight: 600; }
.specialty-picker summary span { display: inline-block; margin-left: 8px; padding: 2px 9px; border-radius: 20px; background: var(--brand-soft, #fff0e6); font-size: .875rem; }
.specialty-picker > label { max-width: 480px; }
.specialty-selection { margin: 4px 0 14px; font-size: .875rem; }
.specialty-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 24px; margin-top: 16px; }
.specialty-group { min-width: 0; }
.specialty-group h4 { margin: 0 0 6px; font-size: .875rem; }
.specialty-picker .specialty-options { display: grid; grid-template-columns: 1fr; gap: 0; }
.specialty-options .check { min-height: 44px; padding: 7px 0; }
.specialty-options .check:has(input:disabled) { color: var(--muted); }
@media (max-width: 760px) {
  .filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .specialty-groups { grid-template-columns: 1fr; }
}
/* « Architecte »: the declaration in the wizard and the declared number on the fiche (trade-catalog.js). */
.trade-help { margin: -4px 0 0; }
.architect-fields { margin: 0; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; }
.architect-fields legend { padding: 0 6px; font-weight: 600; }
.architect-fields .check { min-height: 44px; }
.architect-fields input[name="architect_number"] { text-transform: uppercase; }
.architect-note .inline-action { min-height: 44px; }
.architect-registration { margin: 10px 0 14px; padding: 10px 12px; border-left: 3px solid var(--green); background: var(--paper); }
.architect-registration p { margin: 0; }
.architect-registration .meta { margin-top: 4px; }
.workflow-fieldset .architect-fields legend { font-size: 16px; }
