.rhythm-studio{margin-top:20px;background:linear-gradient(130deg,#fffcf1,#edf2e3);border-color:#d5dfc6}.studio-heading{display:flex;justify-content:space-between;gap:15px}.studio-heading h2{font-size:1.7rem;letter-spacing:-.04em;margin:8px 0}.studio-heading p{max-width:510px;color:#62765d}.studio-eyebrow{font-size:.68rem;letter-spacing:.14em;font-weight:800;color:#648059}.studio-symbol{font-size:5rem;line-height:1.2;color:#aaba8b;transform:rotate(9deg)}.rhythm-options{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rhythm-options select{background:#fffef9;border:1px solid #cbd7bd;color:#37533e;border-radius:8px;padding:9px;font:inherit}.rhythm-track{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin:25px 0}.rhythm-track span{display:grid;place-items:center;aspect-ratio:1;border:2px solid #d7e0ca;border-radius:50%;background:#fffdf6;color:#8b9b7d;font-weight:800;transition:transform .15s,background .15s}.rhythm-track .beat-now{transform:scale(1.12);border-color:#bd923f;box-shadow:0 0 0 5px #e2c78b44}.rhythm-track .beat-hit{background:#587b48;color:white;border-color:#587b48}.rhythm-track .beat-missed{background:#f1e2d6;border-color:#d7b9a2;color:#8b6952}.rhythm-report{display:flex;gap:20px;align-items:center;border-radius:15px;background:#fffdf6;padding:18px}.rhythm-report>strong{font-size:2.8rem;color:#4c6f41}.rhythm-report small{font-size:.85rem;color:#7f9171}.rhythm-report p{font-size:.85rem;margin-bottom:0}.path-stars{display:block;color:#b48a35;font-size:.82rem;letter-spacing:3px;margin-top:5px}.lesson.path-current{background:#f0f5e5;border-color:#8fab73;border-left-width:5px}.lesson.path-current button{background:#547b46;color:#fff}.lesson.path-complete{background:#fbfcf5}.lesson{transition:background .2s,box-shadow .2s}.lesson:focus-within{box-shadow:0 0 0 3px #d9e4c9}.key.white{min-width:0;flex-basis:0}.key b{max-width:100%;white-space:nowrap}.key.black{padding-left:0;padding-right:0}@media(max-width:520px){.rhythm-track{gap:4px}.rhythm-track span{font-size:.8rem}.studio-symbol{display:none}.rhythm-report{gap:12px}.rhythm-report>strong{font-size:2rem}}
