.specialty-exercise{padding:1.2rem;border:1px solid var(--line,#c8d2c1);border-radius:18px;background:var(--panel,#f3f5ee);color:var(--text,#f5f5ed)}
.specialty-workbench{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(220px,1fr);gap:1.2rem;align-items:start}
.specialty-workbench figure{margin:0;min-width:0}.specialty-workbench svg{display:block;width:100%;height:auto;border-radius:12px;background:#e3e9df}.specialty-workbench figcaption{font-size:.85rem;margin:.6rem 0;line-height:1.5}
.specialty-controls{display:grid;gap:1rem;min-width:0}.specialty-control label{display:flex;justify-content:space-between;gap:.6rem;font-weight:700}.specialty-control output{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.specialty-control input{width:100%;min-height:44px;accent-color:var(--lime,#c2f368)}.specialty-control p,.specialty-note{font-size:.85rem;line-height:1.55;margin:.2rem 0 .6rem}.specialty-exercise details{margin-top:1rem}.specialty-exercise summary{cursor:pointer;padding:.6rem 0;font-weight:700}.specialty-exercise ul{padding-left:1.25rem}.specialty-exercise li{padding:.3rem 0}.specialty-exercise li span{display:block;font-size:.88rem;line-height:1.5}.specialty-exercise :focus-visible{outline:3px solid var(--lime,#c2f368);outline-offset:4px}
@media(max-width:700px){.specialty-exercise{padding:.8rem}.specialty-workbench{grid-template-columns:minmax(0,1fr)}.specialty-control label{font-size:.9rem;flex-wrap:wrap}}
