.rt-page {
  padding: 48px 0 72px;
  background:
    radial-gradient(ellipse 70% 50% at 10% 0%, rgba(237, 133, 133, 0.16), transparent 55%),
    linear-gradient(180deg, #fff8f3 0%, #ffffff 55%);
}
.rt-wrap {
  max-width: 820px;
}
.rt-head {
  text-align: center;
  margin-bottom: 28px;
}
.rt-eyebrow {
  display: inline-block;
  margin: 0 0 10px;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(218, 74, 53, 0.1);
  color: var(--text-main-color, #da4a35);
  font-size: 13px;
  font-weight: 600;
}
.rt-head h1,
.rt-success h1 {
  margin: 0 0 12px;
  font-size: 34px;
  line-height: 1.2;
  color: #2b2b2b;
}
.rt-lead {
  margin: 0 auto;
  max-width: 560px;
  color: #5a5a5a;
  font-size: 16px;
  line-height: 1.5;
}
.rt-progress {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0 0 20px;
  padding: 0;
  justify-content: center;
}
.rt-progress li {
  padding: 6px 10px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  font-size: 12px;
  color: #777;
}
.rt-progress li.is-done {
  background: rgba(100, 147, 113, 0.12);
  border-color: rgba(100, 147, 113, 0.35);
  color: #3f6a4a;
}
.rt-progress li.is-current {
  background: rgba(218, 74, 53, 0.1);
  border-color: rgba(218, 74, 53, 0.35);
  color: var(--text-main-color, #da4a35);
  font-weight: 600;
}
.rt-card {
  background: #fff;
  border-radius: 20px;
  padding: 28px 24px;
  border: 1px solid rgba(0,0,0,.04);
  box-shadow: 0 14px 32px rgba(60, 40, 30, 0.07);
}
.rt-card h2 {
  margin: 0 0 12px;
  font-size: 24px;
}
.rt-hint,
.rt-foot {
  color: #666;
  font-size: 14px;
  line-height: 1.5;
}
.rt-form label {
  display: block;
  margin-bottom: 14px;
  font-size: 14px;
  font-weight: 600;
  color: #333;
}
.rt-form input[type="text"],
.rt-form input[type="email"],
.rt-form input[type="password"],
.rt-form input[type="file"],
.rt-form textarea {
  display: block;
  width: 100%;
  margin-top: 6px;
  padding: 10px 12px;
  border: 1px solid #ddd;
  border-radius: 10px;
  font-weight: 400;
}
.rt-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 16px;
  margin-bottom: 8px;
}
.rt-block-title {
  margin: 18px 0 10px;
  font-size: 15px;
  font-weight: 700;
}
.rt-block {
  margin-bottom: 16px;
  padding: 14px;
  background: #fbf6f2;
  border-radius: 12px;
}
.rt-row-between {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.rt-check {
  display: flex !important;
  align-items: center;
  gap: 8px;
  font-weight: 500 !important;
}
.rt-check input {
  width: auto !important;
  margin: 0 !important;
}
.rt-status-list label {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 12px 14px;
  margin-bottom: 10px;
  border: 1px solid #e8e0d8;
  border-radius: 12px;
  cursor: pointer;
  font-weight: 500;
}
.rt-status-list input {
  margin-top: 3px;
}
.rt-ok {
  color: #3f6a4a;
  font-weight: 600;
  margin: 8px 0;
}
.rt-rec-list {
  display: grid;
  gap: 12px;
  margin: 16px 0;
}
.rt-rec-item {
  padding: 14px;
  border-radius: 12px;
  background: #fbf6f2;
  border: 1px solid rgba(0,0,0,.04);
}
.rt-rec-item.is-ok {
  background: rgba(100, 147, 113, 0.1);
}
.rt-rec-item .rt-rec-actions {
  margin-top: 8px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.rt-pay-info {
  margin-bottom: 16px;
  padding: 14px;
  background: #fbf6f2;
  border-radius: 12px;
  font-size: 14px;
  line-height: 1.5;
}
.rt-checklist {
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}
.rt-checklist li {
  padding: 8px 0;
  border-bottom: 1px solid #f0e8e0;
  font-size: 14px;
}
.rt-checklist li.is-ok { color: #3f6a4a; }
.rt-checklist li.is-bad { color: #a83828; }
.rt-alert {
  margin-bottom: 16px;
  padding: 12px 14px;
  border-radius: 12px;
  background: #fff1f0;
  color: #a83828;
  border: 1px solid #f5c2c0;
}
.rt-alert.is-ok {
  background: #eef8ef;
  color: #3f6a4a;
  border-color: #c9e5cb;
}
.rt-success-box {
  margin: 24px 0;
  padding: 18px;
  background: #fbf6f2;
  border-radius: 14px;
  text-align: left;
}
.rt-success-box h2 {
  margin: 0 0 10px;
  font-size: 18px;
}
.rt-success-box ol {
  margin: 0;
  padding-left: 18px;
}
.rt-success-box li {
  margin-bottom: 8px;
  line-height: 1.45;
}
.rt-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}
.rt-card .btn {
  margin-top: 8px;
  margin-right: 8px;
}
@media (max-width: 767px) {
  .rt-grid { grid-template-columns: 1fr; }
  .rt-head h1 { font-size: 28px; }
  .rt-card { padding: 20px 16px; }
}
