.lab-stages{display:grid;grid-template-columns:repeat(4,minmax(44px,1fr));gap:7px;justify-content:center}.lab-stages .pill{min-width:42px;min-height:44px;padding:8px 12px;position:relative}.lab-stages .selected{background:#20354d;color:white;border-color:#20354d}.lab-stages [data-stars="3"]:after,.lab-stages [data-stars="2"]:after{content:'●';position:absolute;bottom:1px;left:0;right:0;text-align:center;font-size:7px;color:#edb650}.lab-tools{justify-content:center}.lab-tools .pill{min-height:44px}.lab-hint,.lab-live,.lab-principle{max-width:700px;margin:8px auto;line-height:1.6;font-size:14px}.lab-live{color:#20354d;text-align:center}.lab-hint{padding:12px 16px;background:#e3f3f1;border-left:4px solid #148b99;border-radius:6px;color:#20354d}.lab-principle{color:#526a80}.lab-principle summary{cursor:pointer;padding:8px 0}.lab-principle p{margin:5px 0 10px}body[data-library="physics"] #game-canvas,body[data-library="chemistry"] #game-canvas{touch-action:none;cursor:grab}body[data-library="physics"] #game-canvas:active,body[data-library="chemistry"] #game-canvas:active{cursor:grabbing}@media(max-width:500px){.lab-stages{gap:4px}.lab-stages .pill{min-width:44px;padding:8px 9px}.lab-hint,.lab-live,.lab-principle{font-size:13px}.lab-tools{gap:6px}}
@media(max-width:900px){.lab-hint,.lab-live,.lab-principle{grid-column:1/-1;width:100%}}
@media(orientation:landscape) and (max-height:500px){body[data-library="physics"] .stage-wrap,body[data-library="chemistry"] .stage-wrap{width:min(100%,calc((100dvh - 65px)*1.538));margin-inline:auto}}
