.mk-full-questionnaire-crm {
  background: #fff;
  border: 1px solid #e1def2;
  border-radius: 22px;
  box-shadow: 0 12px 34px rgba(45, 38, 88, .07);
  margin: 18px 0;
  overflow: hidden;
}
.mk-full-questionnaire-crm * { box-sizing: border-box; }
.mk-full-questionnaire-crm.mk-crm-attention { box-shadow: 0 0 0 4px rgba(95,66,200,.2), 0 22px 50px rgba(61,41,148,.18); transition: box-shadow .25s ease; }
.mk-crm-head {
  align-items: center;
  background: linear-gradient(125deg, #37276f, #6244cf 58%, #2b9b8d);
  color: #fff;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  padding: 24px 26px;
}
.mk-crm-head small { font-size: 10px; font-weight: 900; letter-spacing: .11em; opacity: .78; }
.mk-crm-head h2 { font-size: 22px; margin: 4px 0 6px; }
.mk-crm-head p { font-size: 12px; line-height: 1.55; margin: 0; max-width: 780px; opacity: .86; }
.mk-crm-progress { background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.28); border-radius: 14px; min-width: 120px; padding: 11px 14px; text-align: center; }
.mk-crm-progress strong, .mk-crm-progress span { display: block; }
.mk-crm-progress strong { font-size: 24px; }
.mk-crm-progress span { font-size: 10px; opacity: .82; }
.mk-crm-identity { background: #faf9ff; border-bottom: 1px solid #e7e3f4; display: grid; gap: 12px; grid-template-columns: repeat(3, 1fr); padding: 14px 24px; }
.mk-crm-identity div { min-width: 0; }
.mk-crm-identity span, .mk-crm-identity strong { display: block; overflow-wrap: anywhere; }
.mk-crm-identity span { color: #7b7394; font-size: 9px; font-weight: 800; text-transform: uppercase; }
.mk-crm-identity strong { color: #29233f; font-size: 12px; margin-top: 3px; }
.mk-crm-tabs { background: #f4f1fb; border-bottom: 1px solid #ded8ed; display: flex; gap: 8px; padding: 12px 24px 0; }
.mk-crm-tabs button { align-items: center; background: transparent; border: 1px solid transparent; border-bottom: 0; border-radius: 11px 11px 0 0; color: #675f79; cursor: pointer; display: flex; font: inherit; font-size: 11px; font-weight: 900; gap: 9px; min-height: 42px; padding: 9px 13px; }
.mk-crm-tabs button b { background: #e6e1f2; border-radius: 999px; color: #5c3dc4; font-size: 9px; padding: 4px 7px; }
.mk-crm-tabs button.is-active { background: #fff; border-color: #dcd6eb; color: #352a69; position: relative; top: 1px; }
.mk-crm-tabs button.is-active b { background: #5f42c8; color: #fff; }
.mk-crm-missing-guide { align-items: center; background: #fff8e8; border-bottom: 1px solid #f0dfb8; color: #685431; display: flex; gap: 14px; justify-content: space-between; padding: 11px 24px; }
.mk-crm-missing-guide strong { font-size: 11px; }
.mk-crm-missing-guide span { font-size: 9px; line-height: 1.45; text-align: right; }
.mk-crm-answered-guide { align-items: center; background: #eaf8f1; border-bottom: 1px solid #cbe9dc; color: #176849; display: flex; gap: 14px; justify-content: space-between; padding: 11px 24px; }
.mk-crm-answered-guide strong { font-size: 11px; }
.mk-crm-answered-guide span { font-size: 9px; line-height: 1.45; text-align: right; }
.mk-crm-schema-warning { align-items: center; background: #fff0ef; border-bottom: 1px solid #f0c8c5; color: #823e38; display: flex; gap: 14px; justify-content: space-between; padding: 11px 24px; }
.mk-crm-schema-warning strong { font-size: 11px; }
.mk-crm-schema-warning span { font-size: 9px; line-height: 1.45; text-align: right; }
.mk-crm-toolbar { align-items: center; display: flex; gap: 14px; justify-content: space-between; padding: 16px 24px 8px; }
.mk-crm-toolbar > input { border: 1px solid #d8d3e8; border-radius: 10px; font: inherit; font-size: 12px; max-width: 440px; padding: 10px 12px; width: 100%; }
.mk-crm-toolbar label { align-items: center; color: #5f5875; display: flex; font-size: 11px; gap: 7px; white-space: nowrap; }
.mk-crm-toolbar > span { color: #736b84; font-size: 9px; font-weight: 800; }
.mk-crm-toolbar__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 7px; justify-content: flex-end; }
.mk-crm-toolbar__actions span { color: #736b84; font-size: 9px; font-weight: 800; margin-right: 3px; }
.mk-crm-toolbar__actions button { background: #f4f1fb; border: 1px solid #d8d3e8; border-radius: 8px; color: #51457d; cursor: pointer; font: inherit; font-size: 9px; font-weight: 900; padding: 7px 9px; }
.mk-crm-toolbar__actions button:hover { background: #ece7fa; }
.mk-crm-message { color: #3d2f9a; font-size: 11px; font-weight: 700; min-height: 18px; padding: 0 24px 8px; }
.mk-crm-sections { display: grid; gap: 9px; padding: 4px 24px 20px; }
.mk-crm-priority-missing { background: #fff8e8; border: 1px solid #e9cf94; border-radius: 13px; overflow: hidden; }
.mk-crm-priority-missing summary { align-items: center; cursor: pointer; display: flex; gap: 15px; justify-content: space-between; list-style: none; padding: 13px 15px; }
.mk-crm-priority-missing summary::-webkit-details-marker { display: none; }
.mk-crm-priority-missing[open] summary { border-bottom: 1px solid #ecd9ac; }
.mk-crm-priority-missing small, .mk-crm-priority-missing strong, .mk-crm-priority-missing em { display: block; }
.mk-crm-priority-missing small { color: #9a6b14; font-size: 8px; font-weight: 900; letter-spacing: .1em; }
.mk-crm-priority-missing strong { color: #55401c; font-size: 13px; margin-top: 3px; }
.mk-crm-priority-missing em { color: #79643e; font-size: 9px; font-style: normal; line-height: 1.45; margin-top: 4px; }
.mk-crm-priority-missing summary > b { background: #fff0ca; border-radius: 999px; color: #946312; flex: 0 0 auto; font-size: 9px; padding: 6px 9px; }
.mk-crm-priority-missing .mk-crm-section__body { background: #fffdf8; }
.mk-crm-section { border: 1px solid #dfdbea; border-radius: 13px; overflow: hidden; }
.mk-crm-section summary { align-items: center; background: #f8f7fc; cursor: pointer; display: flex; gap: 16px; justify-content: space-between; list-style: none; padding: 13px 15px; }
.mk-crm-section summary::-webkit-details-marker { display: none; }
.mk-crm-section summary span, .mk-crm-section summary strong, .mk-crm-section summary small { display: block; }
.mk-crm-section summary strong { color: #2d2850; font-size: 13px; }
.mk-crm-section summary small { color: #7a748e; font-size: 9px; margin-top: 3px; }
.mk-crm-section summary b { background: #ebe7fb; border-radius: 999px; color: #5c3dc4; font-size: 10px; padding: 5px 8px; white-space: nowrap; }
.mk-crm-section[open] summary { background: #f2effd; border-bottom: 1px solid #dfdbea; }
.mk-crm-section__body { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 12px; }
.mk-crm-field { background: #fbfbfd; border: 1px solid #e8e6ef; border-radius: 11px; min-width: 0; padding: 11px; }
.mk-crm-field.is-answered { background: #fbfffd; border-color: #cfe9df; }
.mk-crm-field.is-missing { border-style: dashed; }
.show-missing-only .mk-crm-field.is-answered { display: none; }
.mk-full-questionnaire-crm.is-missing-view .mk-crm-field.is-answered { display: none; }
.mk-full-questionnaire-crm.is-missing-view .mk-crm-section[data-missing-count="0"] { display: none; }
.mk-crm-field__head { align-items: flex-start; display: flex; gap: 8px; justify-content: space-between; margin-bottom: 8px; }
.mk-crm-field__head > label { color: #312d42; font-size: 11px; font-weight: 800; line-height: 1.4; max-width: 70%; }
.mk-crm-field__head > div { align-items: flex-end; display: flex; flex-direction: column; gap: 3px; }
.mk-crm-state, .mk-crm-source { border-radius: 999px; display: inline-block; font-size: 7px; font-weight: 900; max-width: 180px; overflow: hidden; padding: 3px 5px; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.mk-crm-state { background: #f0edf7; color: #655c7a; }
.mk-crm-source--questionnaire { background: #eaf4ff; color: #245d9b; }
.mk-crm-source--manual { background: #fff3d9; color: #8c5a00; }
.mk-crm-source--ai { background: #e8f8f0; color: #147050; }
.mk-crm-field input[type="text"], .mk-crm-field input[type="number"], .mk-crm-field input[type="date"], .mk-crm-field select, .mk-crm-field textarea {
  background: #fff; border: 1px solid #d7d3e2; border-radius: 8px; color: #29253a; font: inherit; font-size: 11px; min-height: 36px; padding: 8px 9px; width: 100%;
}
.mk-crm-field textarea { min-height: 76px; resize: vertical; }
.mk-crm-input-wrap { align-items: center; display: flex; gap: 7px; }
.mk-crm-input-wrap span { color: #746d86; flex: 0 0 auto; font-size: 9px; font-weight: 800; }
.mk-crm-multi { display: flex; flex-wrap: wrap; gap: 6px; }
.mk-crm-multi label { cursor: pointer; position: relative; }
.mk-crm-multi input { opacity: 0; position: absolute; }
.mk-crm-multi span { background: #fff; border: 1px solid #d7d3e2; border-radius: 999px; color: #625b74; display: block; font-size: 9px; padding: 6px 8px; }
.mk-crm-multi input:checked + span { background: #5f42c8; border-color: #5f42c8; color: #fff; }
.mk-crm-custom { margin-top: 7px; }
.mk-crm-evidence { color: #777087; display: block; font-size: 8px; line-height: 1.4; margin-top: 7px; }
.mk-crm-section--extra summary { background: #fff7e9; }
.mk-crm-extra { border: 1px solid #eee5d3; border-radius: 9px; padding: 9px; }
.mk-crm-extra span, .mk-crm-extra strong, .mk-crm-extra small { display: block; }
.mk-crm-extra span { color: #76684c; font-size: 9px; }
.mk-crm-extra strong { font-size: 11px; margin-top: 3px; }
.mk-crm-extra small { color: #8d826d; font-size: 8px; margin-top: 4px; }
.mk-crm-complete { background: #eaf8f1; border: 1px solid #cbe9dc; border-radius: 13px; color: #176849; margin: 18px 24px 22px; padding: 22px; text-align: center; }
.mk-crm-complete strong, .mk-crm-complete span { display: block; }
.mk-crm-complete strong { font-size: 15px; }
.mk-crm-complete span { font-size: 10px; margin-top: 5px; }
.mk-crm-actions { align-items: center; background: #faf9fd; border-top: 1px solid #e5e1ef; display: flex; gap: 12px; justify-content: flex-end; padding: 14px 24px; position: sticky; bottom: 0; z-index: 4; }
.mk-crm-actions button { background: #173f4a; border: 0; border-radius: 10px; color: #fff; cursor: pointer; font: inherit; font-size: 11px; font-weight: 900; padding: 10px 15px; }
.mk-crm-actions button:disabled { cursor: not-allowed; opacity: .45; }
.mk-crm-actions span { color: #716a82; font-size: 10px; }
@media (max-width: 760px) {
  .mk-crm-head { align-items: flex-start; flex-direction: column; }
  .mk-crm-progress { min-width: 0; width: 100%; }
  .mk-crm-identity, .mk-crm-section__body { grid-template-columns: 1fr; }
  .mk-crm-tabs { align-items: stretch; flex-direction: column; padding: 10px 14px; }
  .mk-crm-tabs button { border: 1px solid #dcd6eb; border-radius: 10px; justify-content: space-between; }
  .mk-crm-tabs button.is-active { top: 0; }
  .mk-crm-missing-guide { align-items: flex-start; flex-direction: column; padding: 11px 14px; }
  .mk-crm-missing-guide span { text-align: left; }
  .mk-crm-answered-guide, .mk-crm-schema-warning { align-items: flex-start; flex-direction: column; padding: 11px 14px; }
  .mk-crm-answered-guide span, .mk-crm-schema-warning span { text-align: left; }
  .mk-crm-toolbar { align-items: stretch; flex-direction: column; }
  .mk-crm-toolbar label { white-space: normal; }
  .mk-crm-toolbar__actions { align-items: stretch; justify-content: flex-start; }
  .mk-crm-toolbar__actions span { flex-basis: 100%; margin: 0; }
  .mk-crm-field__head { flex-direction: column; }
  .mk-crm-field__head > label { max-width: none; }
  .mk-crm-field__head > div { align-items: flex-start; }
  .mk-crm-actions { align-items: stretch; flex-direction: column; }
}
