.lesson-stage{place-items:center;gap:2rem;display:grid}@media (min-width:768px){.lesson-stage{grid-template-columns:240px minmax(0,1fr);justify-items:stretch;gap:2.25rem}}.lesson-beats{flex-direction:column;gap:.375rem;width:100%;min-width:0;display:flex}.lesson-beat{isolation:isolate;border-radius:var(--radius-tile);text-align:left;cursor:pointer;grid-template-columns:5.5rem minmax(0,1fr);gap:.875rem;width:100%;min-height:44px;padding:.7rem .9rem;display:grid;position:relative}.lesson-beat:before{content:"";z-index:-1;border-radius:inherit;background:var(--color-surface);box-shadow:var(--shadow-card);opacity:0;position:absolute;inset:0}.lesson-beat[aria-current=step]:before{opacity:1}.lesson-beat:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.lesson-beat-time{font-size:var(--text-label);color:var(--color-ink3);font-variant-numeric:tabular-nums;padding-top:2px;font-weight:600}.lesson-beat[aria-current=step] .lesson-beat-time{color:var(--color-accent)}.lesson-beat-title{font-family:var(--font-display);color:var(--color-ink);font-weight:700;display:block}.lesson-beat-line{color:var(--color-ink2);display:block}.lesson-ruler{cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none;outline:none;height:64px;margin-top:2.5rem;position:relative;container-type:inline-size}.lesson-ruler:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:8px}.lesson-ruler-track{position:absolute;inset:0}.lesson-ruler-seg{background:var(--color-hairline);border-radius:7px;height:14px;position:absolute;top:8px;overflow:hidden}.lesson-ruler-fill{transform-origin:0;background:linear-gradient(90deg, var(--color-night-key), var(--color-spark-light));position:absolute;inset:0}.lesson-ruler-tick{background:var(--color-hairline);width:1px;height:8px;position:absolute;top:30px}.lesson-ruler-tick.is-major{background:var(--color-ink3);height:16px}.lesson-ruler-label{font-size:var(--text-label);color:var(--color-ink3);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600;position:absolute;top:20px;left:0;transform:translate(-50%)}.lesson-ruler-head-layer{pointer-events:none;width:0;height:48px;position:absolute;top:0;left:0}.lesson-ruler-head{background:var(--color-ink);width:2px;height:48px;position:absolute;top:0;left:-1px}.lesson-ruler-time{background:var(--color-ink);color:var(--color-surface);font-size:var(--text-label);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:6px;padding:3px 7px;font-weight:700;position:absolute;top:-26px;left:50%;transform:translate(-50%)}.lesson-phone{background:var(--color-night);border-radius:38px;width:240px;height:440px;position:relative;overflow:hidden;box-shadow:0 0 0 8px #101014,0 0 0 9px #2a2a30,0 30px 50px -26px #0a0a2880}.lesson-phone-notch{z-index:3;background:#000;border-radius:14px;width:76px;height:22px;margin-left:-38px;position:absolute;top:8px;left:50%}.lx-scr{color:var(--color-night-fg);opacity:0;background:radial-gradient(130% 80% at 40% 0,#34328a 0%,#1b1a4d 55%,#100f2b 100%);flex-direction:column;gap:9px;padding:42px 14px 16px;display:flex;position:absolute;inset:0;overflow:hidden;transform:translateY(8px)}.lx-scr.is-on{opacity:1;transform:none}.lx-top{justify-content:space-between;align-items:center;display:flex}.lx-k{color:var(--color-night-key);font-size:11px;font-weight:700}.lx-k.is-gold{color:#ffd66b}.lx-pill{border-radius:var(--radius-pill);color:var(--color-night-fg2);background:#ffffff14;padding:3px 8px;font-size:9.5px;font-weight:600}.lx-say{font-family:var(--font-display);letter-spacing:-.01em;flex:1;font-size:17px;font-weight:700;line-height:1.3}.lx-say.is-small{text-align:center;flex:none;font-size:15px}.lx-say .say-key{color:#ffd66b}.lx-btn{color:var(--color-night);font-family:var(--font-display);text-align:center;background:#fff;border-radius:14px;margin-top:auto;padding:11px;font-size:13.5px;font-weight:700}.lx-dots{gap:4px;display:flex}.lx-dots i{background:#ffffff2e;border-radius:3px;width:16px;height:5px}.lx-dots i.is-done{background:var(--color-spark-light)}.lx-dots i.is-now{background:#fff}.lx-en{border-radius:var(--radius-pill);color:#ffd66b;background:#ffd66b1f;align-items:center;gap:3px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.lx-q{font-family:var(--font-display);letter-spacing:-.01em;margin-top:4px;font-size:16px;font-weight:700;line-height:1.2}.lx-a{isolation:isolate;background:#ffffff12;border-radius:13px;padding:9px 10px;font-size:11.5px;line-height:1.35;position:relative;box-shadow:inset 0 0 0 1.5px #ffffff24}.lx-a-glow{z-index:-1;border-radius:inherit;opacity:0;background:#34c7592e;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #4bd27a}.lx-xp{color:#ffd66b;opacity:0;font-size:11px;font-weight:700;position:absolute;top:-10px;right:8px}.lx-sp{clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);opacity:0;background:#ffe59a;width:7px;height:7px;position:absolute}.lx-sp.is-1{top:4px;right:30px}.lx-sp.is-2{bottom:6px;right:12px}.lx-sp.is-3{top:-4px;left:40%}.lx-hint{color:#ffd66b;background:#ffd66b1a;border-radius:10px;align-self:flex-start;align-items:center;gap:6px;padding:6px 8px;font-size:10.5px;font-weight:600;display:flex}.lx-mini{position:absolute;bottom:8px;right:6px}.lx-streak{color:#ffb36b;align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex}.lx-map{width:100%;height:auto;margin-top:4px}.lx-trail line{stroke:var(--color-night-key);stroke-width:1.2px;stroke-dasharray:3 4;opacity:.7}.lx-comet{stroke:#ffd66b;stroke-width:1.6px;stroke-linecap:round;transform-box:fill-box;transform-origin:0;transform:scaleX(0)}.lx-done-stars path{fill:#fff}.lx-dim-stars path{fill:#fff3}.lx-new{opacity:0;transform:scale(.4)}.lx-new-glow{fill:#ffd66b;opacity:.22}.lx-new-star{fill:#ffe59a}.lx-xpbig{font-family:var(--font-display);letter-spacing:-.02em;color:#ffd66b;font-size:30px;font-weight:700}.lx-xpbig b{font-variant-numeric:tabular-nums}.lx-sub{color:#b9b8e2;font-size:11.5px;font-weight:600}.lx-scr.is-still .lx-a-glow,.lx-scr.is-still .lx-new{opacity:1;transform:none}.lx-scr.is-still .lx-comet{transform:none}@media (prefers-reduced-motion:no-preference){.lx-scr{transition:opacity .35s,transform .45s cubic-bezier(.22,1,.36,1)}.lx-scr.is-go .lx-a.is-right{animation:.5s cubic-bezier(.34,1.56,.64,1) .9s both lx-press}.lx-scr.is-go .lx-a-glow{animation:.3s ease-out 1.1s forwards lx-fade-in}.lx-scr.is-go .lx-xp{animation:1.2s ease-out 1.2s forwards lx-xp}.lx-scr.is-go .lx-sp{animation:.8s ease-out 1.2s forwards lx-spark}.lx-scr.is-go .lx-sp.is-2{animation-delay:1.3s}.lx-scr.is-go .lx-sp.is-3{animation-delay:1.4s}.lx-scr.is-go .lx-comet{animation:.8s cubic-bezier(.4,0,.2,1) .3s forwards lx-grow}.lx-scr.is-go .lx-new{animation:.6s cubic-bezier(.34,1.56,.64,1) 1s forwards lx-star}.month-star.is-lit,.month-line.is-lit{transition:opacity .3s}}@keyframes lx-press{0%{transform:none}40%{transform:scale(.97)}to{transform:none}}@keyframes lx-fade-in{to{opacity:1}}@keyframes lx-xp{0%{opacity:0;transform:translateY(6px)}30%{opacity:1;transform:none}to{opacity:0;transform:translateY(-12px)}}@keyframes lx-spark{0%{opacity:0;transform:scale(.4)}40%{opacity:1;transform:scale(1.3)}to{opacity:0;transform:scale(.8)translateY(-8px)}}@keyframes lx-grow{to{transform:scaleX(1)}}@keyframes lx-star{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.lx-scr,.lx-a.is-right,.lx-a-glow,.lx-xp,.lx-sp,.lx-comet,.lx-new{transition:none;animation:none}.lx-a-glow,.lx-new{opacity:1;transform:none}.lx-comet{transform:none}}.month-line{stroke:var(--color-night-key);stroke-width:1.1px;stroke-dasharray:3 4;opacity:0}.month-line.is-lit{opacity:.75}.month-star{fill:var(--color-night-fg);opacity:.15}.month-star.is-lit{opacity:1}.month-label{fill:var(--color-night-fg2);font-size:10.5px;font-weight:700}.month-caption{fill:var(--color-night-fg2);font-size:10px}@media (prefers-reduced-motion:reduce){.month-star,.month-line{transition:none}}
