.rf-onboarding-shell{max-width:920px;margin:4vh auto;padding:48px;border:1px solid rgba(255,183,0,.25);border-radius:28px;background:radial-gradient(circle at 100% 0,rgba(255,183,0,.18),transparent 38%),linear-gradient(145deg,#fffdf9,#fff6ea);color:var(--ink);box-shadow:0 24px 60px rgba(45,29,34,.1)}
.rf-onboarding-shell h1{font-size:clamp(2.2rem,5vw,4.3rem);line-height:1.02;max-width:800px;margin:18px 0}.rf-onboarding-shell>p{font-size:1.08rem;line-height:1.7;max-width:760px;color:var(--muted)}
.rf-onboarding-progress{display:flex;align-items:center;max-width:420px;margin-bottom:28px}.rf-onboarding-progress span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-weight:800}.rf-onboarding-progress span.active,.rf-onboarding-progress span.done{background:var(--lime);color:#171214;border-color:var(--lime)}.rf-onboarding-progress i{height:2px;flex:1;background:var(--line)}
.rf-value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0}.rf-value-grid div{padding:18px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid var(--line)}.rf-value-grid strong,.rf-value-grid span{display:block}.rf-value-grid span{color:var(--muted);font-size:.9rem;margin-top:7px;line-height:1.45}
.rf-primary-cta{min-height:52px;padding-inline:26px;font-size:1rem}.rf-goal-summary{margin:24px 0;padding:20px;border-left:4px solid var(--lime);background:rgba(255,255,255,.045);border-radius:0 14px 14px 0}.rf-goal-summary small,.rf-goal-summary strong,.rf-goal-summary span{display:block}.rf-goal-summary strong{font-size:1.15rem;margin:7px 0}.rf-goal-summary span{color:var(--muted)}
.rf-dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px;border-radius:24px;background:radial-gradient(circle at 85% 15%,rgba(255,183,0,.22),transparent 34%),linear-gradient(135deg,#fffdf9,#fff3e3);color:var(--ink);border:1px solid rgba(214,145,0,.28);margin-bottom:16px}.rf-dashboard-hero h1{font-size:clamp(1.8rem,4vw,3.4rem);line-height:1.05;max-width:850px;margin:14px 0}.rf-dashboard-hero p{color:var(--muted);margin-bottom:18px}.rf-level-orbit{flex:0 0 150px;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,#fff 56%,transparent 58%),conic-gradient(var(--lime) var(--rf-progress,72%),#eadfd8 0);color:var(--ink);box-shadow:0 0 35px rgba(179,112,0,.12)}.rf-level-orbit strong{font-size:2rem}.rf-level-orbit span{font-size:.75rem;color:var(--muted)}
.rf-demo-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);gap:16px;margin-top:16px}.rf-plan-card .eyebrow,.rf-practice-card .eyebrow,.rf-coach-card .eyebrow,.rf-milestone-card .eyebrow{font-size:.68rem;letter-spacing:.12em;color:var(--lime)}
.rf-plan-basis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0 18px}.rf-plan-basis>div{min-width:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025)}.rf-plan-basis small,.rf-plan-basis strong,.rf-plan-basis span{display:block}.rf-plan-basis small{font-size:.62rem;letter-spacing:.09em;color:var(--lime)}.rf-plan-basis strong{margin:6px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rf-plan-basis span{font-size:.72rem;color:var(--muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rf-skill{padding:14px 0;border-top:1px solid var(--line)}.rf-skill-head{display:flex;justify-content:space-between;gap:12px}.rf-skill-head span{color:var(--muted);font-size:.8rem}.rf-skill-track{height:8px;border-radius:999px;background:rgba(255,255,255,.07);margin:9px 0;overflow:hidden}.rf-skill-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff8a00,var(--lime))}.rf-skill-evidence{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 8px;color:var(--muted);font-size:.74rem;font-weight:700}.rf-skill p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}.rf-skill-foot{display:block;margin-top:7px;color:var(--muted);font-size:.72rem;line-height:1.4}
.rf-milestone{display:flex;gap:12px;padding:12px 0;position:relative}.rf-milestone>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-weight:800;z-index:1;background:var(--panel)}.rf-milestone:not(:last-child):after{content:"";position:absolute;left:15px;top:42px;bottom:-5px;width:1px;background:var(--line)}.rf-milestone.complete>span{background:var(--lime);color:#171214;border-color:var(--lime)}.rf-milestone.current>span{border-color:var(--lime);box-shadow:0 0 0 4px rgba(255,183,0,.12)}.rf-milestone strong,.rf-milestone p{display:block}.rf-milestone p{margin:4px 0 0;color:var(--muted);font-size:.8rem;line-height:1.4}
.rf-game-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0}.rf-game-grid button{min-height:90px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.035);color:var(--text);padding:13px;text-align:left;cursor:pointer}.rf-game-grid button:hover,.rf-game-grid button:focus-visible{border-color:var(--lime);transform:translateY(-1px)}.rf-game-grid span,.rf-game-grid strong,.rf-game-grid small{display:block}.rf-game-grid span{color:var(--lime)}.rf-game-grid strong{margin:6px 0}.rf-game-grid small{color:var(--muted)}
.rf-coach-prompts{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px}.rf-coach-prompts button{border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);padding:7px 11px;cursor:pointer}.rf-coach-prompts button:hover,.rf-coach-prompts button:focus-visible{color:var(--text);border-color:var(--lime)}
.rf-game-question{display:grid;gap:10px}.rf-game-question>strong{font-size:1.15rem;line-height:1.5;margin-bottom:4px}.rf-game-option{display:flex;align-items:flex-start;gap:12px;text-align:left;padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.035);color:var(--text);cursor:pointer}.rf-game-option span{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.08);font-weight:800}.rf-game-option.correct{border-color:#55d68a;background:rgba(85,214,138,.1)}.rf-game-option.wrong{border-color:#ff7a7a;background:rgba(255,122,122,.08)}
.rf-practice-output{margin-top:16px}.rf-practice-output .online-situation h3{margin:7px 0}.rf-practice-output .online-situation small{text-transform:uppercase;letter-spacing:.08em;color:var(--lime)}
.rf-week-card{margin-top:16px;background:linear-gradient(135deg,rgba(255,183,0,.08),rgba(255,255,255,.025));border-color:rgba(255,183,0,.2)}.rf-week-progress{height:9px;border-radius:999px;background:rgba(255,255,255,.07);overflow:hidden}.rf-week-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff8a00,var(--lime))}.rf-week-plan{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.rf-week-plan button{display:flex;align-items:flex-start;gap:11px;min-height:88px;padding:14px;text-align:left;color:var(--text);background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:14px;cursor:pointer}.rf-week-plan button:hover,.rf-week-plan button:focus-visible{border-color:var(--lime);background:rgba(255,183,0,.07)}.rf-week-plan button>span{flex:0 0 28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--lime);color:#171214;font-weight:900}.rf-week-plan strong,.rf-week-plan small{display:block}.rf-week-plan small{margin-top:6px;color:var(--muted);line-height:1.35}
@media(max-width:980px){.rf-demo-grid{grid-template-columns:1fr}.rf-dashboard-hero{align-items:flex-start}.rf-level-orbit{flex-basis:120px}.rf-value-grid{grid-template-columns:1fr}}
@media(max-width:760px){.rf-week-plan{grid-template-columns:1fr}.rf-plan-basis{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.rf-onboarding-shell{padding:26px 20px;margin:0}.rf-dashboard-hero{display:block;padding:22px}.rf-level-orbit{width:110px;margin-top:18px}.rf-game-grid{grid-template-columns:1fr}.rf-metrics{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.rf-game-grid button{transition:none}.rf-game-grid button:hover{transform:none}}
