:root{--paper:#fffaf3;--ink:#5a4636;--ink-soft:#745f4d;--char-ink:#5a3a38;--char-eye:#4a302e;--rose:#c4486a;--rose-wash:#f5c9d2;--note:#6f8fc0;--sky:#d4e9f2;--sage:#d2e6c7;--apricot:#fbe4cf;--butter:#f8e9b4;--butter-deep:#f2d27a;--amber-wash:#fbe2b8;--lilac:#e4dcf2;--page:#fbf6ee;--on-page:var(--ink);--body:"Gaegu", -apple-system, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--display:var(--body);--line:1.4px;--radius:14px;--soft:cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box}html,body{margin:0}body{font-family:var(--body);color:var(--ink);background:var(--page);-webkit-font-smoothing:antialiased;caret-color:var(--rose);word-break:keep-all;overflow-wrap:break-word;font-size:17px}::selection{background:var(--rose-wash);color:var(--ink)}button{font:inherit;color:inherit}:focus-visible{outline:2.5px solid var(--ink);outline-offset:3px;border-radius:6px}.listener:focus{outline:none}.listener .focus-ring{opacity:0}.listener:focus-visible .focus-ring{opacity:1}.app{background:var(--page);min-height:100vh;padding-block:14px 40px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px))}.app>*{max-width:760px;margin-inline:auto}.nobr{white-space:nowrap}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hud{grid-template-columns:1fr auto;align-items:end;gap:6px 16px;margin-bottom:10px;display:grid}.wordmark{font-family:var(--display);white-space:nowrap;color:var(--on-page);margin:0;font-size:34px;font-weight:700;line-height:1}.stats{color:var(--on-page);gap:14px;margin:0;display:flex}.stats div{border-radius:10px;justify-items:end;padding:2px 6px 0;transition:background-color .3s;display:grid}.stats div.warn{background:var(--amber-wash);color:var(--ink)}.stats dt{align-items:center;gap:3px;font-size:14px;line-height:1.2;display:flex}.stats dd{font-family:var(--display);font-variant-numeric:tabular-nums;margin:0;font-size:24px;font-weight:700;line-height:1.05}.hud-icon{vertical-align:-2px;flex:none;width:13px;height:13px;overflow:visible}.progress{color:var(--on-page);grid-column:1/-1;align-items:center;gap:10px;font-size:15px;display:flex}.progress .bar{background:color-mix(in srgb, var(--paper) 70%, transparent);border:var(--line) solid var(--ink);border-radius:999px;flex:1;height:8px;overflow:hidden}.progress .bar i{background:var(--rose-wash);height:100%;transition:width .8s var(--soft);display:block}.stage-card{border:var(--line) solid var(--ink);border-radius:var(--radius);background:var(--sky);position:relative;overflow:hidden}.scene{width:100%;height:auto;display:block}.scene-stack{position:relative}.scene-back{width:100%;height:100%;display:block;position:absolute;inset:0}.scene-back,.scene-stack>.scene{will-change:transform}.scene-stack>.scene{position:relative}.backdrop{transition:opacity 1.2s,visibility}.backdrop.off{visibility:hidden;transition:opacity 1.2s,visibility 0s linear 1.2s}.backdrop.off *{animation-play-state:paused}.origin-bottom,.breathe,.pop,.pop-in,.waddle,.tuft{transform-box:fill-box;transform-origin:50% 100%}.breathe{animation:3.6s ease-in-out infinite breathe}@keyframes breathe{50%{transform:scale(1.015,.99)}}.drift{animation:26s ease-in-out infinite alternate drift}.drift.slow{animation-duration:38s;animation-direction:alternate-reverse}@keyframes drift{to{transform:translate(46px)}}.listener{cursor:pointer;transition:transform 1.3s linear,opacity .35s}.listener-body{transition:transform 1.3s linear}.listener.dim{opacity:.45}.blush{transition:opacity .7s var(--soft)}.waddle{animation:.42s ease-in-out infinite alternate waddle}@keyframes waddle{0%{transform:rotate(-4deg)translateY(0)}to{transform:rotate(4deg)translateY(-1.5px)}}.pop{animation:pop .4s var(--soft) both}@keyframes pop{0%{opacity:0;transform:scale(.4)}}.pop-in{animation:pop .6s var(--soft) both}.tuft.bob{animation:.24s ease-in-out infinite alternate tuft}@keyframes tuft{to{transform:rotate(8deg)}}.bloom{transform-box:fill-box;transform-origin:50%;animation:bloom 1.8s var(--soft) forwards;mix-blend-mode:multiply;pointer-events:none}@keyframes bloom{0%{clip-path:circle(14% at 48% 55%);opacity:1;transform:scale(.8)}45%{clip-path:circle(75%);opacity:1;transform:scale(1.3)}70%{clip-path:circle(75%);opacity:.85;transform:scale(1.38)}to{clip-path:circle(75%);opacity:0;transform:scale(1.45)}}.float-note,.float-heart{transform-box:fill-box;transform-origin:50%;animation:float 1.5s var(--soft) forwards}@keyframes float{0%{opacity:0;transform:translate(0)scale(.5)rotate(0)}15%{opacity:1;transform:translate(calc(var(--dx) * .2), -14px) scale(1) rotate(calc(var(--rot) * .3))}to{transform:translate(var(--dx), -76px) scale(.9) rotate(var(--rot));opacity:0}}.float-heart{animation-duration:1.3s}.reason-text{font-family:var(--display);fill:var(--ink);font-size:13px;font-weight:700}.twinkle{animation:2.4s ease-in-out infinite twinkle}@keyframes twinkle{50%{opacity:.4}}.sweep-a,.sweep-b{transform-box:view-box;animation:7s ease-in-out infinite alternate sweep}.sweep-a{transform-origin:160px 0}.sweep-b{transform-origin:320px 0;animation-delay:-3.5s}@keyframes sweep{0%{transform:rotate(-10deg)}to{transform:rotate(10deg)}}.page-turn{background:var(--paper);border-left:var(--line) solid var(--ink);animation:1.2s cubic-bezier(.65,0,.35,1) both page-turn;position:absolute;inset:0;box-shadow:-18px 0 28px #5a463638}@keyframes page-turn{0%{transform:translate(100%)}45%,55%{transform:translate(0)}to{transform:translate(-104%);box-shadow:18px 0 28px #5a463638}}.banner{text-align:center;background:var(--paper);border:var(--line) solid var(--ink);border-radius:var(--radius);width:max-content;max-width:86%;animation:banner .6s var(--soft) both;gap:4px;padding:12px 20px;display:grid;position:absolute;top:14%;left:50%;transform:translate(-50%)}.banner strong{font-family:var(--display);text-wrap:balance;font-size:26px;font-weight:700;line-height:1.1}.banner span{text-wrap:balance;font-size:17px;line-height:1.5}@keyframes banner{0%{opacity:0;transform:translate(-50%)translateY(10px)}}.tone-c{--wash:#fbf0c6;--mid:#f7df8f;--deep:#e4b546}.tone-am{--wash:#e7e4f7;--mid:#d0c9f0;--deep:#9086d2}.tone-f{--wash:#dfeed3;--mid:#c3e0af;--deep:#7aad63}.tone-g{--wash:#fde3d3;--mid:#f9c8a9;--deep:#e58c5f}.tone-dm{--wash:#e1ebf7;--mid:#bcd4ee;--deep:#5b8fc7}.tone-em{--wash:#dcf0ee;--mid:#a9dad6;--deep:#3f9a9a}.reels{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.reel{background:var(--wash,var(--paper));border:var(--line) solid var(--ink);cursor:pointer;text-align:left;transition:transform .2s var(--soft), background-color .25s ease, box-shadow .2s ease;border-radius:12px;gap:2px;padding:6px 8px 7px;display:grid}.reel:active{transform:translateY(2px)}.reel.held{box-shadow:0 0 0 2.5px var(--rose)}.reel.active{background:var(--mid);box-shadow:1.5px 2.5px 0 var(--ink);transform:translateY(-3px)}.reel.held.active{box-shadow:0 0 0 2.5px var(--rose), 1.5px 2.5px 0 2.5px var(--ink)}.reels.locked .reel{cursor:default}.reels.locked .reel:active{transform:none}.reels.locked .reel.active{transform:translateY(-3px)}.reel.fresh{animation:nudge .6s var(--soft)}@keyframes nudge{30%{transform:rotate(-2deg)translateY(-2px)}60%{transform:rotate(1.5deg)}}.reel-top{justify-content:space-between;align-items:center;gap:4px;min-height:20px;display:flex}.reel-chord{font-family:var(--display);font-size:18px;font-weight:700;line-height:1}.tired-tag{font-family:var(--display);color:var(--ink-soft);border:1.2px dashed var(--ink-soft);white-space:nowrap;border-radius:999px;padding:1px 6px 2px;font-size:12px;font-weight:700;line-height:1}.hold-tag{font-family:var(--display);color:var(--paper);background:var(--ink);border-radius:999px;padding:2px 7px 3px;font-size:13px;font-weight:700;line-height:1}.staff-wrap{animation:settle .36s var(--soft);display:block}.reel.spinning .staff-wrap{animation:none}@keyframes settle{0%{opacity:.6;transform:translateY(-5px)}}.staff{width:100%;height:34px;display:block;overflow:visible}.staff-line{stroke:var(--ink);stroke-width:.8px;opacity:.28}.staff-note{transform-box:fill-box;transform-origin:50%;transition:opacity .3s ease, transform .3s var(--soft)}.reel{--wear:0}.note-bg{fill:color-mix(in srgb, var(--deep,var(--ink)) calc(100% - var(--wear) * 75%), #c9c1b8);transition:fill .3s}.note-wipe{fill:color-mix(in srgb, var(--deep,var(--ink)) calc(100% - var(--wear) * 75%), #c9c1b8);transform-box:fill-box;transform-origin:0}.note-line{fill:none;stroke:var(--ink);stroke-width:1px}.note-halo{fill:#fff;opacity:0;transition:opacity .2s}.staff-note[data-state=next]{opacity:.45}.staff-note[data-state=next] .note-bg,.staff-note[data-state=now] .note-bg{fill:#fff}.staff-note[data-state=next] .note-wipe{transform:scaleX(0)}.staff-note[data-state=now]{animation:hop .36s var(--soft);transform:scale(1.25)translateY(-1.5px)}.staff-note[data-state=now] .note-halo{opacity:1}.staff-note[data-state=now] .note-wipe{animation:wipe var(--dur,.24s) linear both}@keyframes hop{to{transform:translateY(-5px)}}@keyframes wipe{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.staff.blur{opacity:.35}.reel-foot{justify-content:space-between;align-items:center;gap:4px;display:flex}.reel-name{color:var(--ink-soft);white-space:nowrap;font-size:13px}.reel-dots{gap:3px;display:flex}.reel-dots i{border:1.4px solid var(--ink);background:var(--deep,var(--sage));border-radius:50%;width:7px;height:7px}.reel-dots i.current{background:var(--ink);transform:scale(1.3)}.reel-dots i.locked{opacity:.45;background:0 0;border-style:dashed}.reel-dots i.new{animation:ping 1.2s var(--soft) 2}@keyframes ping{40%{background:var(--butter-deep);transform:scale(1.7)}}.forecast{min-height:30px;color:var(--on-page);border-radius:10px;flex-wrap:wrap;align-items:center;gap:2px 4px;margin:10px 0 0;padding:4px 10px;font-size:17px;line-height:1.45;transition:background-color .3s;display:flex}.forecast .hud-icon{margin-left:2px}.forecast.warn{background:var(--amber-wash);color:var(--ink)}.controls{grid-template-columns:2fr 1fr 1fr;gap:8px;margin-top:6px;display:grid}.controls button{border:var(--line) solid var(--ink);border-radius:var(--radius);cursor:pointer;transition:transform .15s var(--soft), background-color .2s ease, opacity .2s ease;align-content:center;line-height:1.2;display:grid}.controls button:active{transform:translateY(2px)}.controls button small{font-family:var(--body);font-size:15px;font-weight:400}.play{background:var(--rose);color:#fff;font-family:var(--display);padding:8px 18px 9px;font-size:28px;font-weight:700}.play small{color:#fff}.redraw,.unlock{font-family:var(--display);padding:7px 8px 8px;font-size:19px;font-weight:700}.redraw{background:var(--butter)}.unlock{background:var(--paper)}.controls button:disabled{cursor:default;opacity:.55}.controls button:disabled:active{transform:none}.now-playing{border:var(--line) solid var(--ink);border-radius:var(--radius);background:var(--paper);min-height:62px;color:var(--ink);align-items:center;gap:12px;margin-top:10px;padding:8px 16px;display:flex}.np-label{font-family:var(--display);font-size:22px;font-weight:700}.np-bars{gap:5px;display:flex}.np-bars i{border:1.4px solid var(--ink);background:0 0;border-radius:4px;width:22px;height:8px;transition:background-color .3s}.np-bars i.on{background:var(--mid,var(--rose-wash))}.np-tally{font-family:var(--display);font-variant-numeric:tabular-nums;align-items:center;gap:4px;margin-left:auto;font-size:20px;font-weight:700;display:flex}.np-tally .hud-icon{width:16px;height:16px;margin-left:6px}.np-skip{border:var(--line) solid var(--ink);background:var(--paper);color:var(--ink);font-family:var(--display);cursor:pointer;border-radius:999px;flex:none;margin-left:auto;padding:4px 12px;font-size:16px;font-weight:700}.toast{text-align:center;min-height:21px;color:var(--on-page);text-wrap:balance;margin:10px 0 0;font-size:17px;line-height:1.5}.crowd-notes{margin-top:8px}.notes-caption{color:var(--on-page);margin:0 0 6px 4px;font-size:15px}.review,.tastes{background:var(--paper);border:var(--line) solid var(--ink);border-radius:var(--radius);margin:0;padding:4px 14px;list-style:none}.review li,.tastes li{grid-template-columns:26px auto auto 1fr;align-items:center;gap:8px;padding:6px 0;font-size:17px;display:grid}.review li+li,.tastes li+li{border-top:1.5px dotted color-mix(in srgb, var(--ink) 30%, transparent)}.tastes li{grid-template-columns:26px auto 1fr}.mini{width:26px;height:30px;overflow:hidden}.who{font-family:var(--display);white-space:nowrap;font-size:17px;font-weight:700;line-height:1.1}.who small{font-family:var(--body);color:var(--ink-soft);margin-left:5px;font-size:14px;font-weight:400}.what{font-family:var(--display);background:var(--lilac);white-space:nowrap;border-radius:999px;justify-self:start;padding:2px 9px 3px;font-size:14px;font-weight:700;line-height:1.2}.r-fan .what{background:var(--rose-wash)}.r-coin .what{background:var(--butter)}.why{color:var(--ink-soft);line-height:1.45}.card{background:var(--paper);border:var(--line) solid var(--ink);border-radius:var(--radius);color:var(--ink);animation:card-in .6s var(--soft) both;gap:12px;margin-top:14px;padding:18px 20px 20px;display:grid}@keyframes card-in{0%{opacity:0;transform:translateY(12px)}}.card-title{font-family:var(--display);text-wrap:balance;margin:0;font-size:30px;font-weight:700;line-height:1.1}.card-title:focus{outline:none}.card-lead{margin:0;font-size:18px;line-height:1.55}.card-note{color:var(--ink-soft);margin:0;font-size:16px}.card-sub{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 10px;display:flex}.how-toggle{border:var(--line) solid var(--ink);background:var(--paper);color:var(--ink);font-family:var(--display);cursor:pointer;transition:background-color .2s ease, transform .15s var(--soft);border-radius:999px;align-items:center;gap:6px;padding:7px 12px 8px 16px;font-size:19px;font-weight:700;line-height:1;display:inline-flex}.how-toggle:active{transform:translateY(1px)}.how-toggle[aria-expanded=true]{background:var(--butter)}@media (hover:hover) and (pointer:fine){.how-toggle:hover{background:var(--butter)}}.how-toggle .chev{width:14px;height:14px;transition:transform .3s var(--soft)}.how-toggle[aria-expanded=true] .chev{transform:rotate(180deg)}.ear-note{color:var(--ink-soft);align-items:center;gap:5px;margin:0;font-size:15px;display:inline-flex}.ear-icon{flex:none;width:20px;height:20px}.how{animation:how-in .4s var(--soft) both;gap:8px;display:grid}.how[hidden]{display:none}@keyframes how-in{0%{opacity:0;transform:translateY(-6px)}}.how-list{max-width:62ch;margin:0;padding:2px 0;list-style:none}.how-list li{grid-template-columns:52px 1fr;align-items:center;gap:10px;padding:8px 0;font-size:17px;line-height:1.45;display:grid}.how-list li+li{border-top:1.5px dotted color-mix(in srgb, var(--ink) 30%, transparent)}.how-mark{place-items:center;display:grid}.how-mark .mini{width:30px;height:34px}.how-mark .hud-icon{width:22px;height:22px}.how-mark .perk-icon{width:26px;height:26px}.goal-note{color:var(--ink);margin:0;font-size:16px}.inapp-note{background:var(--sky);border-radius:12px;margin:0;padding:8px 12px;font-size:16px;line-height:1.45}.inapp-note a{color:var(--ink);text-underline-offset:3px;font-weight:700}.goal-note.fresh{font-family:var(--display);font-size:17px;font-weight:700}.map-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;display:flex}.map-points{align-items:center;gap:6px;margin:0;font-size:17px;display:inline-flex}.map-points b{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:26px;line-height:1}.map-points .hud-icon{width:20px;height:20px}.map-list{margin:0;padding:0;list-style:none;display:grid;position:relative}.map-list:before{content:"";border-left:1.6px dashed color-mix(in srgb, var(--ink) 40%, transparent);position:absolute;top:24px;bottom:24px;left:22px}.map-row{grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:9px 0;display:grid}.map-row+.map-row{border-top:1.5px dotted color-mix(in srgb, var(--ink) 30%, transparent)}.map-mark{background:var(--paper);place-items:center;width:46px;height:40px;display:grid;position:relative}.map-mark .mini{width:28px;height:32px}.map-mark .hud-icon{width:24px;height:24px}.map-mark .perk-icon{width:28px;height:28px;overflow:visible}.map-body{min-width:0}.map-name{font-family:var(--display);flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0;font-size:20px;font-weight:700;line-height:1.1;display:flex}.map-steps{align-items:center;display:inline-flex}.map-steps i{border:1.3px dashed var(--ink-soft);border-radius:50%;width:10px;height:10px;position:relative}.map-steps i+i{margin-left:8px}.map-steps i+i:before{content:"";border-top:1.3px solid var(--ink-soft);width:7px;position:absolute;top:3px;right:calc(100% + 1px)}.map-steps i.had{background:var(--ink);border:1.3px solid var(--ink)}.map-text{margin:3px 0 0;font-size:16px;line-height:1.4}.map-row.locked .map-mark>*,.map-row.locked .map-name{opacity:.45}.map-row.locked .map-text,.map-row.maxed .map-text{color:var(--ink-soft)}.map-train{border:var(--line) solid var(--ink);background:var(--butter);min-width:66px;color:var(--ink);font-family:var(--display);cursor:pointer;transition:transform .15s var(--soft), background-color .2s ease;border-radius:12px;justify-items:center;padding:6px 12px 7px;font-size:19px;font-weight:700;line-height:1.1;display:grid}.map-train small{font-family:var(--body);font-size:14px;font-weight:400}.map-train:disabled{background:var(--paper);color:var(--ink-soft);border-color:color-mix(in srgb, var(--ink) 40%, transparent);cursor:default}.map-train:not(:disabled):active{transform:translateY(2px)}@media (hover:hover) and (pointer:fine){.map-train:not(:disabled):hover{background:var(--butter-deep)}}.map-done{color:var(--ink-soft);white-space:nowrap;font-size:15px}.map-message{min-height:1.4em;font-family:var(--display);margin:0;font-size:17px;font-weight:700;line-height:1.4}.card-actions .map-open small{justify-content:center;align-items:center;gap:5px;display:inline-flex}.card-actions .map-open .hud-icon{width:16px;height:16px}.card-actions .map-open.ready{background:var(--butter)}.map-chords{gap:6px;display:grid}.map-chords-title{font-family:var(--display);margin:0;font-size:18px;font-weight:700}.chord-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.chord-chip{text-align:center;min-width:40px;font-family:var(--display);border:var(--line) solid var(--deep,var(--ink));background:var(--wash,var(--paper));color:var(--ink);border-radius:10px;padding:7px 7px 8px;font-size:18px;font-weight:700;line-height:1}.chord-chip.unknown{border-style:dashed;border-color:var(--ink-soft);color:var(--ink-soft);background:var(--paper)}.goal-note .hud-icon{vertical-align:-3px;width:18px;height:18px;margin-right:5px}.rain{animation:.9s linear infinite rain}@keyframes rain{to{transform:translate(-90px,300px)}}.card-note.keys{display:none}@media (hover:hover) and (pointer:fine){.card-note.keys{display:block}}.card-stats{gap:8px;margin:0;display:flex}.card-stats div{text-align:center;border:var(--line) solid var(--ink);background:var(--butter);border-radius:12px;flex:1;padding:6px 8px 4px}.card-stats dt{font-size:14px}.card-stats dd{font-family:var(--display);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-size:22px;font-weight:700}.card-actions{flex-wrap:wrap;gap:10px;display:flex}.card-actions button{border:var(--line) solid var(--ink);border-radius:var(--radius);background:var(--paper);font-family:var(--display);cursor:pointer;transition:transform .15s var(--soft), background-color .2s ease;flex:160px;align-content:center;padding:10px 16px;font-size:21px;font-weight:700;line-height:1.2;display:grid}.card-actions button:active{transform:translateY(2px)}.card-actions .primary{background:var(--rose);color:#fff;font-size:26px}.card-actions .danger{background:var(--amber-wash)}.card-actions small{font-family:var(--body);font-size:15px;font-weight:400}.card-actions .curtain,.card-actions .share{flex-basis:120px}.record-note{color:var(--ink-soft);gap:8px;font-size:15px;line-height:1.5;display:grid}.record-note p{margin:0}.text-button{color:var(--ink);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.record-detail{max-width:62ch;animation:how-in .4s var(--soft) both;gap:6px;display:grid}.record-detail[hidden]{display:none}.record-detail button{border:var(--line) solid var(--ink);background:var(--paper);color:var(--ink);font-family:var(--display);text-align:left;cursor:pointer;border-radius:12px;justify-self:start;gap:2px;margin-top:2px;padding:8px 14px;font-size:17px;font-weight:700;line-height:1.2;display:grid}.record-detail button small{font-family:var(--body);color:var(--ink-soft);font-size:14px;font-weight:400}.record-detail button:disabled{opacity:.6;cursor:default}.recovery,.share-sheet{z-index:50;padding:max(16px, env(safe-area-inset-top,0px)) max(16px, env(safe-area-inset-right,0px)) max(16px, env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px));background:color-mix(in srgb, var(--page) 82%, transparent);place-items:center;display:grid;position:fixed;inset:0}.recovery .card,.share-sheet .card{width:min(100%,440px);margin:0}.share-link{background:var(--page);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;border-radius:12px;margin:0;padding:8px 12px;font-size:15px;line-height:1.4}.help-open{border:var(--line) solid var(--ink);background:var(--paper);color:var(--ink);font-family:var(--display);cursor:pointer;border-radius:999px;flex:none;padding:5px 11px 6px;font-size:15px;font-weight:700;line-height:1}.help-sheet .card{overscroll-behavior:contain;max-height:calc(100dvh - 32px);overflow-y:auto}.help-block{gap:8px;display:grid}.help-block h3{font-family:var(--display);margin:0;font-size:21px;font-weight:700}.help-block .how-list{padding:0}.rank-note{background:var(--rose-wash);color:var(--ink);font-family:var(--display);text-align:center;animation:how-in .4s var(--soft) both;border-radius:12px;margin:0;padding:7px 12px 8px;font-size:18px;font-weight:700;line-height:1.3}.received-note{background:var(--butter);color:var(--ink);border-radius:12px;margin:0;padding:8px 12px;font-size:16px;line-height:1.45}.walk-out{animation:1.4s ease-in both walk-out}.walk-in{animation:walk-in 1.4s var(--soft) both}.walk-out.late,.walk-in.late{animation-delay:.25s}@keyframes walk-out{to{transform:translate(340px)}}@keyframes walk-in{0%{transform:translate(-340px)}}.walk-out.late{animation-name:walk-out-far}.walk-in.late{animation-name:walk-in-far}@keyframes walk-out-far{to{transform:translate(510px)}}@keyframes walk-in-far{0%{transform:translate(-510px)}}.hopping .fan-hop{animation:.3s ease-in-out infinite alternate hop}.stick{transform-box:fill-box;transform-origin:0 100%;animation:.9s ease-in-out infinite alternate sway}@keyframes sway{0%{transform:rotate(-16deg)}to{transform:rotate(16deg)}}.burst{transform-box:fill-box;transform-origin:50%;animation:burst 1.2s var(--soft) forwards}@keyframes burst{0%{opacity:1;transform:scale(.1)}70%{opacity:1}to{opacity:0;transform:scale(1.3)}}.raincloud{animation:pop .6s var(--soft) both;transform-box:fill-box;transform-origin:50% 100%}.drop{animation:.9s linear infinite drop}@keyframes drop{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(12px)}}.tail{transform-box:fill-box;transform-origin:100% 100%;animation:1.4s ease-in-out infinite alternate wag}@keyframes wag{0%{transform:rotate(-6deg)}to{transform:rotate(6deg)}}.leaf-l,.leaf-r{transform-box:fill-box;animation:2.6s ease-in-out infinite alternate leaf}.leaf-l{transform-origin:100% 100%}.leaf-r{transform-origin:0 100%;animation-direction:alternate-reverse}@keyframes leaf{0%{transform:rotate(-8deg)}to{transform:rotate(8deg)}}@media (width<=560px){.map-row{grid-template-columns:46px minmax(0,1fr)}.map-train,.map-done{grid-column:2;justify-self:start}.map-train{align-items:baseline;gap:8px;padding:5px 14px 6px;display:inline-flex}.app{padding-top:10px}.hud{grid-template-columns:1fr auto;column-gap:10px}.wordmark{font-size:clamp(22px,7vw,28px)}.stats{gap:8px}.stats dd{font-size:19px}.stage-card{margin-left:calc(-1 * max(16px, env(safe-area-inset-left,0px)));margin-right:calc(-1 * max(16px, env(safe-area-inset-right,0px)));border-left:none;border-right:none;border-radius:0}.reels{gap:6px;margin-top:10px}.reel{border-radius:10px;padding:5px 6px 6px}.reel-chord{font-size:16px}.staff{height:28px}.reel-name{display:none}.reel-foot{justify-content:center}.controls{grid-template-columns:1fr 1fr}.play{grid-column:1/-1;padding-block:7px 8px;font-size:26px}.redraw,.unlock{font-size:18px}.review li{grid-template-columns:26px auto 1fr}.review .why{grid-column:2/-1;margin-top:-4px}.now-playing{gap:8px;padding-inline:12px}.np-label{font-size:19px}.np-bars i{width:14px}.card-title{font-size:26px}.card-stats dd{font-size:19px}}@media (prefers-reduced-motion:reduce){.staff-note,.breathe,.waddle,.twinkle,.sweep-a,.sweep-b,.drift,.tuft.bob{animation:none}.listener{transition-duration:10ms}.pop,.pop-in,.banner,.staff-wrap,.card,.how,.record-detail,.rank-note,.raincloud,.rain,.bloom,.reel.fresh,.reel-dots i.new{animation:none}.how-toggle,.how-toggle .chev,.map-train{transition:none}.bloom{display:none}.walk-out,.walk-in,.hopping .fan-hop,.stick,.drop,.tail,.leaf-l,.leaf-r,.page-turn{animation:none}.page-turn{opacity:0}.blush{transition:none}}
