.lp-toggle { width:100%; margin:8px 0; }
#resultBody.lp-sway-hidden > :not(.group) { display:none; }
.lp-toggle[aria-pressed="true"] { background:var(--accent); color:var(--accent-ink); border-color:var(--accent); }
.lp-controls label { display:block; color:var(--ink-2); font-size:12px; margin:10px 0 5px; }
.lp-controls select { width:100%; min-width:0; }
.lp-steps { display:grid; grid-template-columns:1fr 1fr; gap:5px; margin:10px 0; }
.lp-steps .btn { font-size:12px; padding:6px; white-space:normal; }
.lp-steps .btn:first-child { grid-column:1 / -1; }
.lp-steps [aria-pressed="true"] { background:var(--ok-bg); color:var(--accent); border-color:var(--accent); }
.lp-key { display:flex; flex-wrap:wrap; gap:6px 12px; font-size:11px; color:var(--ink-2); margin:10px 0; }
.lp-key span::before { content:''; display:inline-block; width:14px; height:3px; margin:0 5px 3px 0; background:var(--muted); }
.lp-key .lp-tension::before { background:var(--cable); }
.lp-key .lp-compression::before { background:var(--mech); }
.lp-key .lp-bending::before { background:var(--accent); }
.lp-key .lp-zero::before { width:7px; height:7px; margin-bottom:1px; border:1px solid var(--ink); border-radius:50%; background:var(--panel); }
.lp-moment-plot { display:block; width:100%; max-width:320px; height:auto; margin-top:8px; }
.lp-moment-plot text { fill:var(--ink-2); font:11px var(--f-mono); }
.lp-inspect { background:var(--panel-2); border:1px solid var(--line); border-radius:8px; padding:10px; margin-top:10px; overflow-wrap:anywhere; }
.lp-inspect h3 { margin:0 0 6px; font:600 14px var(--f-display); }
.lp-inspect p { margin:6px 0; }
.lp-inspect .kv { margin:8px 0; }
.lp-table { width:100%; border-collapse:collapse; font:11px var(--f-mono); margin-top:8px; }
.lp-table th,.lp-table td { padding:5px 2px; text-align:right; border-bottom:1px solid var(--line); }
.lp-table th:first-child,.lp-table td:first-child { text-align:left; }
.lp-caption { position:absolute; left:12px; top:10px; right:200px; padding:9px 11px; border:1px solid var(--line); border-radius:8px; background:var(--panel); color:var(--ink-2); font-size:12px; pointer-events:none; }
.lp-caption strong { color:var(--ink); display:block; margin-bottom:3px; font-family:var(--f-display); }
@media(max-width:720px) { .lp-caption { top:52px; right:12px; max-width:370px; font-size:11px; } }
