.lab{padding-top:50px;padding-bottom:80px}.lab h1{font-size:clamp(28px,4vw,45px);margin:10px 0}.lab .intro{color:var(--sub);max-width:880px}.lab-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.9fr);gap:22px;margin-top:28px}.lab-panel,.explain section{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:19px}.lab-head{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;color:var(--accent);font-size:12px;font-weight:700}.lab-head #gl-status{color:var(--sub)}#viewport{display:block;width:100%;aspect-ratio:1.5;background:#091321;border-radius:10px;margin:12px 0;touch-action:none}.controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.controls label{font-size:14px}.controls input[type=checkbox]{accent-color:var(--accent);vertical-align:middle}.controls .range{display:flex;flex-direction:column}.controls input[type=range]{width:100%;accent-color:var(--accent)}.controls output{color:var(--gold)}.controls button{background:#203650;color:var(--text);border:1px solid var(--line);border-radius:8px;padding:8px;cursor:pointer}.hint{font-size:13px;color:var(--sub)}.explain{display:grid;gap:14px}.explain section h2{font-size:20px;margin:4px 0}.explain section p{color:var(--sub);margin:7px 0;font-size:15px}.explain section.notice{border-color:#6d5839}.lab-footer{margin-top:30px}@media(max-width:850px){.lab-grid{grid-template-columns:1fr}}@media(max-width:440px){.controls{grid-template-columns:1fr}}