.spring-lab .lab-grid { grid-template-columns:250px minmax(360px,1fr) 300px; }
.spring-lab .lab-label,.spring-lab .header-divider { display:none; }
.spring-lab .lab-nav { flex-wrap:wrap; }
.spring-lab .topbar { height:auto; min-height:76px; padding-top:12px; padding-bottom:12px; }
.spring-lab h2 { font-size:16px; }
.spring-lab .microcopy,.spring-lab .secondary,.spring-lab .edit-note,.spring-lab .scene-options,.spring-lab .preset,.spring-lab .input-error { font-size:14px; }
.spring-lab .page-heading p,.spring-lab details p { font-size:16px; line-height:1.5; }
.spring-lab .control>label { max-width:none; padding:0 0 9px; }
.spring-lab .input-value { position:static; width:max-content; height:32px; }
.spring-lab .input-value input { width:88px; }
.spring-lab .input-value span { font-size:14px; }
.spring-lab .control { margin-top:20px; }
.spring-lab .controls-card { display:block; }
#spring-scene { display:block; width:100%; background:linear-gradient(#fff,#f7f8fe); }
#mass-handle { cursor:grab; touch-action:none; }
#mass-handle:active { cursor:grabbing; }
#mass-handle:focus-visible { stroke:#292b40; stroke-width:3px; outline:none; }
#mass-handle[aria-disabled=true] { cursor:default; }
.scene-note { padding:12px 20px; margin:0; font-size:14px; line-height:1.5; color:#62677c; }
.spring-lab .scene-options input { width:16px; height:16px; }
.spring-lab .transport { flex-wrap:wrap; }
.spring-lab .transport select { width:80px; }
.spring-lab .transport label,.spring-lab .step-button { font-size:14px; }
.spring-lab .primary-button { min-width:90px; font-size:14px; }
.spring-lab .metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 0; }
.spring-lab .metrics>div>span { font-size:12px; letter-spacing:0; }
.spring-lab .metrics strong { font-size:22px; }
.spring-lab .graph-card svg { display:block; width:100%; margin-top:10px; }
.energy-key { display:flex; flex-wrap:wrap; gap:8px 12px; font-size:14px; margin-top:12px; }
.kinetic-text { color:#315fd0; }.elastic-text { color:#6852db; }.dissipated-text { color:#a95a16; }.mechanical-text { color:#343b4e; }
.energy-row { margin-top:18px; font-size:14px; }
.energy-row>span { display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px; margin-bottom:7px; }
.energy-row strong { font-variant-numeric:tabular-nums; }
.energy-track { height:15px; background:#edf0f7; border-radius:4px; overflow:hidden; }
.energy-track>div { height:100%; width:0; }
.kinetic-fill { background:#315fd0; }.elastic-fill { background:#6852db; }.dissipated-fill { background:#d87c29; }
.spring-lab .formula { margin-top:18px; line-height:1.8; }
.spring-lab details { border-top:1px solid var(--line); padding-top:12px; margin-top:12px; }
.spring-lab summary { cursor:pointer; font-size:14px; line-height:1.5; font-weight:550; }
.why-card>p { font-size:16px; line-height:1.5; }
.spring-lab .challenge-card p,.spring-lab .challenge-card>button { font-size:14px; }
#challenge-feedback.success { color:#22684e; font-weight:650; }
@media(max-width:1200px) {
  .spring-lab .lab-grid { grid-template-columns:240px minmax(0,1fr); }
  .spring-lab .insights-column { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; }
}
@media(max-width:700px) {
  .spring-lab .lab-grid,.spring-lab .insights-column { display:flex; flex-direction:column; }
  .spring-lab .lab-nav a { flex:1 1 40%; font-size:14px; }
  .spring-lab .insights-column>section { width:100%; }
  .spring-lab .transport label { margin-left:auto; }
}
