.follow-friend img{max-width:none}.follow-along{position:relative;z-index:20;margin:0 0 34px;padding:22px 26px 15px;border:2px solid #fff;border-radius:28px;background:linear-gradient(115deg,#e8f7ff,#f6edff 55%,#fff3e6);box-shadow:0 8px 30px #9ba8cf20;scroll-margin-top:12px}.follow-along.is-active{position:sticky;top:max(8px,env(safe-area-inset-top));box-shadow:0 8px 30px #7d8cac35}.follow-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.follow-heading h2{font-size:1.25rem;margin:5px 0 0;letter-spacing:-.025em}.follow-heading .tiny-label{font-size:.6rem;letter-spacing:.12em}.follow-count{flex-shrink:0;padding:7px 12px;border:1px solid #ead7a1;border-radius:99px;background:#fff7dc;color:#8b681c;font-size:.78rem;font-weight:800}.follow-scene{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:20px;max-width:700px;margin:0 auto 12px}.follow-friend{position:relative;display:grid;place-items:center;align-self:center;width:110px;height:105px;border-radius:50%;background:#ffffffa6}.follow-friend img{position:relative;z-index:1;width:135px;height:90px;object-fit:contain;filter:drop-shadow(0 5px 4px #afc7db26)}body[data-buddy=kuromi] .follow-friend img,body[data-buddy=my-melody] .follow-friend img{height:108px;width:105px}.follow-note,.follow-twinkle{position:absolute;color:#bb93d6;font-size:1.6rem;right:-5px;top:-7px}.follow-twinkle{color:#e2b74d;inset:auto auto 0 0;font-size:1.4rem}.follow-bubble{position:relative;min-width:0;min-height:180px;display:flex;flex-direction:column;justify-content:center;text-align:center;border:2px solid #ffffff;border-radius:25px;background:#ffffffce;padding:12px 22px 13px;box-shadow:0 5px #c5daf13b}.follow-bubble:before{content:"";position:absolute;left:-10px;top:40%;width:17px;height:17px;background:#fff;transform:rotate(45deg);border-radius:3px}.follow-message{position:relative;display:block;min-height:1.4em;font-size:.8rem;color:#697a94;font-weight:750}.follow-symbol{position:relative;display:block;color:var(--accent);font-size:3.6rem;line-height:1.15;font-weight:850;letter-spacing:-.04em;margin:2px 0 4px;transform-origin:50% 80%}.follow-parts{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap;margin-top:3px;color:#7b829b;font-size:1.1rem;font-weight:800}.follow-part{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:3px 7px;border-radius:9px;transition:background .12s,color .12s,transform .12s}.follow-dot{font-size:.9rem;color:#b0a7bf}.follow-whole{background:#eee9f8;color:#7b689c}.follow-part.part-is-sounding{background:#ffe4a1;color:#77530c;transform:translateY(-2px);box-shadow:0 3px #edc86a}.follow-meter{height:5px;max-width:210px;margin:7px auto 0;overflow:hidden;background:#e7eaf2;border-radius:99px}.follow-meter>span{display:block;width:100%;height:100%;background:var(--accent);border-radius:inherit;transform-origin:left;transform:scaleX(0)}.follow-actions{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:4px}.follow-toggle{min-height:46px;font-size:.85rem;padding:10px 19px;border-radius:15px}.follow-restart{display:inline-flex;align-items:center;gap:5px;min-height:44px;font-size:.78rem}.follow-restart>span:first-child{font-size:1.3rem}.follow-along audio{display:block;width:100%;height:36px;margin:14px 0 0;color-scheme:light}.follow-along[data-phase=listen] .follow-symbol{animation:sound-pop .28s ease-out both}.follow-along[data-phase=listen] .follow-friend img{animation:friend-sway .9s ease-in-out infinite alternate}.follow-along[data-phase=listen] .follow-note{animation:note-float 1.2s ease-in-out infinite}.follow-along[data-phase=repeat] .follow-message{color:#af648d}.follow-along[data-phase=repeat] .follow-meter>span{background:#dca0c3}.follow-along[data-phase=repeat] .follow-twinkle{animation:gentle-star 1.5s ease-in-out infinite}.follow-along[data-phase=paused] .follow-symbol{color:#8a91a8}.follow-along[data-phase=done] .follow-message{color:#8a6b1d}.follow-along[data-phase=done] .follow-bubble{background:#fff7dc;border-color:#f5d47f}.letter.is-followed,.exercise.is-followed{position:relative;z-index:1;outline:3px solid #efbf48;outline-offset:4px;background:linear-gradient(140deg,#fff9dc,#fff0bb);box-shadow:0 5px #d7ae49,0 0 0 8px #fff0bf70;transition:background .18s,box-shadow .18s,outline-color .18s}.letter.is-followed:after,.exercise.is-followed:after{content:"\2605";position:absolute;top:-17px;right:-8px;width:29px;height:29px;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;background:#ffdb73;color:#91670b;font-size:1rem;line-height:1;box-shadow:0 3px 8px #bf9b3d25;pointer-events:none}.letter.is-sounding,.exercise.is-sounding{outline-color:#d89c1b;animation:tile-pop .3s ease-out both}.letter.is-sounding:after,.exercise.is-sounding:after{animation:gentle-star 1.1s ease-in-out infinite}.exercise .sound-part{border-radius:5px;transition:background .1s,color .1s}.exercise .sound-part.part-is-sounding{background:#f8d86f;color:#674508;box-shadow:0 0 0 3px #f8d86f}.exercise.is-whole-sound .word{color:#9c6811;text-shadow:0 2px #fff6ce}.is-followed .heard-mark{opacity:.45}@keyframes sound-pop{0%{transform:scale(.91)}65%{transform:scale(1.07)}to{transform:scale(1)}}@keyframes tile-pop{0%{transform:translateY(0) scale(1)}55%{transform:translateY(-3px) scale(1.035)}to{transform:translateY(0) scale(1)}}@keyframes friend-sway{0%{transform:rotate(-4deg) translateY(0)}to{transform:rotate(4deg) translateY(-3px)}}@keyframes note-float{0%,to{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-6px) rotate(6deg)}}@keyframes gentle-star{0%,to{transform:scale(1) rotate(-7deg)}50%{transform:scale(1.12) rotate(8deg)}}@media(max-width:650px){.follow-along{padding:15px 14px 11px;border-radius:23px;margin-bottom:27px}.follow-heading{margin-bottom:10px}.follow-heading h2{font-size:1.04rem}.follow-heading .tiny-label{font-size:.5rem;letter-spacing:.09em}.follow-count{font-size:.68rem;padding:6px 9px}.follow-scene{grid-template-columns:66px 1fr;gap:12px;margin-bottom:10px}.follow-friend{width:66px;height:72px}.follow-friend img{width:88px;height:67px}body[data-buddy=kuromi] .follow-friend img,body[data-buddy=my-melody] .follow-friend img{width:70px;height:79px}.follow-note{font-size:1.2rem;right:-4px;top:-7px}.follow-twinkle{font-size:1rem;left:-3px;bottom:-3px}.follow-bubble{min-height:140px;padding:9px 8px 10px;border-radius:19px}.follow-symbol{font-size:2.9rem;margin-bottom:2px}.follow-message{font-size:.68rem;line-height:1.35}.follow-parts{font-size:.91rem;gap:3px}.follow-part{padding:2px 5px;min-width:24px;border-radius:7px}.follow-meter{margin-top:5px;height:4px;max-width:145px}.follow-actions{gap:7px}.follow-toggle{font-size:.75rem;padding:9px 12px;gap:7px;min-height:44px}.follow-restart{font-size:.7rem;padding-inline:7px}.follow-along audio{margin-top:11px;height:34px}.letter.is-followed,.exercise.is-followed{outline-offset:2px;outline-width:2px;box-shadow:0 4px #d7ae49,0 0 0 5px #fff0bf70}.letter.is-followed:after,.exercise.is-followed:after{width:24px;height:24px;top:-13px;right:-6px;font-size:.84rem}}@media(max-height:650px){.follow-along.is-active{padding-top:10px}.follow-along.is-active .follow-heading{display:none}.follow-along.is-active .follow-bubble{min-height:152px}.follow-along.is-active .follow-symbol{font-size:2.2rem}.follow-along.is-active .follow-scene{margin-bottom:6px}.follow-along.is-active .follow-friend{height:60px}.follow-along.is-active audio{margin-top:7px}}@media(prefers-reduced-motion:reduce){.follow-along *,.letter.is-followed,.exercise.is-followed,.letter.is-followed:after,.exercise.is-followed:after{animation:none!important;transition:none!important}}@media(max-height:500px){.follow-along.is-active .follow-parts{display:none!important}.follow-along.is-active .follow-bubble{min-height:76px;padding-block:5px}.follow-along.is-active .follow-symbol{font-size:2rem}.follow-along.is-active .follow-heading{display:none}.follow-along.is-active .follow-friend img{max-height:65px}}@media(max-height:500px)and (min-width:600px){.follow-along.is-active{display:grid;grid-template-columns:minmax(0,1fr) 200px;column-gap:16px;padding-block:10px}.follow-along.is-active .follow-scene{grid-column:1;grid-row:1;grid-template-columns:60px minmax(0,1fr);gap:14px;width:100%;margin:0}.follow-along.is-active .follow-friend{width:60px;height:60px}.follow-along.is-active .follow-friend img{width:80px;height:60px}.follow-along.is-active .follow-bubble{padding-inline:10px}.follow-along.is-active .follow-actions{grid-column:2;grid-row:1;align-self:center;margin:0;gap:6px}.follow-along.is-active .follow-restart{width:44px;flex-shrink:0;padding:0;justify-content:center}.follow-along.is-active .follow-restart [data-i18n]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.follow-along.is-active .follow-toggle{font-size:.8rem;padding-inline:12px;gap:7px}.follow-along.is-active .follow-toggle .icon{width:20px;height:20px}.follow-along.is-active audio{grid-column:1/-1;margin-top:8px;height:34px}}@media(max-height:500px)and (min-width:600px){.follow-along.is-active .follow-message{font-size:.68rem;line-height:1.35}.follow-along.is-active .follow-symbol{margin:0;line-height:1.1}.follow-along.is-active .follow-meter{height:4px;margin-top:5px}}.pause-controls{display:flex;align-items:center;justify-content:center;gap:5px;width:max-content;max-width:100%;margin:10px auto 0;padding:3px 8px;border:1px solid #fff;border-radius:16px;background:#ffffffa8;color:#68768d}.pause-controls label{font-size:.75rem;font-weight:800;margin-right:4px}.pause-controls button{display:grid;place-items:center;width:44px;min-width:44px;height:44px;border:0;border-radius:12px;background:#eee7fa;color:#785b9b;font-family:inherit;font-size:1.35rem;font-weight:800;line-height:1;cursor:pointer}.pause-controls button:hover:not(:disabled){background:#e3d7f6}.pause-controls button:disabled{opacity:.35;cursor:default}.pause-controls select{appearance:none;width:88px;height:44px;min-height:44px;padding:6px 20px 6px 8px;border:1px solid #e0d5ef;border-radius:10px;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,#8c70b2 50%),linear-gradient(135deg,#8c70b2 50%,transparent 50%);background-position:calc(100% - 12px) 19px,calc(100% - 7px) 19px;background-size:5px 5px;background-repeat:no-repeat;color:#705889;font-family:inherit;font-size:.8rem;font-weight:750;cursor:pointer}.pause-controls :focus-visible{outline:3px solid #9c75ca;outline-offset:2px}.pause-hint{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(min-width:900px)and (min-height:501px){.follow-actions{padding-right:290px;min-height:52px}.pause-controls{position:absolute;right:26px;bottom:65px;margin:0}.follow-along audio{margin-top:10px}}@media(max-width:650px){.pause-controls{margin-top:8px;padding:0 5px;gap:3px}.pause-controls label{font-size:.7rem}.pause-controls select{width:78px}.follow-along audio{margin-top:8px}}@media(max-height:500px)and (min-width:600px){.follow-along.is-active{grid-template-columns:minmax(0,1fr) 230px}.follow-along.is-active .pause-controls{position:static;grid-column:2;grid-row:2;justify-self:center;margin:5px 0 0;padding:0 3px;gap:0}.follow-along.is-active .pause-controls label{font-size:.65rem;margin-right:3px}.follow-along.is-active .pause-controls select{width:75px}.follow-along.is-active audio{grid-column:1;grid-row:2;align-self:center;margin-top:5px}}
