/* ── Page bg ──────────────────────────────────────────────────────────────── */
body { background:linear-gradient(160deg,#0D0620 0%,#130A2A 40%,#1A0D35 100%) !important; min-height:100vh; }

.rdsta-db-wrap { position:relative; min-height:100vh; }
.rdsta-db-inner {
  position:relative; z-index:1;
  max-width:480px; margin:0 auto;
  padding:20px 16px 60px;
}

/* ── Greeting ─────────────────────────────────────────────────────────────── */
.rdsta-greeting { margin-bottom:20px; animation:rdsta-fade-up .4s var(--ease) both; }
.rdsta-greeting-h { font-size:clamp(20px,5vw,26px); font-weight:800; line-height:1.2; margin-bottom:4px; }
.rdsta-greeting-sub { color:var(--t2); font-size:13px; }
.rdsta-greeting-sub span { color:var(--p3); font-weight:700; }

/* ── Hero card ────────────────────────────────────────────────────────────── */
.rdsta-hero { overflow:hidden; margin-bottom:16px; border-radius:var(--r4);
  animation:rdsta-fade-up .45s var(--ease) both; }

.rdsta-hero-top {
  height:110px;
  background:linear-gradient(135deg,#2A0E5C 0%,#4A1D96 50%,#6C3FC5 100%);
  position:relative; overflow:hidden; padding:18px 18px 0;
}
.rdsta-hero-glow { position:absolute; inset:0;
  background:radial-gradient(ellipse at 80% 40%,rgba(167,139,250,.3) 0%,transparent 60%); pointer-events:none; }
.rdsta-hero-ring1 { position:absolute; top:-20px; right:-20px; width:120px; height:120px;
  border-radius:50%; border:1px solid rgba(255,255,255,.1); }
.rdsta-hero-ring2 { position:absolute; top:10px; right:10px; width:60px; height:60px;
  border-radius:50%; border:1px solid rgba(255,255,255,.08); }
.rdsta-hero-title { position:relative; font-size:15px; font-weight:800; color:#fff;
  line-height:1.3; max-width:240px; margin-top:8px; }

.rdsta-hero-body { padding:16px 18px; }
.rdsta-hero-prog { display:flex; align-items:center; gap:16px; margin-bottom:14px; }

/* Ring */
.rdsta-ring-wrap { position:relative; flex-shrink:0; }
.rdsta-ring-wrap svg { display:block; }
.rdsta-ring-pct { position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  font-size:14px; font-weight:800; color:var(--p3); }

.rdsta-hero-prog-text { flex:1; }
.rdsta-hero-prog-label { font-size:14px; font-weight:700; margin-bottom:4px; }
.rdsta-hero-prog-sub { font-size:12px; color:var(--t2); margin-bottom:8px; }

/* Continue row */
.rdsta-continue {
  display:flex; align-items:center; gap:10px;
  background:rgba(139,92,246,.1); border:1px solid rgba(139,92,246,.2);
  border-radius:var(--r2); padding:11px 13px; margin-bottom:14px;
  cursor:pointer; text-decoration:none; color:inherit; transition:background .15s;
}
.rdsta-continue:hover { background:rgba(139,92,246,.18); color:inherit; }
.rdsta-continue-ic {
  width:34px; height:34px; border-radius:9px; flex-shrink:0;
  background:linear-gradient(135deg,var(--p1),var(--p2));
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 12px var(--glow); color:#fff;
}
.rdsta-continue-info { flex:1; min-width:0; }
.rdsta-continue-ey { font-size:11px; color:var(--p3); font-weight:600; margin-bottom:1px; }
.rdsta-continue-title { font-size:13px; font-weight:700; color:var(--t1);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

/* ── Stats grid (2×2) ─────────────────────────────────────────────────────── */
.rdsta-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-bottom:16px; }
.rdsta-stat { padding:16px 14px; border-radius:var(--r3); }
.rdsta-stat-ic { width:30px; height:30px; border-radius:8px; display:flex;
  align-items:center; justify-content:center; margin-bottom:10px; }
.rdsta-stat-val { font-size:20px; font-weight:800; margin-bottom:2px; }
.rdsta-stat-lbl { font-size:11px; color:var(--t2); }

/* ── Section accordion ────────────────────────────────────────────────────── */
.rdsta-section { margin-bottom:10px; border-radius:var(--r2);
  border:1px solid var(--bdr); overflow:hidden;
  animation:rdsta-fade-up .5s var(--ease) both;
  transition:border-color .15s;
}
.rdsta-section.open { border-color:rgba(139,92,246,.25); border-radius:var(--r2) var(--r2) 0 0; }

.rdsta-sec-hd {
  display:flex; align-items:center; gap:10px; padding:13px 14px;
  background:var(--s1); cursor:pointer; user-select:none;
  border-left:3px solid currentColor; color:var(--p2);
  transition:background .15s;
}
.rdsta-sec-hd:hover { background:var(--s2); }
.rdsta-sec-hd:focus-visible { outline:2px solid var(--p2); outline-offset:-2px; }

.rdsta-sec-num { width:32px; height:32px; border-radius:8px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  font-size:14px; font-weight:800;
  background:rgba(139,92,246,.12); color:var(--p3); border:1px solid rgba(139,92,246,.25); }
.rdsta-sec-meta { flex:1; min-width:0; }
.rdsta-sec-title { font-size:13px; font-weight:700; color:var(--t1);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.rdsta-sec-sub { font-size:11px; color:var(--t2); margin-top:1px; }
.rdsta-sec-ring { flex-shrink:0; }
.rdsta-sec-chev { color:var(--t3); flex-shrink:0; transition:transform .2s; }
.rdsta-sec-chev svg { display:block; }
.rdsta-section.open .rdsta-sec-chev { transform:rotate(180deg); }

.rdsta-sec-body { background:var(--s1); border-top:1px solid var(--bdr);
  border-radius:0 0 var(--r2) var(--r2); padding:12px 14px; }

/* Module header */
.rdsta-module { margin-bottom:2px; }
.rdsta-mod-hd { display:flex; align-items:center; gap:8px; padding:9px 6px;
  cursor:pointer; user-select:none; border-radius:var(--r1); transition:background .12s; }
.rdsta-mod-hd:hover { background:rgba(139,92,246,.07); }
.rdsta-mod-dot { width:6px; height:6px; border-radius:50%; flex-shrink:0; }
.rdsta-mod-title { flex:1; font-size:12px; font-weight:600; color:var(--t2); }
.rdsta-mod-count { font-size:11px; color:var(--t3); margin-right:4px; }
.rdsta-mod-chev { color:var(--t3); transition:transform .15s; flex-shrink:0; }
.rdsta-mod-chev svg { display:block; }
.rdsta-mod-hd.open .rdsta-mod-chev { transform:rotate(180deg); }

/* Lesson row */
.rdsta-mod-body { padding-left:14px; }
.rdsta-lesson {
  display:flex; align-items:center; gap:8px; padding:9px 8px;
  border-radius:var(--r1); cursor:pointer; text-decoration:none; color:var(--t2);
  transition:background .12s; border-bottom:1px solid rgba(255,255,255,.04);
}
.rdsta-lesson:hover:not(.locked) { background:rgba(139,92,246,.08); color:var(--t1); }
.rdsta-lesson.locked { opacity:.4; pointer-events:none; }
.rdsta-lesson.done .rdsta-les-title { color:var(--t2); }

.rdsta-les-check { width:22px; height:22px; border-radius:50%; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  border:1.5px solid var(--bdr); }
.rdsta-les-title { flex:1; font-size:12px; font-weight:500;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.rdsta-les-dur { font-size:11px; color:var(--t3); flex-shrink:0; }
.rdsta-les-badge { font-size:9px; font-weight:700; padding:2px 8px; border-radius:20px; flex-shrink:0; }
.rdsta-les-badge.video { background:rgba(139,92,246,.12); color:var(--p3); }
.rdsta-les-badge.text  { background:rgba(29,158,117,.12);  color:#6ee7b7; }

/* ── Instructor card ──────────────────────────────────────────────────────── */
.rdsta-instructor { padding:16px 18px; margin-bottom:12px; }
.rdsta-card-eyebrow { font-size:10px; font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; color:var(--t3); margin-bottom:14px; }
.rdsta-instructor-row { display:flex; align-items:center; gap:14px; }
.rdsta-instructor-av { width:48px; height:48px; border-radius:14px; flex-shrink:0;
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  display:flex; align-items:center; justify-content:center;
  font-size:16px; font-weight:800; color:#1A0F00;
  box-shadow:0 4px 16px rgba(212,175,106,.3); }
.rdsta-instructor-name { font-size:15px; font-weight:700; color:var(--t1); }
.rdsta-instructor-role { font-size:12px; color:var(--t2); margin-top:2px; }
.rdsta-stars { display:flex; gap:2px; margin-top:5px; }

/* ── Quick links ──────────────────────────────────────────────────────────── */
.rdsta-quick { overflow:hidden; margin-top:4px; }
.rdsta-quick-head { padding:12px 18px; border-bottom:1px solid rgba(255,255,255,.06);
  font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--t3); }
.rdsta-quick-row { display:flex; align-items:center; gap:12px; padding:13px 18px;
  border-bottom:1px solid rgba(255,255,255,.05); text-decoration:none; color:inherit;
  transition:background .12s; cursor:pointer; }
.rdsta-quick-row:last-child { border-bottom:none; }
.rdsta-quick-row:hover { background:rgba(139,92,246,.06); }
.rdsta-quick-ic { width:34px; height:34px; border-radius:9px;
  background:rgba(139,92,246,.12); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.rdsta-quick-ic svg { color:var(--p3); }
.rdsta-quick-info { flex:1; }
.rdsta-quick-lbl { font-size:13px; font-weight:600; color:var(--t1); }
.rdsta-quick-sub { font-size:11px; color:var(--t2); margin-top:1px; }
