.mr-services { display: grid; gap: 22px; }
.mr-group { margin: 0; padding: 0; border: 0; min-width: 0; display: grid; gap: 6px; }
.mr-group legend {
  margin-bottom: 8px; color: var(--teal-800); font-size: 0.77rem; font-weight: 600;
  letter-spacing: 0.12em; text-transform: uppercase;
}
.mr-service {
  display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 4px 12px;
  padding: 11px 14px; border: 1px solid var(--line); border-radius: 8px; cursor: pointer;
  transition: border-color 160ms cubic-bezier(0.2,0,0,1), background 160ms cubic-bezier(0.2,0,0,1);
}
.mr-service:hover { border-color: var(--teal-800); }
.mr-service.is-on { border-color: var(--teal-800); background: var(--teal-50); }
.mr-service > input { width: 18px; height: 18px; margin: 0; accent-color: var(--teal-800); }
.mr-service-name { color: #191919; font-size: 15px; line-height: 1.35; }
.mr-service-price { color: var(--teal-800); font-family: var(--serif, Georgia, serif); font-size: 14px; white-space: nowrap; }
.mr-qty { grid-column: 2 / -1; display: flex; align-items: center; gap: 8px; color: #191919; font-size: 14px; }
.mr-qty[hidden] { display: none; }
.mr-qty input { width: 84px; min-height: 38px; padding: 6px 10px; border: 1px solid var(--line); border-radius: 8px; font: inherit; }
.mr-inline-error { margin: 12px 0 0; color: #a03a1c; font-size: 14px; font-weight: 500; }
.mr-fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
.mr-fieldset legend { margin-bottom: 9px; color: var(--teal-800); font-weight: 600; font-size: 0.9rem; }
.mr-fieldset small { display: block; margin-top: 8px; }
.mr-warn { color: #a03a1c !important; font-weight: 500; }
.mr-note { margin: 0; color: #191919; font-size: 15px; line-height: 1.6; }
.mr-text-link { color: var(--teal-800); font-size: 14px; font-weight: 500; }
.mr-text-link:hover { color: var(--clay-500); }
.bc-order-form input[type="checkbox"] + span { user-select: none; }

.mr-terms { margin-bottom: 16px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 8px; }
.mr-terms summary { color: var(--teal-800); font-weight: 600; cursor: pointer; }
.mr-terms p { margin: 10px 0 0; color: #191919; font-size: 14px; line-height: 1.6; }

.mr-panel { padding: 24px; }
.mr-lines { margin: 16px 0 0; padding: 0; list-style: none; display: grid; gap: 2px; }
.mr-lines li {
  display: flex; justify-content: space-between; align-items: baseline; gap: 16px;
  padding: 10px 0; border-bottom: 1px solid var(--line); color: #191919; font-size: 15px;
}
.mr-lines li small { display: block; color: #191919; opacity: 1; font-size: 12px; margin-top: 2px; }
.mr-lines li strong { color: var(--teal-800); font-family: var(--serif, Georgia, serif); font-weight: 400; white-space: nowrap; }
.mr-lines .mr-empty { display: block; border: 0; font-size: 14px; line-height: 1.5; }
.mr-total { margin-top: 14px; padding: 16px 18px; border-radius: 12px; background: var(--teal-800); color: var(--white); }
.mr-total-row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.mr-total-row[hidden] { display: none; }
.mr-total-row + .mr-total-row { margin-top: 6px; }
.mr-total-row strong { font-family: var(--serif, Georgia, serif); font-weight: 400; }
.mr-total-main span { font-weight: 600; }
.mr-total-main strong { font-size: 30px; }
.mr-total-note { margin: 10px 0 0; color: var(--white); font-size: 13px; line-height: 1.5; }
.mr-panel-block { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); display: grid; gap: 6px; }
.mr-panel-block h3 { margin: 0 0 4px; color: var(--teal-800); font-size: 16px; font-weight: 600; }
.mr-panel-block p { margin: 0; color: #191919; font-size: 14px; }
.mr-panel-block a { color: var(--teal-800); font-size: 14px; font-weight: 500; }
.mr-panel-block a:hover { color: var(--clay-500); }
.mr-req { margin-left: 3px; color: #b3261e; font-size: 0.85em; font-weight: 600; }
