.rs-stage{--tone:var(--lime)}.rs-top{z-index:2;flex-shrink:0;align-items:center;gap:14px;width:100%;max-width:1240px;margin:0 auto;padding:14px 20px 6px;display:flex;position:relative}.rs-back{border:1px solid var(--line-2);min-height:46px;color:var(--cream);background:#ffffff0d;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:0 16px 0 8px;font-size:14px;font-weight:600;transition:background .18s;display:inline-flex}.rs-back:hover:not(:disabled){background:#ffffff1f}.rs-word{align-items:center;gap:12px;min-width:0;display:flex}.rs-cat{background:var(--tone);border-radius:17px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:25px;line-height:1;display:grid}.rs-word small{color:var(--muted);font-size:12px;font-weight:550;display:block}.rs-word h1{font:750 clamp(26px, 6.2vw, 40px)/1 var(--display);letter-spacing:-.04em;text-transform:capitalize;overflow-wrap:anywhere}.rs-main{z-index:1;scrollbar-width:thin;scrollbar-color:#2c3d33 transparent;flex-direction:column;flex:1;align-items:center;gap:16px;width:100%;min-height:0;padding:8px 20px 28px;display:flex;position:relative;overflow:auto}.rs-camera{flex-shrink:0;justify-content:center;width:100%;display:flex}.rs-frame{width:100%;position:relative}.rs-corner{z-index:6;pointer-events:none;border:2.5px solid #f5f2ebeb;width:30px;height:30px;position:absolute}.rs-corner-tl{border-bottom:0;border-right:0;border-top-left-radius:10px;top:14px;left:14px}.rs-corner-tr{border-bottom:0;border-left:0;border-top-right-radius:10px;top:14px;right:14px}.rs-corner-bl{border-top:0;border-right:0;border-bottom-left-radius:10px;bottom:14px;left:14px}.rs-corner-br{border-top:0;border-left:0;border-bottom-right-radius:10px;bottom:14px;right:14px}.rs-side{display:contents}.rs-guide{order:-1;gap:12px;width:100%;max-width:560px;display:grid}.rs-controls{gap:14px;width:100%;max-width:560px;display:grid}.rs-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.rs-steps li{border:1px solid var(--line);min-width:0;color:var(--muted);background:#ffffff08;border-radius:18px;align-items:center;gap:10px;padding:10px 12px;font-size:12.5px;font-weight:600;line-height:1.2;transition:background .24s,border-color .24s,color .24s;display:flex}.rs-steps li span{width:26px;height:26px;font:700 13px var(--display);background:#ffffff1a;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.rs-steps li[data-state=active]{border-color:var(--lime);color:var(--cream);background:#d6f36a1f}.rs-steps li[data-state=active] span,.rs-steps li[data-state=done] span{background:var(--lime);color:var(--ink)}.rs-steps li[data-state=done]{color:var(--cream)}.rs-steps li[data-state=next]{color:var(--cream);border-color:#d6f36a8c}.rs-steps li[data-state=next] span{color:var(--lime);background:#d6f36a40}.rs-steps li:not([data-state=active]):not([data-state=next]) b{display:none}.rs-instruction{font:600 18px/1.4 var(--display);letter-spacing:-.02em}.rs-note{color:var(--muted);font-size:13px}.rs-help{color:#cdf3ff;background:#78e0ff17;border:1px solid #78e0ff47;border-radius:16px;padding:12px 16px;font-size:13.5px;line-height:1.45}.rs-error{color:var(--coral);background:#ff8e721f;border:1px solid #ff8e7266;border-radius:16px;padding:12px 16px;font-size:13.5px;line-height:1.45}.rs-tools{border:1px solid var(--line);background:#ffffff08;border-radius:22px;gap:10px;padding:14px;display:grid}.rs-switch{text-align:left;align-items:center;gap:12px;min-height:44px;font-size:14px;font-weight:600;display:flex}.rs-switch-track{background:#ffffff24;border-radius:999px;flex-shrink:0;width:46px;height:26px;transition:background .2s;position:relative}.rs-switch-track i{background:var(--cream);width:20px;height:20px;transition:transform .26s var(--ease), background .2s;border-radius:50%;position:absolute;top:3px;left:3px}.rs-switch[aria-checked=true] .rs-switch-track{background:var(--lime)}.rs-switch[aria-checked=true] .rs-switch-track i{background:var(--ink);transform:translate(20px)}.rs-tracking-status{color:var(--muted);font-size:12.5px}.rs-legend{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.rs-legend li{color:var(--muted);background:#ffffff0f;border-radius:999px;align-items:center;gap:8px;padding:5px 11px;font-size:12px;display:inline-flex}.rs-legend i{border-radius:50%;width:10px;height:10px}.rs-tool{border:1px solid var(--line-2);min-height:44px;color:var(--cream);background:#ffffff0d;border-radius:999px;justify-self:start;align-items:center;gap:8px;padding:0 16px;font-size:13.5px;font-weight:600;transition:background .18s;display:inline-flex}.rs-tool:hover:not(:disabled){background:#ffffff1f}.rs-actions{gap:10px;display:grid}.rs-primary{background:var(--lime);width:100%;min-height:68px;color:var(--ink);font:700 18px var(--body);transition:transform .24s var(--ease), box-shadow .3s;border-radius:999px;justify-content:center;align-items:center;gap:14px;padding:0 24px;display:flex}.rs-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 44px -14px #d6f36abf}.rs-primary:active:not(:disabled){transform:scale(.98)}.rs-primary:focus-visible{outline-color:var(--cream)}.rs-rec{background:#e5483a;border-radius:50%;flex-shrink:0;width:22px;height:22px;box-shadow:0 0 0 4px #080c0a2e}.rs-secondary{border:1px solid var(--line-2);width:100%;min-height:56px;color:var(--cream);background:#ffffff0f;border-radius:999px;justify-content:center;align-items:center;gap:10px;font-size:15px;font-weight:650;transition:background .18s;display:flex}.rs-secondary:hover:not(:disabled){background:#ffffff1f}.rs-link{min-height:44px;color:var(--muted);text-underline-offset:4px;font-size:14px;font-weight:550;text-decoration:underline}.rs-link:hover:not(:disabled){color:var(--cream)}.rs-busy{background:#ffffff0f;border-radius:18px;align-items:center;gap:12px;padding:12px 16px;font-weight:600;display:flex}.rs-spin{border:3px solid #080c0a40;border-top-color:var(--ink);border-radius:50%;flex-shrink:0;width:20px;height:20px;animation:.8s linear infinite rs-turn}.rs-busy .rs-spin{border-color:#fff3;border-top-color:var(--lime)}@keyframes rs-turn{to{transform:rotate(360deg)}}.rs-preview{background:#000;border-radius:22px;width:100%;position:relative;overflow:hidden}.rs-preview img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0;transform:scaleX(-1)}.rs-chip{z-index:2;color:var(--cream);background:#0009;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:650;position:absolute;top:18px;left:56px}.rs-playbar{z-index:2;background:#ffffff2e;height:6px;position:absolute;bottom:0;left:0;right:0}.rs-playbar i{background:var(--lime);height:100%;display:block}.rs-playrow{color:var(--muted);align-items:center;gap:14px;font-size:13.5px;display:flex}.rs-done{z-index:1;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;width:100%;max-width:460px;margin:0 auto;padding:32px 24px;display:flex;position:relative;overflow:auto}.rs-done-badge{background:var(--lime);width:132px;height:132px;color:var(--ink);animation:rs-pop .7s var(--ease) both;border-radius:44px;place-items:center;display:grid;rotate:-6deg;box-shadow:0 30px 70px -24px #d6f36ab3}@keyframes rs-pop{0%{opacity:0;transform:scale(.4)}}.rs-done h1{font:800 clamp(46px, 12vw, 68px)/1 var(--display);letter-spacing:-.05em;margin-top:18px}.rs-done p{color:var(--muted);font-size:17px}.rs-done .rs-actions{width:100%;margin-top:22px}@media (width<=899px){.rs-actions{padding:18px 20px calc(14px + env(safe-area-inset-bottom,0px));background:linear-gradient(transparent, var(--ink) 34%);z-index:3;margin:0 -20px;position:sticky;bottom:0}.rs-done .rs-actions{background:0 0;margin:22px 0 0;padding:0;position:static}}@media (width>=900px){.rs-top{padding:22px 40px 8px}.rs-main{grid-template-columns:minmax(0,600px) minmax(340px,440px);place-content:center;align-items:start;gap:44px;padding:18px 40px 56px;display:grid}.rs-side{gap:18px;display:grid;position:sticky;top:8px}.rs-guide{order:0;max-width:none}.rs-controls{max-width:none}.rs-steps{grid-template-columns:1fr;gap:6px}.rs-steps li{padding:11px 14px;font-size:14px}.rs-steps li:not([data-state=active]):not([data-state=next]) b{display:inline}}@media (width<=360px){.rs-steps li{gap:6px;padding:8px}.rs-primary{font-size:16px}}