.scope-explanation { margin: 16px 18px 0; padding: 14px 16px; border: 1px solid #b8d1f4; border-radius: 10px; background: #f2f7ff; }
.scope-explanation p { margin: 5px 0 9px; color: var(--muted); }
.visibility-legend-inline { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; color: var(--muted); font-size: 12px; }
.scope-field { display: grid; align-self: start; gap: 8px; min-width: 0; }
.scope-field-heading { display: grid; grid-template-columns: minmax(130px, 1fr) auto; align-items: center; gap: 10px; min-height: 30px; }
.scope-field-heading label { min-width: 0; font-size: 13px; font-weight: 850; }
.scope-field-heading a { padding: 4px 7px; border-radius: 6px; background: #f5f7fa; color: #356393; font-size: 11px; font-weight: 800; white-space: nowrap; }
.scope-field-heading a:hover { background: #eaf2fc; }
.scope-field-actions { display: flex; align-items: center; flex-wrap: nowrap; justify-content: flex-end; gap: 5px; }
.scope-select-all { padding: 4px 9px; border: 1px solid #8eb9ef; border-radius: 999px; background: #f2f7ff; color: var(--blue); font: inherit; font-size: 11px; font-weight: 850; cursor: pointer; }
.scope-select-all:hover { background: #e2efff; }
.scope-select-all[aria-pressed="true"] { border-color: #8ac4a5; background: #e8f7ef; color: #17633c; }
.scope-select-all:disabled { border-color: #d9dee6; background: #f4f5f7; color: #9299a3; cursor: not-allowed; }
.scope-checkbox-list { min-height: 96px; max-height: 245px; overflow: auto; padding: 7px; border: 1px solid #cfd7e2; border-radius: 10px; background: #fff; }
.scope-field-products .scope-checkbox-list,
.scope-field-product_models .scope-checkbox-list { height: 245px; }
.scope-field-product_versions .scope-checkbox-list,
.scope-field-product_dimensions .scope-checkbox-list { height: 150px; }
.scope-checkbox-list > div { border-radius: 7px; }
.scope-checkbox-list > div:hover { background: #f2f7ff; }
.scope-checkbox-list label { display: flex; align-items: flex-start; gap: 9px; padding: 7px 8px; font-size: 12px; font-weight: 650; line-height: 1.35; cursor: pointer; }
.scope-checkbox-list input[type="checkbox"] { flex: 0 0 auto; width: 17px; height: 17px; margin: 0; accent-color: var(--blue); }
.scope-checkbox-list label:has(input[type="checkbox"]:checked) { background: #eaf3ff; color: var(--blue); font-weight: 800; }
.scope-checkbox-list-disabled { min-height: 48px; background: #f7f8fa; }
.scope-checkbox-list-disabled::before { display: block; padding: 8px; color: var(--muted); content: "Cochez d’abord une valeur au niveau précédent."; font-size: 12px; }
.scope-badge { display: inline-flex; align-items: center; padding: 3px 7px; border-radius: 999px; font-size: 10px; font-weight: 850; white-space: nowrap; }
.scope-badge.qualification { background: #e8f7ef; color: #17633c; }
.scope-badge.reference-only { background: #fff1df; color: #914b00; }
.scope-groups p { line-height: 1.8; }
.reference-impact-grid { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: 18px; align-items: start; }
.reference-form-card, .reference-impact-card { padding: 22px; }
.reference-form-card h2, .reference-impact-card h2 { margin-top: 0; }
.reference-form-card .editor-fields { padding: 8px 0 20px; }
.reference-form-card small { color: var(--muted); font-weight: 500; line-height: 1.45; }
.qualification-visibility-choice { padding: 14px; border: 2px solid #8eb9ef; border-radius: 10px; background: #f2f7ff; }
.qualification-visibility-choice input { width: auto; }
.reference-impact-card ul { padding-left: 20px; line-height: 1.55; }
.visibility-legend { margin-top: 18px; padding: 14px; border-radius: 10px; background: #f8fafc; }
.visibility-legend p { margin: 3px 0 12px; color: var(--muted); }
.warning-note { padding: 12px; border-radius: 9px; background: #fff1df; color: #7a4300; font-weight: 700; }
.visibility-guidance { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 24px; margin-bottom: 16px; padding: 18px; }
.visibility-guidance > div { display: flex; align-items: center; gap: 10px; }
.visibility-guidance p { margin: 0; }
.visibility-guidance > .muted { grid-column: 1 / -1; padding-top: 10px; border-top: 1px solid var(--line); }
.reference-visibility-list { display: grid; gap: 9px; }
.reference-visibility-page .workbench-search select { min-width: 210px; border: 1px solid #cfd7e2; border-radius: 10px; padding: 11px 13px; background: #fff; font: inherit; }
.reference-visibility-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 18px; padding: 15px 18px; }
.reference-visibility-row > div:first-child { display: grid; gap: 4px; }
.reference-code { color: var(--muted); font-size: 11px; font-weight: 700; }
.reference-visibility-action { display: flex; align-items: center; justify-content: flex-end; gap: 12px; }
.reference-visibility-action form { margin: 0; }
.visibility-unavailable { max-width: 310px; color: var(--muted); font-size: 12px; font-weight: 700; text-align: right; }
@media (max-width: 900px) {
  .reference-impact-grid { grid-template-columns: 1fr; }
  .scope-field-heading { grid-template-columns: 1fr; align-items: flex-start; }
  .scope-field-actions { flex-wrap: wrap; justify-content: flex-start; }
  .visibility-guidance { grid-template-columns: 1fr; }
  .visibility-guidance > .muted { grid-column: auto; }
  .reference-visibility-row { grid-template-columns: 1fr; }
  .reference-visibility-action { align-items: flex-start; justify-content: flex-start; flex-direction: column; }
  .visibility-unavailable { text-align: left; }
}
