.collision-lab .lab-grid { grid-template-columns:250px minmax(360px,1fr) 310px; }
.collision-lab .microcopy,.collision-lab .secondary,.collision-lab .edit-note,.collision-lab .scene-options,.collision-lab .preset,.collision-lab .input-error { font-size:14px; }
.collision-lab .page-heading p { font-size:16px; }
.collision-lab h2 { font-size:16px; }
.collision-lab fieldset { border:0; padding:0; margin:24px 0; min-width:0; }
.collision-lab legend { font-weight:650; font-size:16px; }
.cart-one { color:#315fd0; }.cart-two { color:#9c4184; }
.collision-lab .control { margin-top:17px; }
.collision-lab .control>label { max-width:50%; }
.collision-lab .input-value input { width:58px; }
.collision-lab select { height:auto; margin-top:8px; }
#collision-scene { width:100%; display:block; background:linear-gradient(#fff,#f7f8fe); }
.vector-key,.scene-note { padding:0 20px 16px; font-size:14px; color:#62677c; line-height:1.5; margin:0; }
.scene-note { padding-top:14px; }
.collision-lab .scene-options,.collision-lab .transport { flex-wrap:wrap; }
.collision-lab .scene-options input { width:16px; height:16px; }
.collision-lab .transport select { width:74px; margin:0; }
.collision-lab .transport label { font-size:14px; }
.collision-lab .primary-button { min-width:90px; font-size:14px; }
.collision-lab .step-button { font-size:14px; }
.collision-lab .metrics { grid-template-columns:repeat(3,minmax(0,1fr)); }
.collision-lab .metrics>div>span { font-size:12px; letter-spacing:0; }
.collision-lab .metrics strong { font-size:20px; }
.collision-graphs { display:grid; grid-template-columns:1fr 1fr; margin-top:15px; }
.collision-graphs svg { width:100%; min-width:0; }
#prediction-controls { margin:0 20px 16px; padding:14px; background:#f4f1fc; border-radius:8px; font-size:14px; }
.prediction-inputs { display:flex; gap:12px; }.prediction-inputs label { flex:1; min-width:0; }
.prediction-inputs input { width:100%; margin-top:7px; padding:8px; border:1px solid #bbb3ce; border-radius:5px; }
.energy-row { margin-top:18px; font-size:14px; }.energy-row>span { display:block; margin-bottom:6px; }
.energy-bar { display:flex; height:18px; background:#edf0f7; border-radius:4px; overflow:hidden; }
.energy-bar .kinetic { background:#315fd0; }.energy-bar .dissipated { background:#d87c29; }
.energy-key { display:flex; flex-wrap:wrap; gap:10px; font-size:14px; }.energy-key span:first-child { color:#315fd0; }.energy-key span:last-child { color:#a95a16; }
.table-scroll { overflow-x:auto; }table { width:100%; border-collapse:collapse; font-size:14px; margin-top:20px; font-variant-numeric:tabular-nums; }
caption { text-align:left; color:#62677c; margin-bottom:10px; }th,td { text-align:right; padding:10px 4px; border-bottom:1px solid var(--line); }th:first-child { text-align:left; }
#impulses { font-size:14px; }#impulses>div { display:flex; justify-content:space-between; gap:8px; margin-top:12px; }#impulses dd { margin:0; text-align:right; font-weight:600; }
.collision-lab details { margin-top:14px; font-size:14px; line-height:1.6; overflow-wrap:anywhere; }.collision-lab summary { cursor:pointer; }.collision-lab details p,.collision-lab .challenge-card p { font-size:14px; }.collision-lab ul { padding-left:20px; }.collision-lab li { margin-top:8px; }.collision-lab .formula { margin-top:16px; line-height:1.9; font-size:16px; }
@media(max-width:1250px) { .collision-lab .lab-grid { grid-template-columns:240px minmax(0,1fr); }.collision-lab .insights-column { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }.collision-lab .lab-label,.collision-lab .header-divider { display:none; } }
@media(max-width:800px) { .collision-lab .lab-grid { display:flex; }.collision-lab .controls-card { display:block; }.collision-lab .insights-column { display:flex; }.collision-lab .lab-grid,.collision-lab .insights-column { flex-direction:column; }.collision-lab .experiment-column,.collision-lab .controls-card,.collision-lab .insights-column { width:100%; }.collision-lab .experiment-column { order:0; }.collision-lab .controls-card { order:1; }.collision-lab .insights-column { order:2; }.collision-lab .topbar { height:auto; flex-wrap:wrap; padding:16px; gap:12px; }.collision-lab .lab-nav { margin:0; width:100%; } }
@media(max-width:500px) { .collision-graphs { grid-template-columns:1fr; }.collision-lab .scene-heading { flex-wrap:wrap; }.collision-lab .metrics strong { font-size:17px; }.collision-lab .metrics>div>span { font-size:12px; } }

#friction { width:100%; margin-top:8px; padding:8px; border:1px solid #bbb3ce; border-radius:5px; background:white; }
