:root{color:#e8eef0;font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#111a20;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit;background:#24343f;border:1px solid #3a4d58;border-radius:7px;padding:9px 13px;transition:background .15s,border-color .15s}button:hover:not(:disabled){background:#344953;border-color:#9db1b9}button:focus-visible,.filebar .github-link:focus-visible,.help-about a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:2px solid #ffc27a}button:disabled{opacity:.38;cursor:default}button.primary{color:#222a2e;background:#f2b46a;border-color:#f2b46a;font-weight:700}button.primary:hover:not(:disabled){background:#ffcb8d}.workshop{flex-direction:column;height:100dvh;min-height:570px;display:flex;overflow:hidden}.workshop-header{background:#17232b;border-bottom:1px solid #31434e;flex:none;justify-content:space-between;align-items:center;gap:16px;height:74px;padding:0 24px;display:flex}.workshop-header button:not(.tools-list *),.workshop-header .tools-menu>summary,.workshop-header .github-link{border-radius:7px;justify-content:center;align-items:center;gap:7px;min-width:36px;height:36px;padding:0 12px;font-size:14px;line-height:1;display:inline-flex}.workshop-header button.icon-only{width:36px;padding:0}.workshop-header .icon{flex:none}.workshop-header .key-badge{margin-left:0}.header-group{align-items:center;gap:4px;display:flex}.brand{flex-wrap:wrap;align-items:center;gap:11px;display:flex}.brand-mark{color:#17232b;background:#f2b46a;border-radius:8px;place-items:center;width:34px;height:34px;font-size:23px;font-weight:900;display:grid;transform:rotate(-4deg)}.brand-name{letter-spacing:.19em;font-size:14px;font-weight:800}.modebar,.filebar{align-items:center;gap:16px;display:flex}.mode-switch{border-radius:8px;display:inline-flex;overflow:hidden}.workshop-header .mode-switch button{border-radius:0;margin:0;font-weight:700}.mode-switch button[aria-pressed=true]{color:#17232b;opacity:1;background:#f2b46a;border-color:#ffcb8d;font-weight:700}.modebar button.reserved{visibility:hidden}.tools-menu{position:relative}.tools-menu>summary{cursor:pointer;color:inherit;text-align:center;-webkit-user-select:none;user-select:none;background:#24343f;border:1px solid #3a4d58;list-style:none;transition:background .15s,border-color .15s}.tools-menu>summary:hover{background:#344953;border-color:#9db1b9}.tools-menu>summary::-webkit-details-marker{display:none}.tools-menu[open]>summary{color:#f2b46a;border-color:#f2b46a}.tools-list{z-index:30;background:#172a32;border:1px solid #627b77;border-radius:8px;flex-direction:column;gap:4px;min-width:190px;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #0009}.tools-list button{text-align:left;width:100%}.tools-list button[hidden]{display:none}.filebar button{background:0 0;border-color:#0000}.workshop-body{flex:1;grid-template-columns:255px minmax(300px,1fr) 278px;min-height:0;display:grid}.parts-panel,.inspector{background:#17232b;padding:24px 20px;overflow-y:auto}.parts-panel{border-right:1px solid #31434e}.inspector{border-left:1px solid #31434e;padding:24px 18px}.eyebrow{letter-spacing:.17em;color:#9cb0ba;margin-bottom:14px;font-size:10px;font-weight:700}h1{letter-spacing:-.04em;max-width:200px;margin:0 0 13px;font-size:26px;font-weight:650;line-height:1.17}h2{letter-spacing:-.025em;margin:0 0 12px;font-size:20px}h3{letter-spacing:.04em;margin:20px 0 8px;font-size:12px;font-weight:650}.intro,.muted{color:#9aafb9;font-size:13px;line-height:1.65}.intro{margin:0 0 23px}.small{font-size:12px}.palette{flex-direction:column;gap:9px;display:flex}.part-card{text-align:left;background:#20303a;border-color:#3b4d56;align-items:center;gap:12px;width:100%;padding:12px;font-size:13px;display:flex}.part-symbol{color:#ccdae0;background:#344650;border-radius:6px;place-items:center;width:31px;height:31px;font-size:24px;display:grid}.part-symbol.powerCell{color:#ffd190;background:#554935}.part-symbol.poweredMotor{color:#aad6de;background:#324a54}.part-symbol.gripWheel{color:#a9c8ba;background:#293e37}.add-symbol{color:#9bb0bc;margin-left:auto;font-size:20px}.more-parts{margin:14px 0 27px}.more-parts summary,.part-settings summary{cursor:pointer;color:#bccbd2;padding:10px 0;font-size:12px}.more-part{text-align:left;background:0 0;width:100%;margin:6px 0;font-size:12px;display:block}.section-label{letter-spacing:.14em;color:#8fa5b0;margin:0 0 10px;font-size:10px}.part-list{flex-direction:column;gap:4px;display:flex}.part-list-item{text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border-color:#0000;padding:9px 10px;font-size:12px;overflow:hidden}.part-list-item.selected{color:#ffd49d;background:#3b3930;border-color:#8d795b}.viewport{min-width:0;position:relative;overflow:hidden}.stage{position:absolute;inset:0}.stage canvas{touch-action:none;width:100%;height:100%;display:block}.live-dot{background:#a5cbb6;border-radius:50%;width:6px;height:6px;box-shadow:0 0 10px #a5cbb644}.canvas-hint{color:#b4ccc4;font-size:13px}.empty-hint{text-align:center;pointer-events:none;width:80%;max-width:320px;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.empty-hint[hidden]{display:none}.empty-glyph{color:#f2b46a;border:1px dashed #637d8a;border-radius:12px;width:52px;height:52px;margin:0 auto 18px;font-size:28px;line-height:47px}.empty-hint h2{color:#d4e0e6;font-size:20px}.empty-hint p{color:#95acb7;font-size:13px}.empty-hint button{pointer-events:auto;margin-top:10px}.first-run-actions{flex-wrap:wrap;gap:10px;margin:14px 0;display:flex}.first-run-actions button{flex:160px;min-height:44px}.part-kind{color:#91a8b3;margin-top:-6px;font-size:11px}.part-live{color:#bdd0d8;background:#102028;border:1px solid #304650;border-radius:8px;margin:18px 0;padding:13px;font-size:12px;line-height:1.8}.part-live strong{color:#f2c181;font-size:17px;font-weight:650}.diagnosis{color:#afc7bd;margin-top:8px}.part-live:has(.shaft-speed) .diagnosis{min-height:2.9em;min-height:2lh}.port-list{flex-direction:column;gap:6px;display:flex}.port-button{text-align:left;border-left-width:3px;padding:8px 10px;font-size:11px}.port-button.power{border-left-color:#f2b46a}.port-button.shaft{border-left-color:#a7b4ce}.port-button.fixed{border-left-color:#a1adb3}.port-button.signal{border-left-color:#72d7cc}.connection-targets{background:#2c302d;border:1px solid #66543b;border-radius:8px;margin-top:14px;padding:0 10px 10px}.connection-targets h3{color:#f2c181;margin-top:12px;line-height:1.5}.target-button{text-align:left;background:#3c3f34;border-color:#70664e;width:100%;margin:5px 0;font-size:11px;display:block}.quiet{background:0 0;border:0;padding-left:0;font-size:11px}.danger{color:#d5a8a1}.part-settings{border-top:1px solid #334851;border-bottom:1px solid #334851;margin:18px 0;padding:3px 0}.setting{color:#b3c3cb;grid-template-columns:1fr 80px;align-items:center;gap:6px;margin:10px 0;font-size:11px;display:grid}.setting input,.setting select{color:#e2ebef;background:#102028;border:1px solid #465963;border-radius:4px;width:100%;min-width:0;padding:6px;font-size:11px}.unit{color:#8098a4;text-align:right;grid-column:1/-1;font-size:10px}.drive-buttons{flex-wrap:wrap;gap:4px;display:flex}.drive-buttons button{padding:7px 9px;font-size:11px}.workshop-footer{color:#9bb1bd;background:#121d24;border-top:1px solid #31434e;flex:none;align-items:center;gap:18px;height:38px;padding:0 20px;font-size:11px;display:flex}.mode-label{color:#f2bd7c;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800}.parts-label{font-variant-numeric:tabular-nums;white-space:nowrap;color:#7d96a3}.status-message{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.next-step{white-space:nowrap;color:#a9dcc6;margin-left:auto}.next-step[hidden]{display:none}.key-badge{font:inherit;opacity:.75;border:1px solid;border-radius:3px;margin-left:6px;padding:2px 4px;font-size:10px;line-height:1}button:not(.keyed)>.key-badge{visibility:hidden}.build-id{color:#718b99;pointer-events:none;font-size:8px;position:absolute;bottom:5px;right:8px}@media (width<=1100px){.workshop-body{grid-template-columns:215px minmax(240px,1fr) 245px}.workshop-header{padding:0 16px}.parts-panel{padding:20px 15px}.inspector{padding:20px 14px}.next-step{display:none}}@media (width<=780px){.workshop-header{flex-wrap:wrap;gap:0 12px;height:110px;padding:12px}.brand{flex:1}.brand-name{font-size:12px}.modebar{order:3;justify-content:center;gap:8px;width:100%}.workshop-body{grid-template-rows:minmax(280px,1fr) 220px;grid-template-columns:165px minmax(180px,1fr)}.parts-panel{grid-row:1/3;padding:18px 12px}.inspector{border-top:1px solid #31434e;border-left:0;grid-area:2/2}.viewport{grid-area:1/2}h1{font-size:21px}.intro{font-size:11px}.part-card{gap:6px;padding:9px 7px;font-size:11px}.part-symbol{width:22px;height:25px;font-size:19px}.add-symbol{display:none}.viewport-caption{font-size:10px;top:15px;left:14px}.canvas-hint{padding:0 12px;font-size:9px}.empty-hint h2{font-size:17px}.empty-hint p{font-size:11px}.workshop-footer{gap:10px;padding:0 10px;font-size:10px}.filebar{gap:8px}}.inspector-panel{background:#17232b;border-left:1px solid #31434e;min-height:0;overflow-y:auto}.inspector-panel .inspector{border-left:0;padding-top:20px;overflow:visible}.selection-header{justify-content:space-between;align-items:center;gap:8px;padding:20px 18px 10px;display:flex}.selection-header .section-label{margin:0}.clear-selection{color:#edc78f;background:0 0;border:0;padding:5px 0;font-size:10px}.inspector-panel .part-list{border-bottom:1px solid #354a55;gap:3px;max-height:172px;margin:0 14px;padding-bottom:12px;overflow-y:auto}.part-list-item.selected{color:#ffe1b3;background:#4a4031;border-left:3px solid #ffc778;font-weight:650}.port-button{grid-template-columns:1fr auto;gap:4px 7px;display:grid}.port-button.connected{border-color:#588f85 #588f85 #588f85 #7ed5b8}.port-button.connected:disabled{opacity:.88}.port-title{font-weight:650}.port-state{color:#a5b8c1;align-self:center;font-size:9px}.connected .port-state{color:#9ee5c9}.port-peer{color:#d3e7de;grid-column:1/-1;font-size:11px;line-height:1.5}.port-hint{color:#98b7b1;grid-column:1/-1;margin-top:3px;font-size:10px}.connection-preview{color:#d8ccb3;margin:5px 0 12px;font-size:11px;line-height:1.6}.target-button{white-space:normal;padding:9px;font-size:11px;line-height:1.5}.selection-label{color:#17232b;pointer-events:none;text-align:center;background:#ffcc86;border:1px solid #ffe0ae;border-radius:6px;max-width:230px;padding:6px 11px;font-size:12px;font-weight:700;position:absolute;transform:translate(-50%,-100%);box-shadow:0 3px 14px #0005}.selection-label[hidden]{display:none}.selection-label:after{content:"";background:#ffcc86;width:8px;height:8px;position:absolute;bottom:-5px;left:calc(50% - 4px);transform:rotate(45deg)}@media (width<=780px){.inspector-panel{border-top:1px solid #31434e;border-left:0;grid-area:2/2}.inspector-panel .inspector{border-top:0;grid-area:auto}.selection-header{padding:12px 14px 8px}.inspector-panel .part-list{max-height:90px}.selection-label{font-size:10px}}.selection-header{z-index:2;background:#17232b;border-bottom:1px solid #31434e;position:sticky;top:0}.edit-toolbar{z-index:3;flex-wrap:wrap;gap:5px;display:flex;position:absolute;top:50px;left:16px}.edit-toolbar button{background:#17232bee;padding:7px 10px;font-size:11px}.edit-toolbar .active{color:#ffd49d;border-color:#f2b46a}.placement-settings{border-top:1px solid #354a55;margin-top:14px;padding-top:10px}.placement-settings summary{cursor:pointer;color:#d2e0e6;font-size:12px}.disconnect-list{flex-direction:column;align-items:flex-start;margin-top:8px;display:flex}.disconnect-list button{color:#e5b7a4;text-align:left;white-space:normal}.starter-guide{background:#20352f;border:1px solid #627b77;border-radius:8px;margin:0 0 18px;padding:12px}.starter-guide h2{font-size:16px}.starter-guide p{color:#b4ccc4;font-size:12px;line-height:1.5}.active-guide button{width:100%;margin-top:7px}.guide-progress{color:#a9dcc6;font-size:11px}.starter-guide .guide-next{color:#e6fff4;margin:6px 0 2px;font-size:14px;font-weight:700}.part-mass{color:#c3d3da;margin-top:10px;font-size:12px}.parameter-help{color:#96b8ad;grid-column:1/-1;font-size:10px;line-height:1.5}.derived-dimensions{color:#bcd8cd;font-variant-numeric:tabular-nums}.machine-health{color:#ffe2b9;text-align:left;z-index:3;background:#4a3424ef;border-color:#d59b61;font-size:12px;line-height:1.5;position:absolute;bottom:48px;left:20px;right:20px}.machine-health[hidden]{display:none}.follow-control{color:#c8d9df;background:#17232bee;border-radius:6px;align-items:center;gap:5px;padding:5px 8px;font-size:11px;display:flex}.follow-control input{accent-color:#f2b46a}.edit-hint{color:#c0d1d8;text-shadow:0 1px 3px #17232b;flex-basis:100%;padding:3px 0;font-size:10px}.edit-toolbar{max-width:calc(100% - 32px)}.part-list-item{flex:none;min-height:36px;line-height:1.4}.inspector-panel .part-list{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#6c8995 #17232b}.inspector-panel .part-list::-webkit-scrollbar{width:8px}.inspector-panel .part-list::-webkit-scrollbar-thumb{background:#6c8995;border:2px solid #17232b;border-radius:8px}.selection-header{flex-wrap:wrap}.selection-state{color:#b9cbd2;flex-basis:100%;padding-top:4px;font-size:11px}.part-icon{object-fit:contain;pointer-events:none;flex:none;width:64px;height:52px}.more-part{text-align:left;align-items:center;gap:9px;width:100%;display:flex}.more-part .part-icon{width:48px;height:40px}.palette-hint{color:#afc6cf;font-size:11px;line-height:1.5}.keyboard-help{z-index:5;background:#17232bf2;border:1px solid #3a4d58;border-radius:7px;max-width:320px;padding:8px;font-size:11px;position:absolute;top:16px;right:12px}.keyboard-help p{margin:8px 0 0;line-height:1.65}.keyboard-help summary{cursor:pointer}.part-card{gap:8px;padding:8px}@media (width<=780px){.part-icon{width:44px;height:38px}.keyboard-help{max-width:190px;top:auto;bottom:70px}}.edit-toolbar button.active{color:#17232b;background:#f2b46a;border-color:#ffcb8d;font-weight:700}.placement-cue{z-index:8;pointer-events:none;color:#d6fff0;background:#183c32ed;border:1px solid #8cf5cf;border-radius:6px;padding:8px 10px;font-size:11px;position:absolute}.placement-cue[hidden]{display:none}.starter-guide.active-guide>[data-command=guide-step]{flex:none;height:44px;margin:8px 0}.recording-panel{margin-top:18px;font-size:12px}.recording-panel button{margin:4px 4px 0 0;font-size:11px}.playtest-panel{color:#eef4f5;background:#17232b;border-top:1px solid #31434e;flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:flex}.playtest-panel button,.playtest-dialog button{color:#172b35;cursor:pointer;background:#efb961;border:1px solid #efb961;border-radius:6px;padding:10px 14px}.playtest-dialog{color:#eef4f5;background:#172b35;border:1px solid #efb961;border-radius:12px;max-width:550px;padding:28px;font:16px/1.5 system-ui}.playtest-dialog::backdrop{background:#000a}.playtest-dialog textarea{box-sizing:border-box;width:100%;font:inherit;margin:16px 0;padding:12px;display:block}.playtest-dialog button{margin:4px}.playtest-status .status-label{letter-spacing:.08em;text-transform:uppercase;color:#c3d3da;margin:0;font-size:12px;font-weight:600}.playtest-status ul{flex-wrap:wrap;gap:8px;margin:8px 0 16px;padding:0;list-style:none;display:flex}.playtest-status li{border:1px solid #58717e;border-radius:999px;padding:4px 12px}.manipulation-scope{color:#a2ebd4;font-size:13px;line-height:1.45}.port-button.wiring-source{background:#59482e;outline:2px solid #ffca79}.target-button{border-color:#68bba6}.target-button.previewing{background:#28564c;outline:2px solid #a2ebd4}.inspection-banner{z-index:15;background:#172a32f2;border:1px solid #92d5ce;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;font-size:12px;display:flex;position:absolute;bottom:48px;left:12px;right:12px}.inspection-banner[hidden]{display:none}.inspection-banner span{color:#b8ccd2;flex:1;min-width:160px}.inspection-banner button{font-size:12px}.trace-connection{text-align:left;width:100%;margin:8px 0;font-size:12px;display:block}.trace-connection[aria-pressed=true]{background:#51472f;border-color:#ffce84}.trace-description{color:#d1e8e4;font-size:13px;line-height:1.6}.port-explanation{color:#d3e8df;border:1px solid #75998e;border-radius:7px;margin:12px 0;padding:10px;font-size:12px;line-height:1.5}.port-explanation p{margin:6px 0}.wheel-connection-help{color:#b5d9cc;font-size:12px;line-height:1.5}.playtest-comments{max-height:200px;padding:0;list-style:none;overflow-y:auto}.playtest-comment{white-space:pre-wrap;background:#10232b;border:1px solid #54756a;border-radius:7px;margin:8px 0;padding:10px}.playtest-comment p{margin:4px 0}.inspector-panel .inspector{padding:0 16px 18px}.machine-picker{border-bottom:1px solid #354a55;padding:0 16px}.machine-picker>summary{cursor:pointer;color:#c4d5dc;padding:14px 0;font-size:12px}.machine-picker .part-list{border:0;max-height:180px;margin:0;padding:0 0 10px}.selected-part-header{z-index:3;background:#17232b;border-bottom:1px solid #354a55;padding:14px 0 10px;position:sticky;top:0}.selected-part-header h2{overflow-wrap:anywhere;margin:0;font-size:20px;line-height:1.25}.selected-part-header .part-kind{margin:4px 0 0;font-size:12px}.part-actions{align-items:center;gap:12px;margin-top:8px;display:flex}.part-actions button{min-height:30px;padding:6px 0;font-size:12px}.inspector .part-live{font-variant-numeric:tabular-nums;margin:10px 0;padding:8px 10px;font-size:12px;line-height:1.45}.inspector .part-live strong{font-size:14px}.inspector .diagnosis{margin:0;line-height:1.45}.primary-setting{background:#20313a;border:1px solid #52666c;border-radius:7px;margin:0;padding:10px;font-size:13px}.primary-setting input{min-height:32px;font-size:13px}.inspector h3{margin:14px 0 8px;font-size:13px}.inspector .port-list{gap:6px}.inspector .port-button{width:100%;min-height:38px;padding:8px 9px;font-size:12px}.inspector .port-peer{font-size:11px;line-height:1.3}.inspector .port-state{font-size:10px}.port-section{min-width:0}.port-list .port-explanation{margin:6px 0 4px;padding:9px;font-size:12px;line-height:1.4}.port-list .connection-targets{margin:6px 0;padding:8px}.port-list .connection-targets h3{margin:0 0 6px}.port-list .connection-preview{margin:6px 0;font-size:12px;line-height:1.4}.port-list .target-button{padding:9px;font-size:12px}.inspector .part-settings,.inspector .placement-settings{border-top:1px solid #354a55;border-bottom:0;margin:12px 0 0;padding:0}.inspector .part-settings>summary,.inspector .placement-settings>summary{cursor:pointer;padding:12px 0;font-size:12px}.engineering-live{color:#bfced5;margin:8px 0;font-size:12px;line-height:1.6}.part-identity{grid-template-columns:44px minmax(0,1fr);align-items:center;column-gap:8px;display:grid}.part-identity .part-icon{grid-row:1/3;width:44px;height:38px}.part-identity .part-kind{grid-column:2}.primary-setting{grid-template-columns:1fr 70px;font-size:13px}.primary-setting .parameter-help{font-size:11px;line-height:1.4}.signal-ownership,.axle-ownership{margin:10px 0;font-size:12px;line-height:1.4}.signal-ownership .parameter-help{margin-top:5px;display:block}.part-link{color:#a4e8d2;text-underline-offset:3px;background:0 0;border:0;padding:6px 3px;font-size:12px;text-decoration:underline}.port-explanation>.quiet{color:#e5b7a4;margin-top:5px;font-size:12px;display:block}.edit-mode-note{color:#b6cbd3;margin:8px 0;font-size:11px;line-height:1.4}.edit-mode-note>.quiet{color:#ffd29a;padding:5px 0;font-size:12px;display:block}.selection-hint{color:#b6cbd3;margin:18px 0;font-size:13px;line-height:1.6}.inspector .selected-part-header{border-bottom:2px solid #d5a55e;padding:10px 0 7px}.inspector .part-live{background:#13252d;border:0;border-left:2px solid #88c9b4;border-radius:0;margin:8px 0;padding:6px 9px}.inspector .primary-setting{background:0 0;border:0;border-radius:0;gap:5px;padding:6px 0}.inspector input,.inspector select{font-variant-numeric:tabular-nums;border-radius:2px}.drive-range{accent-color:#edba72;cursor:ew-resize;grid-column:1/-1;width:100%;height:22px;padding:0!important}.drive-directions{grid-column:1/-1;grid-template-columns:1fr 1fr 1fr;gap:0;display:grid}.drive-directions button{background:0 0;border-color:#49616b;border-radius:2px;min-height:28px;padding:5px 3px;font-size:12px}.drive-directions button[aria-pressed=true]{color:#ffe0ab;background:#4e412b;border-color:#edba72}.inspector .port-list{border-top:1px solid #49616b;gap:0}.inspector .port-button{background:0 0;border:0;border-bottom:1px solid #49616b;border-radius:0;min-height:37px;padding:7px 7px 7px 28px;position:relative}.inspector .port-button:before{text-align:center;color:#c5d3d9;content:"⊞";width:15px;height:15px;font-size:14px;line-height:15px;position:absolute;top:10px;left:5px}.inspector .port-button.power:before{content:"ϟ";color:#f2bd72}.inspector .port-button.shaft:before{content:"⊙";color:#c2c9ed}.inspector .port-button.signal:before{content:"⌁";color:#81d9cd}.inspector .port-button.connected .port-state:before{content:"✓ ";font-size:11px}.inspector .port-button:hover{background:#243943}.inspector .port-button.wiring-source{background:#403b2e;outline:0;box-shadow:inset 3px 0 #f6c77d}.inspector .port-explanation,.inspector .connection-targets{box-shadow:none;border-radius:2px}.inspector .engineering-live{font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace}.inspector .part-settings,.inspector .placement-settings{margin-top:8px}.inspector input.drive-range{min-height:22px}.inspector button,.inspector .trace-connection{border-radius:2px}.inspector .material-setting{grid-template-columns:1fr}.playtest-panel>button{min-height:36px;padding:6px 10px;font-size:13px;line-height:1.3}.playtest-panel [data-status]{overflow-wrap:anywhere;flex-direction:column;flex:220px;min-width:0;font-size:12px;line-height:1.4;display:flex}.playtest-panel [data-status-main]{font-weight:650}.playtest-panel [data-status-detail]{color:#b9cdd5;font-size:11px}.playtest-panel [data-project]{order:1}.playtest-panel [data-setup],.playtest-panel [data-end]{order:2}.playtest-panel [data-feedback]{order:3;justify-content:center;align-items:center;gap:8px;min-inline-size:8.5em;display:flex}.playtest-panel [hidden]{display:none}.workshop-footer:has(.playtest-panel){flex-wrap:wrap;row-gap:0;height:auto;min-height:38px}.workshop-footer>.playtest-panel{background:0 0;border:0;max-width:100%;margin-left:auto;padding:0}@media (width<=760px){.playtest-panel{gap:6px;padding:6px 8px}.playtest-panel [data-status]{flex-basis:100%;order:-1}.playtest-panel>button{flex:auto}}.snap-notice{color:#d9fff0;pointer-events:none;z-index:5;background:#142930;border:1px solid #8cf5cf;padding:10px 14px;font-size:13px;position:absolute;bottom:44px;left:16px;right:16px}.snap-notice[hidden]{display:none}.snap-movement{color:#b9cdd5;margin-top:4px;font-size:11px;display:block}.guide-feedback{color:#d9fff0;pointer-events:none;z-index:6;background:#16322e;border:2px solid #8cf5cf;padding:12px;font-size:13px;position:absolute;bottom:44px;left:16px;right:16px}.guide-feedback[hidden]{display:none}.guide-receipt{color:#c5ffe9;border-left:3px solid #8cf5cf;padding:8px;font-size:12px!important;line-height:1.5!important}.machine-check{box-sizing:border-box;color:#eef4f5;background:#172b35;border:1px solid #efb961;border-radius:2px;width:min(560px,92vw);max-height:85vh;padding:24px;font:15px/1.5 system-ui;overflow:auto}.machine-check::backdrop{background:#0009}.machine-check h2{margin-top:0}.machine-check-issue{border-top:1px solid #516771;padding:12px 0}.machine-check-issue h3{margin:0;font-size:17px}.machine-check-issue p{margin:8px 0}.machine-check button{cursor:pointer;padding:9px 14px}.mount-status{border-top:2px solid #f5bd68;padding:12px 0}.mount-status h3{margin:0 0 8px}.mount-relationship{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.mount-relationship>span{flex-basis:100%}.surface-placement{border-top:1px solid #45606a;padding:12px 0}.surface-placement[hidden]{display:none}.surface-placement p{min-height:4.5em;margin:8px 0}.surface-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.surface-fields label{flex-direction:column;gap:5px;min-width:0;font-size:13px;display:flex}.surface-fields label:nth-child(-n+3){grid-column:1/-1}.surface-fields input,.surface-fields select{box-sizing:border-box;color:#e5eef0;background:#182b34;border:1px solid #52707c;border-radius:2px;width:100%;min-width:0;padding:8px}.surface-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.surface-actions button{padding:8px}.inspector .mount-status{border-top:0;padding:7px 0 3px}.inspector .mount-status>p{margin:0 0 5px;font-size:12px}.inspector .mount-relationship{gap:5px;margin:0}.inspector .mount-relationship>span{font-size:12px;line-height:1.4}.inspector .mount-relationship button,.inspector .mount-status>button{min-height:28px;padding:5px 8px;font-size:12px}.inspector .mount-move>summary{cursor:pointer;min-height:28px;padding:5px 8px;font-size:12px}.inspector .mount-move[open]{flex-basis:100%}.inspector .mount-move-options{flex-wrap:wrap;gap:5px;padding:5px 0;display:flex}.inspector .surface-placement>strong{font-size:14px}.inspector .surface-placement p{min-height:3em;font-size:12px;line-height:1.45}.surface-precise{margin-top:12px}.surface-precise summary{cursor:pointer;padding:8px 0}.inspector .connections-heading{margin:8px 0 4px}.inspector .part-settings>summary{padding:8px 0}.part-identity>button,.part-name-editor{grid-column:2;justify-self:start}.part-name-editor{flex-wrap:wrap;gap:6px;width:100%;min-width:0;display:flex}.part-name-editor input{box-sizing:border-box;width:100%;min-width:0}.part-identity h2{overflow-wrap:anywhere}.part-identity{grid-template-columns:44px minmax(0,1fr) auto}.part-identity>button{grid-area:1/3;padding:4px}.part-name-editor{grid-column:2/-1}.inspector .surface-placement{padding:8px 0}.inspector .surface-placement .surface-fields{gap:6px}.inspector .surface-placement select,.inspector .surface-placement input{min-height:30px;padding:5px 7px;font-size:12px}.inspector .surface-placement p{min-height:0;margin:6px 0}.placement-result{flex-direction:column;gap:5px;margin:8px 0;font-size:12px;display:flex}.placement-result small{color:#a8bdc5;line-height:1.4}.inspector .surface-actions{grid-template-columns:1fr 1fr;gap:5px;display:grid}.inspector .surface-actions button{min-height:30px;padding:5px 8px;font-size:12px}.inspector .surface-actions button:last-child{grid-column:1/-1}.surface-confirmation{z-index:3;background:#172b33;border-top:2px solid #e8b15c;margin-top:8px;padding:9px 0 5px;position:sticky;bottom:0}.surface-confirmation>strong{color:#ffd08a;font-size:13px}.surface-confirmation[data-blocked=true]{border-color:#ff9b87}.surface-confirmation[data-blocked=true]>strong{color:#ffad9c}.surface-finish-actions{grid-template-columns:1fr auto;gap:6px;display:grid}.inspector .surface-finish-actions button{min-height:34px;padding:6px 12px;font-size:13px}.surface-finish-actions [data-command=apply-surface]{color:#16252c;background:#efb85f;font-weight:700}.surface-overlay{pointer-events:none;z-index:4;position:absolute;inset:0;overflow:hidden}.surface-overlay[hidden],.surface-overlay [hidden]{display:none}.surface-anchor{pointer-events:auto;color:#b6ffeb;cursor:pointer;background:#173c3bee;border:1px solid #99e6d2;border-radius:2px;width:25px;height:25px;min-height:0;padding:0;font-size:17px;position:absolute;transform:translate(-50%,-50%)}.surface-anchor-leader{transform-origin:0;pointer-events:none;background:#99e6d2;height:1px;position:absolute}.surface-anchor:hover,.surface-anchor:focus-visible{color:#12332e;background:#d3fff2}.surface-cue{color:#ffdaa0;background:#152b32ed;border-left:3px solid #f1ba65;max-width:275px;padding:6px 9px;font-size:12px;line-height:1.4;position:absolute}.surface-cue[data-blocked=true]{color:#ffb6a5;border-color:#ff9b87}.surface-landing{color:#cdf6e8;white-space:nowrap;pointer-events:none;background:#152b32ed;border-left:3px solid #8cf5cf;border-radius:3px;max-width:220px;padding:3px 7px;font-size:11px;line-height:1.3;position:absolute;transform:translate(12px,-50%)}.placement-result select{color:#e5eef0;background:#182b34;border:1px solid #52707c;border-radius:2px;width:100%}.surface-precise>label{flex-direction:column;gap:4px;font-size:12px;display:flex}.inspector-panel:has(.surface-placement:not([hidden])){scroll-padding-bottom:180px}.surface-precise>label select{color:#e5eef0;background:#182b34;border:1px solid #52707c;border-radius:2px}.surface-cue{z-index:2}.connection-error{color:#ffb1a3;background:#30272a;border-left:3px solid #ff836f;padding:8px 10px}.primary-setting input[type=range]{accent-color:#f2b85f}.machine-panels{pointer-events:none;z-index:4;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));grid-auto-rows:minmax(0,1fr);align-items:end;gap:8px;max-height:45%;display:grid;position:absolute;inset:auto 14px 45px 16px}.machine-panels>*{pointer-events:auto;min-width:0;min-height:0;max-height:100%;overflow:auto}.machine-control-region{pointer-events:none;flex-direction:column;gap:8px;display:flex}.machine-control-region>*{pointer-events:auto}.machine-control-region>.vehicle-controls{flex:auto;min-height:0}.machine-control-region>.attempt-controls{flex:none}.vehicle-controls{z-index:4;background:#172a33ee;border:1px solid #55717a;border-top:3px solid #efb85e;order:-1;padding:10px 12px;overflow:auto}.vehicle-controls>summary{z-index:1;background:#172a33;padding:4px 0;position:sticky;top:-10px}.vehicle-controls[hidden]{display:none}.vehicle-controls p,.vehicle-control-row small{color:#abc0c6;font-size:12px}.vehicle-control-row{text-align:left;grid-template-columns:1fr auto;gap:4px 10px;width:100%;margin-top:6px;padding:8px;display:grid}.vehicle-control-row span,.vehicle-control-row small{grid-column:1}.vehicle-control-row output{color:#86d9bc;font-variant-numeric:tabular-nums;grid-area:1/2/4;align-self:center}.receiver-controls{border-top:1px solid #55717a;margin-top:12px}.receiver-controls label{gap:5px;margin:10px 0;font-size:13px;display:grid}.receiver-controls select,.receiver-controls input{width:100%;font-size:13px}.receiver-controls p,.receiver-controls small{color:#abc0c6;font-size:12px;line-height:1.5}.receiver-controls button{padding:7px 10px;font-size:13px}.receiver-controls details{margin:12px 0}.receiver-controls select,.receiver-controls input{color:#e7eef0;background:#19303b;border:1px solid #55717a;border-radius:2px;min-height:32px;padding:6px 8px}.receiver-controls select:focus-visible,.receiver-controls input:focus-visible{outline-offset:2px;outline:2px solid #efb85e}.motion-readout{font-variant-numeric:tabular-nums;background:#172a33ee;border-left:3px solid #86d9bc;gap:4px;padding:9px 12px;font-size:12px;display:grid}.motion-readout[hidden]{display:none}.motion-readout small{color:#abc0c6}.follow-control[hidden]{display:none}.receiver-controls>summary{color:#b7d9dc;padding:10px 0;font-size:13px;line-height:1.5}.vehicle-controls p{margin:6px 0}.vehicle-control-row{gap:2px 8px;padding:6px 8px}.vehicle-control-row strong{font-size:13px}.vehicle-control-row span{font-size:12px}.vehicle-control-row small{font-size:10px}.machine-health{flex-basis:100%;width:100%;margin:0;position:static;bottom:auto}.assembly-mirror{border-top:2px solid #70baf5;gap:10px;padding-top:12px;display:grid}.assembly-mirror h3,.assembly-mirror p{margin:0}.assembly-mirror>label{gap:5px;display:grid}.assembly-mirror select{color:#e4edf0;background:#192e37;border:1px solid #54717a;width:100%;padding:8px}.mirror-members{border:1px solid #54717a;gap:5px;max-height:180px;display:grid;overflow:auto}.mirror-members label{align-items:center;gap:8px;display:flex}.mirror-members input{accent-color:#70baf5;width:auto}.mirror-status{color:#bed5e1;font-size:13px}.mirror-status.blocked{color:#ff9d89}.connection-test{border-top:2px solid #83cbb8;gap:7px;padding:10px 0;font-size:13px;display:grid}.connection-test p{margin:0}.connection-test details>:not(summary){margin-top:7px}.connection-test summary{cursor:pointer;font-weight:600}.connection-test-path{flex-wrap:wrap;align-items:baseline;gap:4px;display:flex}.connection-test .part-link{font-size:inherit;padding:2px 4px}.connection-test button{padding:7px 10px;font-size:13px}.connection-test-live{color:#b5e4d5;font-variant-numeric:tabular-nums}.connection-test-reason{min-height:2.9em;min-height:2lh;margin:0}.actuator-direction{align-items:center;gap:8px;margin:8px 0;display:flex}.actuator-direction input{accent-color:#edb860;width:auto}.wiring-help,.wiring-notice{color:#c8d9df;background:#17232bee;border-radius:6px;flex-basis:100%;padding:4px 8px;font-size:11px}.follow-control input:focus-visible{outline-offset:3px;outline:2px solid #f2b46a}.assembly-library{border:1px solid #42606d;border-radius:8px;margin:8px 0;padding:10px}.assembly-library>summary{cursor:pointer;font-weight:700}.assembly-library label{flex-wrap:wrap;gap:5px;margin:7px 0;font-size:12px;display:flex}.assembly-library input:not([type=checkbox]),.assembly-library select{width:100%;min-width:0}.assembly-library button{margin:4px 3px 4px 0}.assembly-library small{overflow-wrap:anywhere;margin:4px 0;display:block}.assembly-library p{font-size:12px;line-height:1.45}.assembly-library fieldset{border:1px solid #42606d;min-width:0;margin:8px 0;padding:8px}.assembly-card,.assembly-instance{border-top:1px solid #42606d;padding:10px 0}.assembly-card svg{background:#17272f;border-radius:6px;width:100%;height:90px}.assembly-port{background:#17272f;border-radius:6px;margin:10px 0;padding:6px}.assembly-library input:not([type=checkbox]),.assembly-library select{color:#e5eff2;font:inherit;background:#10232c;border:1px solid #42606d;border-radius:4px;padding:7px;font-size:12px}.assembly-library input:focus-visible,.assembly-library select:focus-visible{outline-offset:2px;outline:2px solid #efb665}.assembly-navigation{z-index:2;background:#17272f;gap:4px;display:flex;position:sticky;top:0}.assembly-navigation button{flex:1;font-size:12px}.assembly-navigation button[aria-pressed=true]{color:#efb665;border-color:#efb665}.assembly-workspace{overscroll-behavior:contain;max-height:50vh;overflow-y:auto}.assembly-workspace[hidden]{display:none}.part-entry{position:relative}.part-entry .part-card,.part-entry .more-part{grid-template-columns:52px minmax(0,1fr);gap:4px 8px;width:100%;min-width:0;padding:8px 30px 8px 8px;display:grid}.part-entry .part-icon{grid-row:span 2;width:52px;height:52px}.part-purpose{color:#b9cdd7;grid-column:2;font-size:12px;font-weight:400;line-height:1.4}.part-entry .part-about{color:#b9cdd7;background:0 0;border-color:#0000;width:24px;height:24px;min-height:24px;padding:0;font-size:16px;position:absolute;top:4px;right:4px}.part-entry .part-about:hover{color:#ffcf8f;background:#ffffff12}.part-help{z-index:40;resize:both;overflow-wrap:anywhere;background:#20303a;border:1px solid #678390;border-radius:12px;flex-direction:column;width:min(700px,100vw - 16px);min-width:min(320px,100vw - 16px);max-width:calc(100vw - 16px);height:min(640px,100vh - 88px);min-height:min(280px,100vh - 16px);max-height:calc(100vh - 16px);line-height:1.5;display:flex;position:fixed;overflow:hidden;box-shadow:0 16px 64px #0009}.part-help[hidden],.part-help-content[hidden]{display:none}.part-help-titlebar{cursor:move;touch-action:none;background:#17272f;flex-shrink:0;align-items:center;gap:8px;padding:12px 16px;display:flex}.part-help-titlebar h3{flex:1;margin:0;font-size:18px}.part-help-titlebar button{width:32px;height:32px;padding:0;font-size:20px}.part-help h3:focus-visible{outline-offset:3px;outline:2px solid #ffbf69}.part-help-tabs{border-bottom:1px solid #49616d;flex-shrink:0;gap:8px;padding:10px 20px;display:flex}.part-help-tabs button{background:0 0;border-color:#0000}.part-help-tabs button[aria-selected=true]{color:#ffcf8f;background:#ffbf6910;border-color:#b78e58}.part-help-content{overscroll-behavior:contain;flex:1;min-height:0;padding:20px;overflow:auto;container-type:inline-size}.help-portrait{object-fit:contain;float:right;width:104px;height:88px;margin:0 0 12px 20px}.help-purpose{color:#ffcf8f;font-size:20px;font-weight:600}.part-help ol{padding-left:24px}.part-help li{margin:8px 0}.part-help-example{border-bottom:1px solid #49616d;margin:0 0 28px;padding-bottom:16px}.part-help-example h4{margin:12px 0 4px;font-size:18px}.part-help-example figcaption{color:#b9cdd7;font-size:12px}.help-diagram{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 48px;margin:20px 0;display:grid;position:relative}.help-diagram-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.help-diagram-node{z-index:1;grid-column:var(--diagram-col);grid-row:var(--diagram-row);text-align:center;background:#17272f;border:1px solid #678390;border-radius:8px;flex-direction:column;align-items:center;padding:8px;font-size:13px;display:flex;position:relative}.help-diagram-node .part-icon{object-fit:contain;width:52px;height:44px}.help-diagram-port{color:#b9cdd7;font-size:11px}.diagram-wire{stroke:#e9eef2;stroke-width:3px}.diagram-wire-power{stroke:#ffcf8f;stroke-dasharray:6 4}.diagram-wire-mount{stroke:#a4bbc5;stroke-width:6px}.diagram-wire-mount-center{stroke:#20303a;stroke-width:2px}.diagram-edge-number{fill:#20303a;stroke:#a4bbc5}.diagram-edge-text{fill:#eef5f8;font-size:11px}.help-diagram-legend{color:#b9cdd7;flex-wrap:wrap;gap:8px 18px;font-size:11px;display:flex}.help-diagram-legend span:before{content:"";vertical-align:middle;border-top:3px solid #e9eef2;width:22px;margin-right:6px;display:inline-block}.help-diagram-legend .legend-power:before{border-top:3px dashed #ffcf8f}.help-diagram-legend .legend-mount:before{border-top:5px double #a4bbc5}.help-motion{color:#ffcf8f;align-items:center;font-size:11px;display:flex}.help-motion svg{flex-shrink:0;width:28px;height:24px}@container (width<=469px){.help-diagram{flex-direction:column;gap:24px;padding-left:80px;display:flex}}.part-help-tooltip{z-index:30;color:#eef5f8;background:#20303a;border:1px solid #a0bac6;border-radius:6px;width:min(280px,100vw - 16px);padding:12px;line-height:1.5;position:fixed;box-shadow:0 4px 16px #0008}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=780px){.workshop-body{grid-template-columns:215px minmax(180px,1fr)}.part-entry .part-card,.part-entry .more-part{grid-template-columns:minmax(0,1fr)}.part-entry .part-icon{grid-row:auto}.part-purpose{grid-column:auto}}.part-identity>.inspector-part-about{background:0 0;border-color:#0000;grid-area:1/1/3;width:44px;height:38px;padding:0;position:relative}.inspector-part-about .help-badge{color:#ffcf8f;background:#17232b;border-radius:50%;font-size:14px;line-height:1;position:absolute;bottom:0;right:0}.spring-setting{grid-template-columns:1fr 74px;align-items:center;gap:4px 8px;margin:10px 0;font-size:12px;display:grid}.spring-setting input{width:100%;min-width:0}.spring-setting input[type=range],.spring-setting .parameter-help{grid-column:1/-1}.spring-setting .parameter-help:empty{display:none}.spring-readout{background:#20313a;border-left:3px solid #f2b85f;padding:8px;font-size:12px;line-height:1.5}.edit-toolbar{pointer-events:none;flex-direction:column;align-items:flex-start;top:12px;right:16px}.edit-tool-group,.view-tool-group{pointer-events:auto;flex-wrap:wrap;align-items:center;gap:5px;display:flex}.move-scope{color:#a2ebd4;padding:4px;font-size:12px}.move-scope[hidden],.motion-values[hidden]{display:none}.edit-toolbar .machine-health{pointer-events:auto}.workshop-dialog{color:#e6eff1;background:#172a32;border:1px solid #627b77;border-radius:8px;width:min(540px,100vw - 40px);max-height:calc(100vh - 48px);padding:20px;font-size:14px;line-height:1.5;overflow:auto}.workshop-dialog::backdrop{background:#0008}.workshop-dialog .example-list{margin-top:12px}.examples-browser .example-list{background:0 0;border:0;padding:0}.example-message:empty{display:none}.motion-readout,.motion-readout small{font-size:13px}.motion-values{pointer-events:auto;gap:4px;display:grid}.part-actions{flex-wrap:wrap}@media (width<=1350px){.workshop-header{flex-wrap:wrap;gap:8px;height:auto;min-height:74px;padding:8px 16px}.modebar,.filebar{flex-wrap:wrap;max-width:100%}}.example-replacement:not([hidden]){flex-wrap:wrap;gap:8px;padding:12px 0;display:flex}.example-card{border-top:1px solid #526873;padding:12px 0}.example-card p{margin:0 0 10px}.examples-browser .example-list{flex:1;min-height:0;margin-top:0;overflow:auto}.examples-browser .example-list p{color:#e5eff2;font-size:14px;line-height:1.55}.example-group{letter-spacing:.08em;text-transform:uppercase;color:#c3d3da;margin:18px 0 0;font-size:12px;font-weight:600}.example-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;display:grid}@media (width<=700px){.example-head{grid-template-columns:minmax(0,1fr)}.example-head>button[data-command]{justify-self:start}}.example-title{min-width:0;font-size:inherit;font-weight:inherit;margin:0}.example-toggle{text-align:left;width:100%;color:inherit;background:0 0;border:1px solid #0000;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:4px 8px;display:flex}.example-name{font-size:15px;font-weight:600}.example-summary{color:#c3d3da;flex:1;min-width:12ch;font-size:12px}.example-toggle svg{margin-left:auto}.example-detail{justify-items:start;gap:8px;padding:8px 0 0;display:grid}.example-detail[hidden]{display:none}.example-detail p{margin:0}@media (prefers-reduced-motion:no-preference){.example-toggle svg{transition:transform .15s}}.example-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.build-info input{width:100%;min-width:0;margin:8px 0}.workshop-dialog{overflow-wrap:anywhere}.motion-values details p{max-width:32ch}.assembly-browser,.examples-browser{box-sizing:border-box;color:#e5eff2;background:#192a33;border:1px solid #58717e;border-radius:12px;width:min(860px,100vw - 32px);max-width:none;height:min(640px,100dvh - 32px);max-height:none;padding:20px;overflow:hidden}.assembly-browser[open],.examples-browser[open]{flex-direction:column;gap:12px;display:flex}.assembly-browser::backdrop,.examples-browser::backdrop{background:#071018a8}.assembly-filters{align-items:center;gap:12px;display:flex}.assembly-browser h2,.examples-browser h2{font-size:22px}.assembly-filters input{flex:1;min-width:0}.assembly-browser-body{flex:1;grid-template-columns:1fr 280px;gap:18px;min-height:0;display:grid}.assembly-results{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));align-content:start;gap:10px;min-width:0;padding:2px;display:grid;overflow:auto}.assembly-card{text-align:left;overflow-wrap:anywhere;flex-direction:column;gap:7px;min-width:0;padding:10px;display:flex}.assembly-card[aria-pressed=true]{background:#30434c;border-color:#efb665}.assembly-thumbnail{aspect-ratio:1.6;background:#11232c;border-radius:6px;width:100%}.assembly-thumbnail img{object-fit:contain;width:100%;height:100%}.assembly-detail{border-left:1px solid #42606d;min-width:0;padding:2px 10px;overflow:auto}.assembly-detail small{overflow-wrap:anywhere;display:block}.assembly-detail button,.assembly-detail input{max-width:100%;margin:6px 0}.assembly-detail h3{overflow-wrap:anywhere}.assembly-back{display:none}.assembly-browser input,.assembly-browser select,.assembly-placement input,.assembly-placement select{color:#e5eff2;font:inherit;box-sizing:border-box;background:#10232c;border:1px solid #58717e;border-radius:5px;padding:8px}.assembly-placement{border:1px solid #efb665;border-radius:8px;margin:8px 0;padding:12px}.assembly-placement fieldset{border:0;min-width:0;padding:0}.assembly-placement label{align-items:center;gap:8px;margin:6px 0;display:flex}.assembly-placement input{width:100%;min-width:0}.assembly-placement button{margin:5px 3px 0 0}.assembly-nudges{grid-template-columns:repeat(3,1fr);display:grid}.assembly-library{border:0;padding:4px}.assembly-library p,.assembly-library label,.assembly-library input:not([type=checkbox]),.assembly-library select{font-size:14px}.assembly-list-item[aria-pressed=true]{border-color:#efb665}@media (width<=700px){.assembly-browser{gap:8px;padding:12px}.assembly-browser-body{display:block}.assembly-results,.assembly-detail{height:100%}.assembly-detail{border-left:0;padding:0 4px;display:none}.show-assembly-detail .assembly-results{display:none}.show-assembly-detail .assembly-detail,.assembly-back{display:block}.assembly-detail .assembly-thumbnail{max-width:200px}.assembly-filters select{max-width:140px}.assembly-card .assembly-thumbnail{aspect-ratio:2.8}}.workshop:has(.assembly-browser[open]) .assembly-library{visibility:hidden}.assembly-nudges{grid-template-columns:repeat(2,1fr)}.assembly-placement-actions{background:#17232b;padding:6px 0;position:sticky;bottom:0}@media (width<=780px){.workshop:has(.assembly-placement:not([hidden])){min-height:0}:is(.workshop:has(.assembly-placement:not([hidden]))>.workshop-header,.workshop:has(.assembly-placement:not([hidden]))>.workshop-footer:not(:has(.playtest-panel)),.workshop:has(.assembly-placement:not([hidden])) .parts-panel){display:none}.workshop:has(.assembly-placement:not([hidden]))>.workshop-footer>:not(.playtest-panel){display:none}.workshop:has(.assembly-placement:not([hidden])) .workshop-body{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) min(280px,50vw)}.workshop:has(.assembly-placement:not([hidden])) .viewport{grid-area:1/1;min-height:0}.workshop:has(.assembly-placement:not([hidden])) .inspector-panel{grid-area:1/2;overflow:hidden}.inspector-panel:has(.assembly-placement:not([hidden]))>:not(.assembly-placement){display:none}.assembly-placement:not([hidden]){flex-direction:column;height:100%;min-height:0;margin:0;padding:10px;display:flex}.assembly-placement h3{margin:0 0 8px}.assembly-placement p{margin:4px 0 8px}.assembly-placement fieldset{flex:1;min-height:0;padding:3px;overflow:auto}.assembly-placement-actions{flex:none;position:static}.assembly-placement-actions button{padding:8px}}.inspector-panel{position:relative}.create-assembly-launcher{z-index:2;padding:7px 9px;font-size:12px;position:absolute;top:5px;right:10px}.machine-picker>summary{white-space:nowrap;width:calc(100% - 130px);padding-right:0}.assembly-results>p{grid-column:1/-1}.assembly-browser>[role=status]{margin:0}.assembly-browser>[role=status]:empty{display:none}@media (width<=480px){.assembly-filters{flex-wrap:wrap}.assembly-filters input{flex-basis:100%}.assembly-filters select{flex:1;min-width:0;max-width:none}}.environment-choice{color:#afc4cf;flex-direction:column;justify-content:center;gap:2px;font-size:11px;display:flex}.environment-choice select{max-width:155px;font:inherit;padding:4px}@media (width>=1101px) and (width<=1350px) and (height<=760px){.inspector .selected-part-header{padding:6px 0 5px}.inspector .part-actions{margin-top:4px}.inspector .part-live{margin:4px 0;padding-block:4px}.inspector .primary-setting{padding-block:4px}.inspector .port-button{min-height:33px;padding-block:4px}.inspector .port-button:before{top:7px}}.attempt-controls{background:#192e38;border-radius:8px;place-self:flex-start start;align-items:center;gap:8px;padding:8px;display:flex}.contact-settings .setting{grid-template-columns:1fr;display:grid}.contact-settings input[type=range]{width:100%}.learning-workspace{z-index:45;color:#e4eef0;background:#1a2f38;border:1px solid #75898b;border-radius:12px;flex-direction:column;width:min(440px,100% - 32px);max-height:calc(100% - 110px);display:flex;position:absolute;top:90px;right:16px;box-shadow:0 12px 40px #10232940}.learning-workspace[hidden],.learning-live[hidden]{display:none}.learning-workspace h2{font-size:18px}.learning-status{margin:0 0 8px;padding:0 12px}.learning-body{padding:0 12px 12px;overflow:auto}.learning-body nav{border-bottom:1px solid #a9b6b6;flex-wrap:wrap;gap:6px;padding-bottom:8px;display:flex}.learning-body button,.learning-body input,.learning-body select{max-width:100%;margin:4px}.learning-body label{display:block}.learning-body pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;overflow:auto}.learning-card{overflow-wrap:anywhere;border-top:1px solid #a9b6b6;padding:10px 0}.learning-card input[type=range]{width:95%}.workshop:has(.learning-live:not([hidden])) .learning-workspace{max-height:calc(100% - 240px)}@media (width<=1100px){.workshop:has(.learning-live:not([hidden])) .learning-workspace{max-height:calc(55% - 140px)}}.learning-live{color:#fff;background:#163e43;border-radius:8px;flex-wrap:wrap;flex:none;gap:8px;width:100%;max-height:120px;padding:8px 12px;display:flex;position:relative;overflow:auto}.learning-live>span{font-variant-numeric:tabular-nums;flex:0 0 100%}.learning-workspace button{color:#e4eef0}.learning-workspace button:disabled{color:#9daeb2;opacity:.65}.learning-body{line-height:1.45}.learning-card>strong{margin:4px 0 8px;display:block}.learning-body input:not([type=range]),.learning-body select{color:#e4eef0;background:#10242b;border:1px solid #73878b;border-radius:4px;padding:6px}.learning-body input::placeholder{color:#a8babe}.controller-editor{border-top:1px solid #789;margin-top:12px;padding-top:8px}.controller-editor textarea{box-sizing:border-box;color:#eef5f6;background:#132830;width:100%;font:12px monospace}.controller-editor fieldset{min-width:0;padding:6px}.controller-editor label{margin:4px 0;display:block}.controller-editor input,.controller-editor select{box-sizing:border-box;max-width:100%}.controller-editor button{margin:4px 2px}.controller-editor pre{white-space:pre-wrap;overflow-wrap:anywhere}.controller-rule{border-bottom:1px solid #789;padding-bottom:8px}.controller-live,.controller-history pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.45}.controller-history select{max-width:100%}.scene-catalogue,.scene-inspector{flex-direction:column;gap:.65rem;padding:.75rem;display:flex}.scene-catalogue[hidden],.scene-inspector[hidden]{display:none}.scene-inspector label{flex-direction:column;gap:.2rem;display:flex}.scene-inspector input,.scene-inspector select{width:100%;min-width:0}.scene-browser{width:min(700px,92vw);max-height:85vh;padding:1.2rem;overflow:auto}.scene-browser button{margin:.3rem}.scene-browser svg{background:#17242c;width:100%;height:180px;display:block}.scene-editing>[hidden]{display:none!important}.scene-actions{z-index:1;background:#17242c;flex-wrap:wrap;gap:.4rem;padding:.5rem 0;display:flex;position:sticky;top:0}.scene-editing>:not(.scene-catalogue):not(.scene-inspector){display:none!important}.feedback-dialog{box-sizing:border-box;width:min(580px,100vw - 24px);max-width:580px;max-height:calc(100dvh - 24px);padding:24px;overflow:hidden}.feedback-dialog[open]{flex-direction:column;display:flex}.feedback-dialog h2{font-size:22px;line-height:1.3}.feedback-scroll{min-height:0;padding-right:4px;overflow-y:auto}.feedback-intro{margin-top:4px}.feedback-disclosure,.feedback-muted{color:#b9cdd5;font-size:13px}.feedback-dialog textarea{color:#eef4f5;resize:vertical;background:#0e2029;border:1px solid #68838c;border-radius:8px;min-height:112px;max-height:220px;margin:8px 0 4px}.feedback-dialog textarea::placeholder{color:#a9bbc1}.feedback-dialog label{margin-top:12px;display:block}.feedback-dialog input[type=checkbox]{margin-right:8px}.feedback-dialog details{margin:12px 0}.feedback-dialog summary{cursor:pointer;padding:4px 0}.feedback-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.feedback-dialog img{object-fit:contain;border-radius:6px;max-width:100%;max-height:180px}.feedback-dialog audio{width:100%;max-width:100%;margin:8px 0}.feedback-dialog [data-error],.feedback-dialog [data-voice-status]{color:#f5c692}.feedback-dialog [data-error]:empty,.feedback-dialog [data-voice-status]:empty,.feedback-dialog [data-count]:empty,.feedback-dialog [data-mode-note]:empty{display:none}.feedback-actions{border-top:1px solid #3c555e;flex-wrap:wrap;flex:none;gap:8px;margin-top:12px;padding-top:16px;display:flex}.feedback-dialog button{min-height:42px;margin:0}.feedback-dialog button.feedback-secondary{color:#dae8ed;background:0 0;border-color:#68838c}.feedback-dialog button:disabled{cursor:default;opacity:.5}@media (prefers-reduced-motion:reduce){.feedback-dialog button{transition:none}}.feedback-dialog :is(button,textarea,summary,input):focus-visible{outline-offset:3px;outline:3px solid #8cf5cf}.feedback-voice{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.feedback-check{color:#b0f3d9;background:#20483d;border-radius:50%;place-items:center;width:36px;height:36px;display:inline-grid}.feedback-dialog [data-submitted-text],.feedback-dialog .playtest-comment{overflow-wrap:anywhere;white-space:pre-wrap}.feedback-dialog .playtest-comments{max-height:none}.feedback-dialog [data-history] button{margin:4px 6px 0 0}.feedback-dialog [hidden]{display:none}@media (width<=660px),(height<=560px){.feedback-dialog{padding:16px}.feedback-dialog h2{font-size:19px}.feedback-actions{gap:6px;padding-top:10px}.feedback-actions button{padding:8px 10px}}.playtest-panel [data-feedback-state]{min-block-size:1.2em;min-inline-size:15ch;font-size:10px;line-height:1.2;display:block}@media (width>=1100px){.workshop-body{grid-template-columns:330px minmax(300px,1fr) 278px}}.parts-panel{padding:18px 14px}.parts-panel>h2{margin:0 0 12px}.parts-browser{min-width:0}.catalog-head,.catalog-search{gap:6px;margin:10px 0;display:flex}.catalog-head{justify-content:flex-end;min-height:0}.parts-browser:not(.catalog-expanded)>.catalog-head{display:none}.catalog-search input{color:#edf4f5;background:#101e26;border:1px solid #59717c;border-radius:8px;width:100%;min-width:0;padding:10px}.catalog-search button{padding:6px;font-size:11px}.catalog-categories{flex-wrap:wrap;gap:5px;display:flex}.catalog-categories button{border-radius:16px;padding:6px 9px;font-size:12px}.catalog-categories button[aria-pressed=true]{color:#17232b;background:#f5b866;border-color:#f5b866}.catalog-count{color:#b2c5cd;margin:14px 0 8px;font-size:12px}.catalog-grid{align-content:start;gap:7px;padding:2px;display:grid;overflow-y:auto}.catalog-entry{flex-direction:column;min-width:0;display:flex;position:relative}.catalog-entry[hidden],.parts-browser [hidden],.part-placement[hidden],.part-placement [hidden]{display:none}.catalog-entry .part-card{text-align:center;background:#20333d;border-radius:9px;flex-direction:column;justify-content:start;align-items:center;gap:5px;width:100%;min-height:122px;padding:12px 4px 8px;font-size:12px;line-height:1.25;display:flex}.catalog-entry .part-icon{object-fit:contain;width:76px;max-width:100%;height:64px}.catalog-entry .part-card:hover{background:#2b4550;border-color:#f5b866}.catalog-entry .part-card:focus-visible{outline-offset:1px;outline:2px solid #f5b866}.catalog-entry .part-help-button{position:absolute;top:2px;right:2px}.catalog-entry>.part-about{width:24px;height:24px;padding:0;font-size:15px;position:absolute;top:2px;right:2px}.catalog-entry>.catalog-favorite{z-index:1;color:#9fb5bf;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;width:28px;height:28px;padding:0;display:grid;position:absolute;top:2px;left:2px}.catalog-entry>.catalog-favorite:hover{color:#f5c286;background:#ffffff10}.catalog-entry>.catalog-favorite .star-filled,.catalog-entry>.catalog-favorite[aria-pressed=true] .star-outline{display:none}.catalog-entry>.catalog-favorite[aria-pressed=true] .star-filled{display:block}.catalog-entry>.catalog-favorite[aria-pressed=true]{color:#f5b866}.catalog-entry>.catalog-favorite:focus-visible{outline-offset:1px;outline:2px solid #f5b866}.catalog-reason{color:#b7cbd2;padding:4px 3px;font-size:10px;line-height:1.3}.catalog-reason:empty{display:none}.catalog-summary{background:#ffffff06;border:1px solid #334b56;border-radius:8px;margin-top:12px;padding:12px}.catalog-summary strong{font-size:14px}.catalog-summary p{color:#b9cbd2;margin:6px 0 10px;font-size:12px}.catalog-notice{color:#f5c286;font-size:12px}.catalog-expanded{z-index:35;background:#172830;border:1px solid #64838c;border-radius:14px;width:min(760px,100vw - 40px);padding:20px;position:fixed;inset:90px auto 20px 20px;overflow-y:auto;box-shadow:0 16px 50px #0008}.part-placement{z-index:12;background:#192e35f5;border:1px solid #7ba69e;border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px 10px;width:max-content;max-width:calc(100% - 160px);margin-inline:auto;padding:9px 12px;display:flex;position:absolute;bottom:20px;left:148px;right:12px;box-shadow:0 12px 30px #0006}.part-placement .placement-part{font-size:13px}.part-placement p{color:#b9d4cd;flex:auto;min-width:0;margin:0;font-size:13px}.part-placement button{white-space:nowrap;padding:7px 12px;font-size:13px}.part-placement .placement-precise{position:static}.part-placement summary{cursor:pointer;white-space:nowrap;color:#cfe9e3;border:1px solid #4d6b73;border-radius:999px;padding:6px 11px;font-size:12px;list-style:none}.part-placement summary::-webkit-details-marker{display:none}.part-placement summary:hover,.part-placement details[open] summary{background:#27454e;border-color:#9db1b9}.placement-coordinates{box-sizing:border-box;background:#192e35fa;border:1px solid #7ba69e;border-radius:12px;gap:8px;min-width:320px;margin:0;padding:10px 12px;display:flex;position:absolute;bottom:calc(100% + 8px);left:0;right:0;box-shadow:0 12px 30px #0006}.part-placement details:not([open]) .placement-coordinates{display:none}.placement-coordinates label{flex:1;min-width:0;font-size:12px}.placement-coordinates input{box-sizing:border-box;width:100%;margin-top:4px}.help-find-part{margin-top:7px;padding:4px 8px;font-size:11px}.part-help:has(#part-help-page-0:not([hidden])):not([style*=height]){height:auto;max-height:calc(100vh - 88px)}@media (width<=900px){.parts-browser:not(.catalog-expanded){display:none}.catalog-expanded{width:auto;inset:76px 8px 8px}}.catalog-grid:not(.catalog-essentials) .catalog-entry .part-purpose{display:none}.catalog-essentials .catalog-entry .part-purpose{color:#9fb5bf;font-size:10px;line-height:1.3}@media (width>=901px) and (width<=1100px){.workshop-body{grid-template-columns:300px minmax(240px,1fr) 245px}}.part-help-tooltip{z-index:45}.workshop:has(.part-placement:not([hidden]) .placement-coordinates:not([hidden])) [aria-label=Edit\ tools] [data-edit-tool]{display:none}.parts-panel{flex-direction:column;min-height:0;display:flex;overflow:hidden}.parts-panel>:not(.parts-browser){flex-shrink:0}.parts-browser{flex-direction:column;flex:1;min-height:0;display:flex}.parts-browser>:not(.catalog-grid){flex-shrink:0}.catalog-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(min(100%,5.5rem),1fr));min-height:0;max-height:none}.catalog-expanded{overflow:hidden}.catalog-expanded .catalog-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,7rem),1fr));max-height:none}.catalog-entry .part-card{font-size:.8rem}@media (width<=900px){.workshop-body{grid-template-rows:auto minmax(240px,1fr) minmax(100px,180px);grid-template-columns:minmax(0,1fr)}.parts-panel{flex-flow:wrap;grid-area:1/1;align-items:center;gap:8px;padding:6px 12px;overflow:visible}.parts-panel>h2,.parts-panel>.palette-hint{display:none}.parts-browser:not(.catalog-expanded){flex:none}.parts-panel .recording-panel{margin:0}.parts-panel .recording-panel[open]{flex-basis:100%}.workshop-body>.viewport{grid-area:2/1}.workshop-body>.inspector-panel{border-top:1px solid #31434e;border-left:0;grid-area:3/1}.catalog-expanded{inset:8px}}@media (width>=901px){.parts-panel:has(.recording-panel[open]) .parts-browser:not(.catalog-expanded){overflow-y:auto}.parts-panel:has(.recording-panel[open]) .parts-browser:not(.catalog-expanded) .catalog-grid{flex:none;overflow:visible}.parts-panel{position:relative}.parts-panel>.palette-hint{display:none}.parts-browser:not(.catalog-expanded) .catalog-search{margin:8px 0}.parts-browser:not(.catalog-expanded) .catalog-summary:not([hidden]){gap:6px;padding:8px;display:grid}.parts-browser:not(.catalog-expanded) .catalog-summary strong{font-size:.8rem}.parts-browser:not(.catalog-expanded) .catalog-summary p{margin:0}}.rope-field{gap:.25rem;margin-block:.5rem;display:grid}.rope-field input,.rope-field select{box-sizing:border-box;width:100%;min-width:0}.rope-editor{min-width:0;margin-block:.75rem}.catalog-connection{grid-column:1/-1}.parts-panel.scene-editing{display:block;overflow:auto}.machine-camera{z-index:3;background:#10202b;position:absolute;inset:0}.machine-camera[hidden]{display:none}.machine-camera-image{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.stage .machine-camera-image canvas{object-fit:contain;width:100%;height:100%}.machine-camera-bar{background:#172a33ee;border-radius:9px;gap:8px;padding:8px;display:grid;position:absolute;top:12px;left:12px;right:12px}.machine-camera-header{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.machine-camera-active .machine-panels{max-height:min(45%, max(0px, calc(100% - var(--camera-bar-bottom) - 45px)))}.machine-camera-active .machine-control-region>.vehicle-controls{flex:none;max-height:none}@media (height<=600px){.machine-camera-bar{gap:4px;padding:6px}}.machine-camera-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.machine-camera-exit{flex-shrink:0;min-height:44px}.machine-camera-exit kbd{font:inherit;border:1px solid;border-radius:3px;margin-left:8px;padding:1px 4px;font-size:.8em}.machine-camera-photo-actions{flex-wrap:wrap;gap:6px;display:flex}.machine-camera-bar output{overflow-wrap:anywhere;max-height:3.9em;font-size:13px;overflow:auto}@media (height<=600px){.machine-camera-bar output{max-height:1.3em}}.camera-inspector [data-camera-actions]{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.camera-inspector [data-camera-view]{min-height:44px}.camera-inspector [data-camera-photo-actions]{gap:6px;display:flex}.camera-photos-reopen{z-index:4;position:absolute;top:100px;left:16px}.camera-gallery{color:#eef4f6;background:#172a33;max-width:min(640px,90vw);max-height:85vh;padding:20px;overflow:auto}.camera-gallery img{width:320px;max-width:100%;height:auto;margin:12px auto;display:block}.camera-gallery select{width:100%;display:block}.camera-inspector{flex-wrap:wrap;gap:6px;display:flex}.camera-inspector output,.camera-inspector p{flex-basis:100%}.machine-camera-active .edit-toolbar{visibility:hidden}.dialog-header{z-index:1;background:inherit;justify-content:space-between;align-items:flex-start;gap:12px;margin:-20px -20px 12px;padding:20px 20px 10px;display:flex;position:sticky;top:-20px}.machine-check .dialog-header,.feedback-dialog .dialog-header{margin:-24px -24px 12px;padding:24px 24px 10px;top:-24px}.playtest-dialog:not(.feedback-dialog) .dialog-header{margin:-28px -28px 12px;padding:28px 28px 10px;top:-28px}.scene-browser .dialog-header{margin:-1.2rem -1.2rem 12px;padding:1.2rem 1.2rem 10px;top:-1.2rem}.learning-workspace .dialog-header{margin:0;padding:12px;top:0}.assembly-browser .dialog-header{margin:0;padding:0;position:static}@media (width<=660px),(height<=560px){.feedback-dialog .dialog-header{margin:-16px -16px 10px;padding:16px 16px 8px;top:-16px}}.dialog-header h2{flex:1;align-self:center;min-width:0;margin:0}button.dialog-close{width:36px;height:36px;min-height:0;color:inherit;background:#24343f;border:1px solid #3a4d58;border-radius:7px;flex:0 0 36px;margin:0;padding:0;font-size:24px;font-weight:400;line-height:1}button.dialog-close:hover:not(:disabled){background:#344953;border-color:#9db1b9}button.dialog-close:focus-visible{outline-offset:3px;outline:2px solid #ffc27a}.sound-controls{flex:none;align-items:center;gap:0;display:inline-flex}.attempt-controls{background:#192e38e8;border:1px solid #39515b;border-radius:9px;gap:6px;padding:4px}.attempt-controls>button,.sound-controls>button{white-space:nowrap;min-height:34px;padding:6px 10px;font-size:13px}.sound-controls>button:first-child{border-right:0;border-radius:6px 0 0 6px}.sound-controls>.sound-settings{border-radius:0 6px 6px 0;justify-content:center;align-items:center;width:30px;min-width:30px;padding:6px;display:inline-flex}.sound-controls>button[aria-pressed=true]{color:#efc379}.sound-volume{box-sizing:border-box;color:#e4eef0;background:#192e38;border:1px solid #4b626b;border-radius:10px;width:min(220px,100vw - 24px);margin:0;padding:14px 16px;position:fixed;inset:auto;box-shadow:0 8px 24px #0005}.sound-volume[hidden],.sound-status[hidden]{display:none}.sound-volume label{grid-template-columns:1fr auto;gap:12px;font-size:13px;display:grid}.sound-volume output{color:#b6c7cd;font-variant-numeric:tabular-nums;grid-area:1/2}.sound-volume input{accent-color:#efb85e;grid-area:2/1/auto/-1;width:100%;margin:0}.sound-status{max-width:220px;padding:4px 8px;font-size:.85rem}.filebar button.has-whats-new{position:relative}.whats-new-badge{background:#f2c14e;border-radius:50%;width:7px;height:7px;position:absolute;top:2px;right:2px;box-shadow:0 0 0 2px #0f1b21}.whats-new-note{color:#a9bcc0;display:block}.whats-new-list{margin:0;padding:0;list-style:none}.whats-new-list li{margin:0 0 12px}.whats-new-list h4{margin:0 8px 0 0;font-size:14px;display:inline}.whats-new-list time{color:#a9bcc0;font-size:12px}.whats-new-list p{margin:2px 0 4px}.whats-new-status[hidden],.whats-new-list[hidden],.whats-new-seen[hidden],.whats-new-notice[hidden]{display:none}.whats-new-notice{z-index:45;color:#e4eef0;background:#1a2f38;border:1px solid #75898b;border-radius:12px;width:min(440px,100% - 32px);max-height:calc(100% - 110px);padding:0 12px 12px;position:absolute;top:90px;right:16px;overflow:auto;box-shadow:0 12px 40px #10232940}.whats-new-notice .dialog-header{margin:0 -12px 8px;padding:12px;top:0}.whats-new-notice h2{font-size:18px}.whats-new-notice:focus-visible{outline:3px solid #8cf5cf}.whats-new-actions{flex-wrap:wrap;gap:8px;display:flex}.filebar .github-link{width:36px;color:inherit;padding:0}.filebar .github-link:hover{background:#344953;box-shadow:inset 0 0 0 1px #9db1b9}.help-about{color:#a9bcc0;margin:12px 0 8px}.help-about a{color:inherit}@media (prefers-reduced-motion:reduce){button{transition:none}}.catalog-expanded>.recording-panel{flex:none;max-height:40%;overflow:auto}.placement-rotation{align-items:center;gap:3px;display:flex}.placement-rotation button[aria-pressed=true],.part-placement button[aria-pressed=true]{border-color:#ffc778;box-shadow:inset 0 0 0 1px #ffc778}.placement-connectors{flex-wrap:wrap;flex-basis:100%;gap:12px;display:flex}.placement-connectors label{flex:180px;gap:4px;display:grid}.placement-connectors select{min-width:0;max-width:100%}.placement-operation{z-index:12;background:#192e35f5;border:1px solid #7ba69e;border-radius:12px;max-height:calc(100% - 175px);position:absolute;bottom:20px;left:148px;right:12px;overflow-y:auto}.placement-operation:not(:has(>:not([hidden]))){display:none}.placement-operation>.part-placement{width:auto;max-width:none;box-shadow:none;background:0 0;border:0;position:static}.placement-operation>.surface-placement{margin:0;padding:10px 12px}.surface-placement[data-shared-owner=catalog] .surface-confirmation,.surface-placement[data-shared-owner=catalog] [data-shared-placement]{display:none}.placement-operation:has(.surface-placement[data-shared-owner=catalog]:not([hidden])) .placement-tools-body{max-height:8vh}.surface-placement[data-shared-owner=catalog] .surface-tools-body{max-height:14vh}.placement-rotation-tool summary{cursor:pointer;font-size:13px}.placement-rotation-tool[open] .placement-rotation{margin-top:8px}.placement-operation{flex-direction:column;display:flex;overflow:hidden}.placement-operation>.surface-placement{order:-1;min-height:0;overflow-y:auto}.placement-operation>.part-placement{flex-direction:column;flex-shrink:0;align-items:stretch;padding:0;display:flex}.placement-tools-body{flex-wrap:wrap;align-items:center;gap:8px;max-height:14vh;padding:10px 12px;display:flex;overflow-y:auto}.placement-finish-row{background:#192e35;border-top:1px solid #49616b;flex-wrap:wrap;flex-shrink:0;gap:8px;padding:10px 12px;display:flex}.placement-instruction{flex-basis:100%;min-height:2.5em}.placement-connector-cues{pointer-events:none;z-index:11;position:absolute;inset:0}.placement-connector-cues>*{max-width:220px;font-size:12px;position:absolute}.placement-connector-cues button{pointer-events:auto;background:#192e35;border:1px dashed #8cf5cf}.placement-connector-cues button[aria-pressed=true]{border-style:solid;border-width:2px}.placement-connector-source{background:#192e35;border:2px solid #ffc778;border-radius:4px;padding:4px}.placement-operation>.part-placement[hidden],.placement-connector-cues>[hidden]{display:none}.placement-rotation{flex-wrap:wrap}.placement-rotation label{white-space:nowrap;flex:auto;align-items:center;gap:6px;display:inline-flex}.placement-rotation input{width:7em;max-width:100%}.placement-operation>.part-placement{min-width:0;margin:0}.placement-operation>.surface-placement{flex-direction:column;display:flex;overflow:hidden}.placement-operation>.surface-placement[hidden]{display:none}.surface-tools-body{min-height:0;overflow-y:auto}.placement-operation .surface-confirmation{flex-shrink:0}.placement-connector-cues button{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.part-placement .placement-instruction{flex:0 0 100%;order:10;min-height:3em}.placement-heading{flex-shrink:0;padding:8px 12px 0}.placement-heading .placement-state{margin:4px 0}.placement-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:8px;display:grid}.placement-heading .placement-part,.placement-heading .placement-state{grid-column:1}.placement-view-actions{flex-direction:column;grid-area:1/2/span 2;gap:4px;display:flex}.placement-selection-context{color:#a9bcc0;margin:8px 12px;font-size:12px}.surface-heading{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:6px 12px;display:flex}.surface-heading:not(:has(>:not([hidden]):not([data-shared-placement]))){min-height:0}.surface-placement[data-shared-owner=catalog] .surface-heading:has(>button[hidden]):not(:has(>button:not([hidden]):not([data-shared-placement]))){padding:0}.placement-scope{flex-basis:100%}.placement-scope ul{margin:6px 0;padding-left:20px}.placement-tools-body,.surface-tools-body{scrollbar-width:thin;scrollbar-color:#8baaa7 #233940;scrollbar-gutter:stable}.placement-tools-body::-webkit-scrollbar{width:8px}.surface-tools-body::-webkit-scrollbar{width:8px}.placement-tools-body::-webkit-scrollbar-track{background:#233940}.surface-tools-body::-webkit-scrollbar-track{background:#233940}.placement-tools-body::-webkit-scrollbar-thumb{background:#8baaa7;border-radius:4px}.surface-tools-body::-webkit-scrollbar-thumb{background:#8baaa7;border-radius:4px}.placement-camera-tools{flex-basis:100%}.placement-camera-tools .surface-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.placement-operation .surface-tools-body{max-height:18vh}.placement-operation .surface-tools-body p{min-height:0}.placement-operation .surface-confirmation .surface-state{min-height:2.5em}.surface-alignment-actions{flex-wrap:wrap;gap:6px;display:flex}.surface-landing-readout{color:#b6ffeb;padding:4px 0;font-size:12px}.surface-alignment-actions[hidden],.surface-landing-readout[hidden]{display:none}.surface-landing-readout{pointer-events:none;max-width:none;position:static;transform:none}.surface-cue{max-width:200px}.placement-operation>.part-placement,.placement-tools-body{flex-shrink:1;min-height:0}@media (width<=900px){.workshop:has(.placement-operation>:not([hidden])){min-height:0}.workshop:has(.placement-operation>:not([hidden]))>.workshop-header{display:none}.workshop:has(.placement-operation>:not([hidden])) .workshop-body>.parts-panel{display:none}.workshop:has(.placement-operation>:not([hidden])) .workshop-body>.inspector-panel{display:none}.workshop:has(.placement-operation>:not([hidden])) .workshop-body{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.workshop:has(.placement-operation>:not([hidden])) .viewport{grid-area:1/1;min-height:0}.placement-operation{max-height:calc(100% - 210px);bottom:92px;left:12px;right:12px}.placement-heading{grid-template-columns:minmax(0,1fr) minmax(0,auto)}.placement-heading button{white-space:normal}.placement-operation .surface-placement{min-width:0}}@media (width>=640px) and (width<=900px) and (height<=560px){.placement-operation{width:320px;max-height:none;inset:8px 8px 58px auto}.workshop:has(.placement-operation>:not([hidden])) .edit-toolbar{max-width:calc(100% - 360px)}.machine-camera-active .placement-operation{top:var(--camera-bar-bottom)}}
