.page-content:has(#latchWorkbench) {padding:8px 0;} .page-content:has(#latchWorkbench)>.wrapper {width:calc(100% - 32px);max-width:1680px;} .post-content:has(#latchWorkbench) {max-width:none;}
#latchWorkbench { height:var(--tool-height,75svh); min-height:0; display:flex; flex-direction:column; font-size:13px; color:var(--fg); background:var(--bg); }
#latchWorkbench * { box-sizing:border-box; }
#latchWorkbench [hidden] { display:none!important; }
#latchWorkbench h1,#latchWorkbench h2,#latchWorkbench h3,#latchWorkbench p { margin:0; }
#latchWorkbench h1 {font-size:17px;} #latchWorkbench h2,#latchWorkbench h3 {font-size:14px;}
#latchWorkbench .subtitle {display:block;font-size:11px;color:var(--muted);}
#latchWorkbench button,#latchWorkbench select,#latchWorkbench input[type=number] {font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--border);border-radius:4px;min-width:0;}
#latchWorkbench button {display:inline-flex;align-items:center;justify-content:center;height:34px;min-width:34px;padding:5px;cursor:pointer;}
#latchWorkbench button img,#latchWorkbench summary img {width:18px;height:18px;} [data-theme=dark] #latchWorkbench button img,[data-theme=dark] #latchWorkbench summary img {filter:invert(1);}
#latchWorkbench button.active,#latchWorkbench .part-row.active,#latchWorkbench .part-row.hovered {background:var(--bg);box-shadow:inset 2px 0 var(--fg);}
#latchWorkbench button:disabled {opacity:.45;cursor:default;}
#latchWorkbench select {padding:5px;max-width:180px;min-height:34px;}
#latchWorkbench :focus-visible {outline:2px solid currentColor;outline-offset:2px;}
#latchWorkbench main {min-height:0;display:grid;grid-template-columns:300px minmax(0,1fr);flex:1;}
#latchWorkbench .cad-control-region {min-height:0;min-width:0;border-right:1px solid var(--border);}
#latchWorkbench aside {overflow:auto;min-height:0;padding:10px;}
#latchWorkbench .cad-description {margin:4px 0 8px;color:var(--muted);font-size:12px;line-height:1.4;}
#latchWorkbench .workspace {min-height:0;min-width:0;display:flex;flex-direction:column;}
#latchWorkbench .latch-actions {position:absolute;right:8px;top:8px;display:flex;align-items:center;gap:5px;z-index:6;}
#latchWorkbench .latch-view-toolbar {position:absolute;left:8px;bottom:8px;z-index:3;}
#latchWorkbench .segmented {display:flex;gap:3px;flex:none;}
#latchWorkbench .latch-downloads {position:relative;padding:0;border:0;}
#latchWorkbench .latch-downloads>summary {display:flex;align-items:center;gap:5px;list-style:none;height:34px;padding:5px 7px;border:1px solid var(--border);border-radius:4px;background:var(--card);font-weight:400;font-size:12px;}
#latchWorkbench .latch-downloads>summary::-webkit-details-marker {display:none;}
#latchWorkbench .latch-downloads>summary img:last-child {width:14px;}
#latchWorkbench #latch-download-panel {position:absolute;right:0;top:calc(100% + 6px);width:238px;max-width:calc(100vw - 60px);display:grid;gap:7px;padding:10px;background:var(--card);border:1px solid var(--border);border-radius:4px;box-shadow:0 4px 15px #0002;}
#latchWorkbench #latch-download-panel label {font-size:11px;color:var(--muted);}
#latchWorkbench #latch-export {width:100%;max-width:none;font-size:12px;}
#latchWorkbench .latch-formats {display:flex;gap:6px;}
#latchWorkbench .latch-formats button {flex:1;gap:6px;}
#latch-viewport {position:relative;flex:1;min-height:0;overflow:hidden;background:var(--card);}
#latch-viewport canvas {display:block;width:100%;height:100%;touch-action:none;}
#latchWorkbench .latch-motion {display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:center;gap:5px;padding:6px 0;font-size:11px;}
#latchWorkbench .latch-motion:has(button) {grid-template-columns:minmax(0,1fr) 48px 34px;}
#latchWorkbench .latch-motion input {grid-row:2;grid-column:1/-1;width:100%;min-width:0;}
#latchWorkbench .latch-motion output {grid-row:1;grid-column:2;justify-self:end;}
#latchWorkbench .latch-motion button {grid-row:1;grid-column:3;}
#latchWorkbench .latch-status {display:flex;justify-content:space-between;gap:8px;padding:4px 8px;font-size:10px;flex:none;}
#latchWorkbench .metrics {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px 0;font-size:10px;gap:8px;}
#latchWorkbench .metric span {display:block;color:var(--muted);} #latchWorkbench .metric strong {font-size:13px;}
#latchWorkbench .aside-heading {display:flex;align-items:center;justify-content:space-between;gap:6px;}
#latchWorkbench details {padding:5px 0;border-top:1px solid var(--border);} #latchWorkbench summary {font-size:12px;font-weight:600;cursor:pointer;}
#latchWorkbench .cad-options {margin-top:0;padding:4px 0;}
#latchWorkbench .checkbox-line {display:flex;align-items:center;gap:7px;min-height:32px;font-size:12px;}
#latchWorkbench .checkbox-line input {margin:0;}
#latchWorkbench .param {margin:4px 0;} #latchWorkbench .param label {display:flex;justify-content:space-between;font-size:11px;gap:5px;}
#latchWorkbench .param-row {display:flex;gap:8px;align-items:center;} #latchWorkbench .param input[type=range] {width:100%;min-width:0;}
#latchWorkbench .param input[type=number] {width:70px;flex:none;padding:4px;text-align:right;}
#latchWorkbench .handle-select {display:flex;justify-content:space-between;align-items:center;gap:5px;font-size:11px;margin:6px 0;}
#latchWorkbench .part-row {width:100%;height:auto;min-height:30px;justify-content:flex-start;text-align:left;border:0;background:transparent;gap:6px;font-size:12px;}
#latchWorkbench .part-row.child {padding-left:20px;font-size:11px;} #latchWorkbench .part-row.subchild {padding-left:34px;}
#latchWorkbench .swatch {display:inline-block;width:9px;height:9px;flex:none;} #latchWorkbench .part-name {overflow-wrap:anywhere;}
#latchWorkbench .selection-info {padding:6px 0;font-size:11px;} #latchWorkbench .selection-info p {margin-top:4px;}
#latchWorkbench .latch-safety,#latchWorkbench .latch-credits {font-size:11px;line-height:1.5;margin-top:8px;color:var(--muted);}
#latchWorkbench .latch-credits a {display:inline-block;}
#latchWorkbench #parameter-status {font-size:11px;margin:2px 0;} #latchWorkbench .failed {color:#c9534a;}
#latchWorkbench #latch-loading,#latchWorkbench #latch-error {position:absolute;z-index:4;left:10px;max-width:calc(100% - 20px);padding:8px;background:var(--bg);font-size:12px;}
#latchWorkbench #latch-loading {top:54px;} #latchWorkbench #latch-error {bottom:54px;color:#c9534a;}
#latchWorkbench #annotations,#latchWorkbench #leaders,#latchWorkbench #names {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
#latchWorkbench .model-name {position:absolute;pointer-events:auto;height:auto;min-height:24px;max-width:min(230px,calc(100% - 16px));padding:3px 5px;gap:4px;font-size:11px;text-align:left;}
#latchWorkbench .model-name span:last-child {min-width:0;overflow-wrap:anywhere;}
#latchWorkbench .latch-status span {min-width:0;overflow-wrap:anywhere;}
#latchWorkbench dialog {max-width:calc(100vw - 32px);padding:12px;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:4px;}
#latchWorkbench dialog input {width:100%;margin-bottom:8px;color:var(--fg);background:var(--card);border:1px solid var(--border);}
#latchWorkbench #leaders line {stroke-width:1;opacity:.7;}
#latchWorkbench #coordinate-indicator {position:absolute;right:5px;bottom:5px;width:90px;height:84px;pointer-events:none;background:var(--bg);}
#latchWorkbench #coordinate-indicator line {stroke-width:2.5;} #latchWorkbench #coordinate-indicator text {font:600 12px Arial;text-anchor:middle;dominant-baseline:middle;stroke:none;}
#latchWorkbench #axis-x {stroke:#c34d44;fill:#c34d44;} #latchWorkbench #axis-y {stroke:#389066;fill:#389066;} #latchWorkbench #axis-z {stroke:#4778cb;fill:#4778cb;}
#latchWorkbench .axis-origin,#latchWorkbench #coordinate-indicator circle {fill:var(--fg);font-size:10px;}
@media(max-width:700px) {
  #latchWorkbench main {grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) min(var(--cad-content-height,320px),max(42%,calc(100% - 150px)));}
  #latchWorkbench .workspace {grid-row:1;}
  #latchWorkbench .cad-control-region {grid-row:2;border-right:0;border-top:1px solid var(--border);}
  #latchWorkbench main:has(.cad-control-region.has-expanded) {grid-template-rows:minmax(0,1fr) minmax(0,58%);}
  #latchWorkbench .latch-actions {gap:4px;}
  #latchWorkbench .model-name {font-size:10px;}
  #latchWorkbench #coordinate-indicator {width:66px;height:62px;}
}
@media(max-height:550px) {
  #latchWorkbench aside {padding:10px;}
  #latchWorkbench .model-name {font-size:10px;}
  #latchWorkbench #coordinate-indicator {width:60px;height:56px;}
}
@media(max-height:550px) and (min-width:701px) {#latchWorkbench main {grid-template-columns:240px minmax(0,1fr);}}
