/* Страница второго сезона. Опирается на base.css и pool.css: свои здесь
   только те блоки, которых в коллекции ещё не было. */

.rbpage { padding-bottom: 80px; }

.rbsec { margin-top: 56px; }
.rbsec > h2, .rbladder > h2 {
  font-size: 22px; letter-spacing: .01em; margin: 0 0 6px;
}
.rbnote { color: var(--dim-2); margin: 0 0 20px; max-width: 62ch; }

/* ——— лестница ——— */
.rbladder { margin-top: 40px; }
.rbladder__row {
  display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch;
}
.rbstep {
  position: relative; flex: 1 1 130px; min-width: 118px;
  border: 1px solid var(--line); border-radius: 10px;
  background: rgba(18, 22, 32, .62); padding: 14px 12px 16px; text-align: center;
}
.rbstep--part { border-style: dashed; }
.rbstep__n { font: 700 22px/1.1 ui-monospace, Menlo, Consolas, monospace; }
.rbstep__t { color: var(--dim-2); font-size: 12px; margin-top: 4px; letter-spacing: .06em; text-transform: uppercase; }
.rbstep__arrow {
  position: absolute; right: -14px; top: 50%; transform: translateY(-50%);
  color: var(--dim-2); font-size: 16px;
}
/* На узком экране стрелка смотрит вниз, а не вбок. */
@media (max-width: 720px) {
  .rbstep__arrow { right: 50%; top: auto; bottom: -16px; transform: translateX(50%); }
  .rbladder__row { gap: 22px; }
}

/* ——— слоты ——— */
.rbslots {
  display: grid; gap: 14px;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}
.rbslot {
  border: 1px solid var(--line); border-radius: 10px;
  background: rgba(18, 22, 32, .62); padding: 14px;
}
.rbslot__h {
  display: flex; justify-content: space-between; align-items: baseline;
  border-bottom: 1px solid var(--line); padding-bottom: 8px; margin-bottom: 8px;
}
.rbslot__h b { letter-spacing: .06em; text-transform: uppercase; font-size: 13px; }
.rbslot__h span { color: var(--dim-2); font-size: 12px; }
.rbslot__list { list-style: none; margin: 0; padding: 0; }
.rbslot__list li {
  display: grid; grid-template-columns: 18px 1fr auto; gap: 8px;
  align-items: baseline; padding: 3px 0; font-size: 13px;
}
.rbslot__step { color: var(--dim-2); font-size: 11px; }
.rbslot__val { color: var(--accent); font-size: 12px; }

/* ——— таблицы шансов ——— */
.rbodds { display: grid; gap: 14px; grid-template-columns: minmax(160px, 1fr) minmax(280px, 2fr); }
@media (max-width: 720px) { .rbodds { grid-template-columns: 1fr; } }
.rbtable {
  width: 100%; border-collapse: collapse;
  border: 1px solid var(--line); border-radius: 10px; overflow: hidden;
  background: rgba(18, 22, 32, .62);
}
.rbtable th, .rbtable td { padding: 7px 12px; text-align: left; font-size: 13px; }
.rbtable th {
  color: var(--dim-2); font-weight: 500; font-size: 11px;
  letter-spacing: .08em; text-transform: uppercase;
  border-bottom: 1px solid var(--line);
}
.rbtable tr + tr td { border-top: 1px solid rgba(255, 255, 255, .04); }

/* ——— предпросмотр ——— */
.rbpreview { display: grid; gap: 16px; grid-template-columns: minmax(220px, 1fr) minmax(280px, 1.6fr); }
@media (max-width: 720px) { .rbpreview { grid-template-columns: 1fr; } }
.rbpreview__form {
  border: 1px solid var(--line); border-radius: 10px;
  background: rgba(18, 22, 32, .62); padding: 16px;
  display: flex; flex-direction: column; gap: 10px;
}
.rbpreview__form label { display: flex; flex-direction: column; gap: 4px; font-size: 12px; color: var(--dim-2); }
.rbinput {
  font: inherit; padding: 8px 10px; border-radius: 6px;
  border: 1px solid var(--line); background: #10141d; color: var(--ink);
}
.rbhint { color: var(--dim-2); font-size: 12px; min-height: 16px; }
.rbpreview__out {
  border: 1px solid var(--line); border-radius: 10px;
  background: rgba(18, 22, 32, .62); padding: 16px;
  display: flex; gap: 16px; align-items: flex-start;
}
@media (max-width: 520px) { .rbpreview__out { flex-direction: column; } }
.rbpreview__img { width: 176px; height: 176px; border-radius: 8px; flex: none; }
.rbpreview__name { font-size: 18px; font-weight: 700; }
.rbpreview__rank { color: var(--accent); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 10px; }
.rbpreview__items { list-style: none; margin: 0 0 10px; padding: 0; }
.rbpreview__items li {
  display: grid; grid-template-columns: 62px 1fr auto; gap: 8px;
  font-size: 13px; padding: 2px 0;
}
.rbpreview__items li span:first-child { color: var(--dim-2); font-size: 11px; }
.rbpreview__genome { color: var(--dim-2); font-size: 11px; }

/* ——— запчасти ——— */
.rbparts { display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.rbpart {
  border: 1px solid var(--line); border-radius: 10px;
  background: rgba(18, 22, 32, .62); padding: 12px 14px;
}
.rbpart--wide { grid-column: 1 / -1; }
.rbpart__h { color: var(--dim-2); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 4px; }
.rbpart__v { font-size: 13px; }
