.rc-lab { max-width: 40rem; margin: 0 auto; }
.rc-path {
  display: flex; flex-wrap: wrap; gap: 0.35rem; justify-content: center; margin: 0.5rem 0 1rem;
}
.rc-path button {
  min-height: 42px; padding: 0.35rem 0.8rem; border-radius: 999px; font-weight: 700;
  border: 1.5px solid rgba(44,82,130,0.3); background: rgba(44,82,130,0.1); cursor: pointer; color: inherit;
}
.rc-path button.here { background: #2c5282; color: #fff; border-color: #2c5282; }
.rc-card {
  padding: 1.1rem; border-radius: 16px; border: 1px solid rgba(184,166,135,0.4);
  background: var(--cu-card, #fffef8); margin-bottom: 0.85rem;
}
.rc-ar {
  font-family: "Amiri", serif; font-size: 1.85rem; line-height: 2; direction: rtl;
  text-align: center; margin: 0.75rem 0;
}
.rc-en { text-align: center; font-size: 0.92rem; opacity: 0.9; margin-bottom: 0.75rem; }
.rc-step { font-size: 0.72rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: #2c5282; text-align: center; }
.rc-choices { display: grid; gap: 0.45rem; margin: 0.75rem 0; }
.rc-choices button {
  min-height: 48px; border-radius: 12px; border: 1.5px solid rgba(44,82,130,0.25);
  background: rgba(44,82,130,0.06); font-weight: 600; cursor: pointer; color: inherit; padding: 0.5rem 0.75rem;
}
.rc-choices button.ok { border-color: #1e7d5e; background: rgba(30,125,94,0.2); }
.rc-choices button.bad { border-color: #a23b4e; background: rgba(162,59,78,0.12); }
.rc-status { text-align: center; min-height: 1.3em; font-size: 0.88rem; }
.rc-tiles { display:flex; flex-wrap:wrap; gap:0.35rem; justify-content:center; margin:0.5rem 0 0.85rem; }
.rc-tile {
  min-height:40px; padding:0.35rem 0.7rem; border-radius:999px; border:1.5px solid rgba(44,82,130,0.3);
  background:rgba(44,82,130,0.1); font-weight:700; font-size:0.78rem; cursor:pointer; color:inherit;
}
.rc-tile.here { background:#2c5282; color:#fff; border-color:#2c5282; }
.rc-tile.done { border-color:#1e7d5e; }
.rc-tajweed-link {
  display:block; text-align:center; margin:0.75rem auto; font-weight:700; color:#1e7d5e;
}
