/* Пошаговый подбор; общий стиль сайта и первый квиз не меняются. */
.service-quiz { margin: 42px 0 0; padding: 30px; border: 1px solid #222; border-radius: 16px; background: #f5f5f5; min-width: 0; overflow-wrap: anywhere; }
.service-quiz [hidden] { display: none !important; }
.service-quiz h2 { margin: 0 0 16px; }
.service-quiz h3 { margin: 0 0 14px; font-size: 1.25rem; line-height: 1.45; }
.service-quiz p { margin: 0 0 16px; line-height: 1.6; }
.service-quiz .service-quiz__intro { max-width: 58ch; }
.service-quiz .service-quiz__progress { margin-top: 24px; padding-top: 20px; border-top: 1px solid #ccc; font-size: .875rem; color: #555; }
.service-quiz .service-quiz__choices { display: grid; gap: 10px; margin: 18px 0; }

.service-quiz .service-quiz__button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 46px; max-width: 100%; padding: 12px 16px; border: 1px solid #222; border-radius: 6px; background: #fff; color: #111; font: inherit; line-height: 1.5; text-align: center; text-decoration: none; cursor: pointer; white-space: normal; overflow-wrap: anywhere; }
.service-quiz .service-quiz__choice { justify-content: flex-start; width: 100%; text-align: left; }
.service-quiz .service-quiz__choice[aria-pressed="true"] { background: #e7e7e7; border-width: 2px; padding: 11px 15px; }
.service-quiz .service-quiz__choice:hover, .service-quiz .service-quiz__button:hover { background: #eee; }
.service-quiz .service-quiz__mark { display: inline-flex; flex: 0 0 20px; width: 20px; height: 20px; align-items: center; justify-content: center; border: 1px solid #555; font-size: .875rem; }
.service-quiz .service-quiz__choice-text { min-width: 0; }
.service-quiz .service-quiz__choice-text small { display: block; margin-top: 4px; color: #555; font-size: .875rem; line-height: 1.5; }
.service-quiz .service-quiz__primary { background: #111; color: #fff; }
.service-quiz .service-quiz__primary:hover { background: #333; }
.service-quiz .service-quiz__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; margin: 18px 0 0; }
.service-quiz .service-quiz__note, .service-quiz .service-quiz__hint { font-size: .875rem; color: #555; line-height: 1.6; }
.service-quiz .service-quiz__note { margin: 24px 0 0; }
.service-quiz .service-quiz__error { font-size: .9375rem; font-weight: 600; }
.service-quiz .service-quiz__results { display: grid; gap: 16px; margin: 20px 0; }
.service-quiz .service-quiz__result { border: 1px solid #999; border-radius: 12px; padding: 22px; background: #fff; min-width: 0; }
.service-quiz .service-quiz__result h4 { margin: 0 0 10px; font-size: 1.125rem; line-height: 1.4; }
.service-quiz .service-quiz__rating { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.service-quiz .service-quiz__stars { position: relative; display: inline-block; color: #ccc; line-height: 1; white-space: nowrap; letter-spacing: .08em; }
.service-quiz .service-quiz__stars-fill { position: absolute; top: 0; left: 0; overflow: hidden; color: #111; white-space: nowrap; }
.service-quiz .service-quiz__result ul { margin: 12px 0; padding-left: 22px; }
.service-quiz .service-quiz__result li + li { margin-top: 6px; }
.service-quiz .service-quiz__result .service-quiz__hint { margin-bottom: 0; }
.service-quiz .service-quiz__edit { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 20px 0 0; }
.service-quiz .service-quiz__text-button { padding: 10px 0; min-height: 44px; border: 0; background: transparent; font: inherit; text-decoration: underline; text-underline-offset: .18em; cursor: pointer; }
@media (max-width: 760px) {
  .service-quiz { margin-top: 32px; padding: 22px 18px; }
  .service-quiz .service-quiz__result { padding: 18px 16px; }
  .service-quiz .service-quiz__actions > .service-quiz__button { width: 100%; }
}
