.rq-dialog { width: min(1120px, calc(100vw - 32px)); max-width: none; padding: 0; }
.feature-grid:has([data-feature="required-qualifications"]) { grid-template-columns: repeat(8, minmax(0, 1fr)); }
.rq-header, .rq-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 24px; background: #fff; }
.rq-header { border-bottom: 1px solid #e0e5ed; }
.rq-header h2 { margin: 0 0 8px; font-size: 22px; }
.rq-header p { margin: 0; color: #68778b; overflow-wrap: anywhere; }
.rq-body { max-height: 70vh; overflow: auto; padding: 20px 24px; background: #f7f9fc; }
.rq-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.rq-channel { min-width: 0; padding: 16px; background: #fff; border: 1px solid #dfe5ee; border-radius: 6px; }
.rq-channel h3 { margin: 0 0 14px; }
.rq-field { display: flex; flex-direction: column; gap: 8px; border-top: 1px solid #e7ebf1; padding: 14px 0; min-width: 0; }
.rq-field strong, .rq-existing-value, .rq-evidence, .rq-warning, .rq-error, .rq-summary { overflow-wrap: anywhere; white-space: pre-wrap; }
.rq-existing-value { margin: 0; padding: 10px; background: #f1f5f8; font: inherit; color: #1e3446; }
.rq-field > input:not([type=file]), .rq-field > select { width: 100%; min-width: 0; box-sizing: border-box; padding: 9px; border: 1px solid #bcc8d6; background: #fff; font: inherit; }
.rq-field > input[type=file] { max-width: 100%; }
.rq-badge { align-self: flex-start; font-size: 12px; color: #6d5b14; background: #fff5cf; padding: 3px 6px; }
.rq-note, .rq-evidence { color: #66758a; font-size: 13px; line-height: 1.6; margin: 0 0 10px; }
.rq-warning, .rq-summary { color: #765319; background: #fff6df; padding: 10px; line-height: 1.6; }
.rq-error { color: #b72323; margin: 8px 0 0; }
.rq-error:empty { display: none; }
.rq-gallery { display: flex; flex-wrap: wrap; gap: 10px; }
.rq-preview { margin: 0; width: 144px; max-width: 100%; }
.rq-preview img { display: block; width: 100%; height: 144px; object-fit: contain; background: #f5f7fa; border: 1px solid #dce3eb; }
.rq-preview figcaption { font-size: 12px; color: #637085; margin-top: 5px; overflow-wrap: anywhere; }
.rq-candidate { display: flex; flex-direction: column; gap: 6px; width: 144px; font-size: 12px; }
.rq-candidate > input { align-self: flex-start; }
.rq-footer { justify-content: flex-end; border-top: 1px solid #e0e5ed; }
@media (max-width: 740px) {
  .rq-columns { grid-template-columns: 1fr; }
  .rq-header, .rq-footer, .rq-body { padding: 14px; }
  .rq-footer { flex-wrap: wrap; }
}
@media (max-width: 800px) {
  .feature-grid:has([data-feature="required-qualifications"]) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.rq-product-fields { margin-bottom: 18px; }
.rq-field[hidden] { display: none; }
