.crm-search { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-items: start; }
.crm-search-actions { grid-column: 1 / -1; }
.crm-search-actions > p { flex: 1 1 240px; margin: 0; }
.crm-search-actions > button { min-height: 44px; }
#candidate-search-bottom { width: 100%; }
#candidate-settings:empty { display: none; }
#candidate-settings > details:first-child { border: 0; margin: 0; padding: 0; }
#guide .crm-grid { margin-top: 10px; }
.crm-search-options { min-width: 0; margin: 0; padding: 10px 12px; border: 1px solid var(--line); border-radius: 8px; }
.crm-search-options legend { font-weight: 600; padding: 0 4px; }
.crm-search-options label { display: flex; align-items: center; gap: 8px; min-height: 32px; cursor: pointer; margin: 0; }
.crm-search-options input[type=checkbox] { flex: 0 0 auto; width: auto; margin: 0; accent-color: var(--text); }
.crm-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; }
.crm-grid > *, .crm-search > *, .crm-filter { min-width: 0; }
.crm-keys { border-top: 1px solid var(--line); padding-top: 12px; margin-top: 14px; }
.crm-keys summary, #candidate-editor summary { cursor: pointer; font-weight: 600; }
.crm-keys summary .chip { margin-left: 8px; white-space: normal; vertical-align: middle; }
.crm-keys input[type=password], #candidate-settings input[type=number], #crm input[type=url], #crm input[type=date], #crm input[type=number] { width: 100%; min-width: 0; background: var(--bg); color: var(--text); border: 1px solid var(--line); border-radius: 8px; padding: 8px 10px; font: inherit; }
.crm-keys input[type=password] { margin-bottom: 6px; }
.crm-filter { flex: 1 1 200px; }
#candidate-filter { align-items: end; }
.crm-selection { margin-top: 12px; }
.crm-fieldset { min-width: 0; border: 1px solid var(--line); border-radius: 10px; margin: 16px 0; padding: 12px; }
.crm-fieldset legend { font-weight: 600; }
.crm-actions { margin-top: 16px; }
.crm-evidence { margin-top: 14px; overflow-wrap: anywhere; }
.crm-evidence ul { padding-left: 20px; }
.crm-reference { border-left: 2px solid var(--line); padding: 0 0 10px 12px; margin: 10px 0; }
.crm-item-title { display: flex; align-items: flex-start; gap: 10px; }
.crm-item-title > input { margin-top: 6px; flex: 0 0 auto; }
.crm-item-title > div { min-width: 0; }
.crm-reasons { margin: 6px 0; padding-left: 20px; color: var(--muted); font-size: .88rem; }
#candidate-editor { scroll-margin-top: 12px; }
#candidate-editor input[type=file] { max-width: 100%; }
@media (max-width: 760px) { .crm-grid, .crm-search { grid-template-columns: minmax(0, 1fr); } .crm-search-actions > button { width: 100%; } .crm-selection { align-items: flex-start; } }
