/* ===== «Инженерная лестница» и «Куда ведут занятия» — дополнения к rpcl.css и rpcalc.css (их классы и токены) ===== */
/* лестница: 13 колонок (5–6 лет, 6–7 лет, 1–11 класс) */
.rpel-stairs, .rpel-bands { grid-template-columns: repeat(13, minmax(0, 1fr)); }
.rpel-dirs .rpcl-pill { font-size: 18px; }
.rpel-sub { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
.rpel-sub__label { margin: 0; font-size: 16px; color: var(--rp-muted); }
.rpel-sub .rpcl-pill { box-shadow: inset 0 0 0 1.5px var(--rp-line); }
.rpel-sub .rpcl-pill[aria-selected="true"] { box-shadow: none; }
.rpel-stairs { --h0: 124px; --dh: 22px; }
.rpel-stairs .rpcl-step { padding: 16px 11px 14px; }
.rpel-stairs .rpcl-step__num { white-space: nowrap; }
.rpel-stairs .rpcl-step__book { font-family: var(--rp-fb); font-weight: 600; font-size: 13px; line-height: 1.2; overflow-wrap: normal; word-break: normal; hyphens: manual; }
.rpel-marks { display: flex; flex-wrap: wrap; gap: 6px; }
.rpel-step--off { display: none !important; }
.rpel-card .rpcl-detail__body { max-width: min(780px, 70%); }
.rpel-kid { width: 220px; right: 46px; bottom: auto; top: 50%; transform: translateY(-50%); filter: drop-shadow(0 18px 24px rgba(10, 6, 60, .35)); }
.rpel-kid--rob { width: 250px; top: auto; bottom: 0; transform: none; filter: none; }
.rpel-grow .rpcl-exams__list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.rpel-grow .rpcl-exams__item { align-content: start; gap: 8px; padding: 20px 22px 22px; }
.rpel-grow .rpcl-exams__item b { font-size: 20px; }
.rpel-grow .rpcl-exams__item span { font-size: 16px; line-height: 1.4; }
.rpel-grow .rpcl-exams__total a { color: var(--rp-navy); text-decoration: underline; text-decoration-color: var(--rp-violet); text-underline-offset: 3px; }
.rpel-grow .rpcl-exams__total a:hover { color: var(--rp-violet); }

/* куда ведут занятия: результат */
.rpel-route .rpcalc-r__big { font-size: 58px; }
.rpel-route .rpcalc-r__year { margin: -10px 0 0; font-size: 17px; opacity: .85; }
.rpel-route .rpcalc-r__row span { min-width: 0; }
.rpel-now { border-radius: 24px; padding: 18px 20px 20px; background: var(--rp-lav); display: grid; gap: 6px; }
.rpel-now__label { margin: 0; font-family: var(--rp-fb); font-weight: 600; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: #8b3fb0; }
.rpel-now__text { margin: 0; font-size: 17px; line-height: 1.45; color: var(--rp-navy); }
.rpel-now__text b { font-family: var(--rp-fb); font-weight: 600; }
.rpel-route .rpel-row--ege { background: rgba(247, 237, 174, .14); }
.rpel-route .rpel-row--ege b { white-space: normal; text-align: right; font-size: 16px; line-height: 1.3; max-width: 70%; color: var(--rp-sun); }
.rpel-unis { margin: 0; font-size: 16px; line-height: 1.6; }
.rpel-unis__lbl { opacity: .8; }
.rpel-unis a { color: #fff; text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .45); text-underline-offset: 3px; white-space: nowrap; }
.rpel-unis a:hover { color: #fff; text-decoration-color: #fff; }

@media screen and (max-width: 1620px) {
  .rpel-stairs { --h0: 118px; --dh: 21px; }
}
@media screen and (max-width: 1350px) {
  .rpel-stairs { --h0: 92px; --dh: 21px; }
  .rpel-stairs .rpcl-step { padding: 14px 9px 12px; }
  .rpel-grow .rpcl-exams__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media screen and (max-width: 1250px) {
  .rpel-stairs { --h0: 84px; --dh: 18px; }
  .rpel-stairs .rpcl-step { padding: 12px 6px 10px; }
  .rpel-stairs .rpcl-step__num { font-size: 17px; }
  .rpel-kid { width: 180px; right: 24px; }
  .rpel-kid--rob { width: 200px; }
}
@media (max-width: 991px) {
  .rpel-stairs .rpcl-step { padding: 10px 16px; flex-wrap: wrap; row-gap: 6px; width: calc(72% + var(--i) * 2.8%); }
  .rpel-stairs .rpcl-step__exam span { max-width: none; white-space: nowrap; }
  .rpel-stairs .rpcl-step__cls { min-width: 80px; }
  .rpel-stairs .rpcl-step__num { font-size: 20px; }
  .rpel-marks { margin-left: auto; }
  .rpel-card .rpcl-detail__body { max-width: 100%; }
  .rpel-kid, .rpel-kid--rob { top: auto; bottom: 18px; transform: none; width: 160px; right: 20px; }
  .rpel-kid--rob { bottom: 0; width: 180px; }
}
@media screen and (max-width: 767px) {
  .rpel-grow .rpcl-exams__list { grid-template-columns: minmax(0, 1fr); }
  .rpel-kid, .rpel-kid--rob { width: 130px; }
  .rpel-route .rpcalc-r__big { font-size: 44px; }
  .rpel-route .rpel-row--ege b { max-width: none; text-align: left; }
}
@media screen and (max-width: 576px) {
  .rpel-stairs .rpcl-step { width: calc(74% + var(--i) * 2.6%); }
  .rpel-stairs .rpcl-step__cls { min-width: 74px; }
  .rpel-now__text { font-size: 16px; }
  .rpel-sub { gap: 8px; }
  .rpel-sub__label { width: 100%; }
  .rpel-sub .rpcl-pills { margin-top: 0; }
}
