/* Единый подбор: два режима и один результат. */
.selection-section { padding: clamp(20px,3vw,32px); border: 1px solid #e8d1bf; border-radius: 18px; background: linear-gradient(145deg,#fffaf5,#f3f6f0); }
.selection-section [hidden] { display: none !important; }
.selection-head h2 { margin: 2px 0 8px; }
.selection-head > p:last-child { max-width: 70ch; margin: 0; color: var(--muted); line-height: 1.5; }
.selection-tabs { display: flex; gap: 8px; margin: 23px 0 18px; padding: 5px; border: 1px solid var(--line); border-radius: 13px; background: var(--paper); }
.selection-tabs button { flex: 1 1 0; display: flex; align-items: baseline; justify-content: center; flex-wrap: wrap; gap: 3px 8px; min-height: 46px; padding: 8px 14px; border: 0; border-radius: 9px; background: transparent; color: var(--muted); font: inherit; font-weight: 800; cursor: pointer; transition: background .2s,color .2s,box-shadow .2s; }
.selection-tabs button small { font-size: 12px; font-weight: 600; }
.selection-tabs button[aria-selected=true] { color: #fff; background: var(--orange); box-shadow: 0 4px 12px #b95d2e26; }
.selection-tabs button[aria-selected=true] small { color: #fff8; }
.selection-tabs button:focus-visible,.selection-section a:focus-visible,.selection-section button:focus-visible { outline: 3px solid var(--link); outline-offset: 2px; }
.selection-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(300px,34%); align-items: start; gap: clamp(14px,2vw,24px); }
.selection-main { min-width: 0; }
.selection-panel.quiz-section,.selection-panel.personalize-section { overflow: visible; padding: 0; border: 0; border-radius: 0; background: none; }
.selection-panel.quiz-section:before { display: none; }
.selection-intro { margin: 0 0 8px; color: var(--muted); font-size: 14px; line-height: 1.5; }
.selection-panel .quiz-progress { margin: 13px 0 17px; }
.selection-panel .quiz-step legend { font-size: clamp(20px,2.2vw,25px); }
.selection-panel .quiz-step label { max-width: none; padding: 11px 13px; margin: 7px 0; }
.selection-panel .quiz-step-hint { margin-bottom: 10px; font-size: 13px; }
.selection-panel .quiz-navigation { margin-top: 15px; }
.selection-panel .priority-help { margin: 7px 0 9px; font-size: 12px; }
.selection-panel .priority-sliders { gap: 8px; }
.selection-panel .priority-slider { gap: 5px; padding: 9px 11px; }
.selection-panel .priority-slider output { min-width: 24px; height: 24px; }
.selection-panel .personalize-actions { gap: 8px 12px; margin-top: 11px; }
.selection-panel .personalize-actions .button { padding: 8px 13px; }
.selection-result { padding: 16px; border: 1px solid #e9cfba; border-radius: 13px; background: var(--paper); box-shadow: 0 8px 24px #3b2e1c0a; }
.selection-result .eyebrow { margin: 0 0 9px; }
.selection-result h3 { margin: 0 0 9px; color: var(--ink); font-size: clamp(19px,2.1vw,23px); line-height: 1.18; overflow-wrap: anywhere; }
.selection-result #selection-result-content > p:not(.selection-score) { margin: 0 0 9px; color: var(--muted); font-size: 13px; line-height: 1.4; }
.selection-result #selection-result-content > .selection-reason { padding: 8px 9px; border-radius: 7px; background: var(--orange-pale); color: var(--ink); font-size: 12px; }
.selection-score { margin: 0 0 7px; color: var(--orange-dark); font-weight: 800; font-size: 13px; }
.selection-result a { display: inline-flex; color: var(--orange-dark); font-size: 14px; font-weight: 800; text-decoration: none; }
.selection-result a:hover { text-decoration: underline; }
.selection-compare { display: block; width: 100%; margin-top: 12px; padding: 9px 10px; border: 1px solid var(--orange); border-radius: 8px; background: var(--orange-pale); color: var(--orange-dark); font: inherit; font-size: 13px; font-weight: 800; cursor: pointer; text-align: left; }
.selection-compare:hover { background: var(--orange); color: #fff; }
.selection-result .personalized-results { margin-top: 14px; padding-top: 12px; }
.selection-result .personalized-results h3 { margin-bottom: 2px; font-size: 17px; }
.selection-result .personalized-results > p { margin: 0 0 8px; font-size: 12px; line-height: 1.35; }
.selection-result .personalized-results ol { gap: 4px; }
.selection-result .personalized-results a { display: grid; grid-template-columns: 20px minmax(0,1fr) auto; gap: 5px; padding: 7px 8px; font-size: 12px; line-height: 1.2; }
.selection-result .personalized-results a strong { overflow-wrap: anywhere; }
.selection-result .personalized-results a b { white-space: nowrap; font-size: 11px; }
.selection-mobile-order { display: none; }
.selection-constraints { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 12px; margin-top: 9px; padding: 7px 10px; border: 1px solid var(--line); border-radius: 9px; background: var(--paper); color: var(--muted); font-size: 13px; }
.selection-constraints span { flex: 1 1 100%; }
.selection-constraints button { padding: 3px 0; border: 0; background: transparent; color: var(--orange-dark); font: inherit; font-weight: 800; cursor: pointer; }
.selection-constraints button:hover { text-decoration: underline; }
.selection-section .personalized-results a { scroll-margin-top: 24px; }
.product-heading h3:focus { outline: none; }
.product-card.highlight .product-heading h3:focus { text-decoration: underline; text-decoration-color: var(--orange); text-underline-offset: 5px; }
html[data-theme=dark] .selection-section { background: linear-gradient(145deg,#292e2e,#242c29); border-color: var(--line); }
html[data-theme=dark] .selection-result { border-color: var(--line); box-shadow: none; }
html[data-theme=dark] .selection-tabs button[aria-selected=true] { color: #171c1f; }
html[data-theme=dark] .selection-tabs button[aria-selected=true] small { color: #171c1fcc; }
@media (max-width:760px) {
  .selection-grid { grid-template-columns: 1fr; }
  .selection-result { padding: 17px; }
  .selection-mobile-order:not([hidden]) { display: inline-flex; color: var(--orange-dark); font-size: 13px; font-weight: 800; }
}
@media (max-width:520px) {
  .selection-section { padding: 18px; }
  .selection-tabs button { display: block; padding: 8px 5px; font-size: 13px; }
  .selection-tabs button small { display: block; margin-top: 2px; font-size: 11px; }
  .selection-panel .priority-sliders { grid-template-columns: 1fr; }
  .selection-section .personalized-results a { grid-template-columns: 24px minmax(0,1fr); gap: 4px 9px; }
  .selection-section .personalized-results a b { grid-column: 2; font-size: 12px; }
}
@media (prefers-reduced-motion:reduce) {
  .selection-tabs button { transition: none; }
}
