#viewer{position:relative}
#jz-wings{position:absolute;inset:0;pointer-events:none;z-index:12}#jz-wings[hidden]{display:none}
.jz-wing{position:absolute;width:48px;height:62px;transform:translate(-50%,-50%);padding:0!important;border:0!important;background:transparent!important;pointer-events:auto;filter:drop-shadow(0 3px 4px #0002);cursor:pointer;overflow:visible}
.jz-wing svg{width:100%;height:100%;transform:rotate(var(--wing-angle,0deg));overflow:visible}.jz-wing.gear{width:65px;height:42px}.jz-wing.gear svg{transform:none}.wing-body{fill:#e6e7e7;stroke:#a3a9a9;stroke-width:1.5}.wing-symbol{fill:none;stroke:#636b6b;stroke-width:3;stroke-linecap:round}.gear .wing-symbol{fill:#636b6b;stroke:none}
.jz-wing:not(.gear) .wing-symbol{transform-origin:53px 65px;transform:rotate(calc(-1 * var(--wing-angle,0deg)))}
.jz-wing span{position:absolute;left:50%;top:100%;transform:translateX(-50%);font-size:10px;line-height:1.4;color:#525b5b;background:#fffE;border-radius:3px;padding:1px 4px;white-space:nowrap}
.jz-wing:hover .wing-body,.jz-wing:focus-visible .wing-body{fill:#dae9ee;stroke:#4090ad}.jz-wing:focus-visible{outline:2px solid #4090ad;outline-offset:4px;border-radius:6px}
#viewer{position:absolute;inset:0 0 58px;height:calc(100% - 58px)}
#jz-toolstrip{position:absolute;left:0;right:0;bottom:0;transform:none;display:flex;align-items:center;gap:5px;padding:8px 12px;height:58px;border:0;border-top:1px solid #d9dedc;border-radius:0;background:#faf9f6;box-shadow:none;z-index:20;width:100%;overflow-x:auto}
#jz-toolstrip button{flex-shrink:0;width:32px;height:34px;border:0;padding:6px;color:#5c6562;background:transparent;border-radius:4px}#jz-toolstrip svg{width:20px;height:20px}#jz-toolstrip button[aria-pressed=true]{background:#343d3a;color:white}#jz-toolstrip button:hover{background:#e5eae8}#jz-toolstrip button[aria-pressed=true]:hover{background:#343d3a}#jz-toolstrip button:disabled{opacity:.3}#jz-toolstrip #tool-trash{color:#a0493e}
#jz-toolstrip #view,#jz-toolstrip #dimension{width:auto;min-width:40px}#jz-toolstrip button.active{background:#343d3a;color:white}
#jz-tool-status{font-size:11px;color:#66716b;white-space:nowrap;margin-left:auto}#jz-tool-status:empty{display:none}
body .stage .stage-bottom{bottom:72px}
.jz-wing.horizontal{filter:none}.jz-wing.horizontal svg{transform:none}.horizontal-symbol{stroke:#636b6b;stroke-width:2;fill:none;stroke-linecap:round}.jz-wing.horizontal .wing-body{fill:#e5e9e9;fill-opacity:.8;stroke:#aab3b3;stroke-width:1}.jz-wing.horizontal:hover .wing-body,.jz-wing.horizontal:focus-visible .wing-body{fill:#b9deeb}
.jz-wing.horizontal,.jz-wing.horizontal svg,.jz-wing.horizontal .wing-body,.jz-wing.horizontal circle,.jz-wing.horizontal .horizontal-symbol{pointer-events:none}.jz-wing.horizontal .wing-hit{pointer-events:fill}
#loose-parts-panel{border-top:1px solid #e2e5e1;margin-top:20px;padding-top:18px}#loose-parts-panel label{display:flex;flex-direction:column;gap:5px;font-size:12px;margin:9px 0}#loose-parts-panel input,#loose-parts-panel select{width:100%;min-width:0;border:1px solid #d8dcd8;border-radius:4px;padding:7px;background:white}.part-coordinates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}#loose-parts-panel [hidden]{display:none!important}.shortcut-list{display:grid;grid-template-columns:minmax(100px,1fr) 2fr;gap:10px 16px;font-size:13px}.shortcut-list dt{font-weight:600}.shortcut-list dd{margin:0;color:#56615c}
#selected-face-panel[hidden]{display:none}#selected-face-panel{padding:14px 0 18px;border-bottom:1px solid #d9dedc;margin-bottom:18px}.face-color-swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:12px 0}.face-color-swatches button{aspect-ratio:1;border:1px solid #ddd;min-height:32px}.face-color-swatches button[aria-pressed=true]{outline:2px solid #283b33;outline-offset:2px}#delete-selected-face{border:1px solid #d9dedc;padding:8px 12px;color:#9c493b}
#frame-edit-panel{border-top:1px solid #d9dedc;margin-top:18px;padding-top:14px}#frame-edit-panel label{display:block;margin:12px 0}#frame-edit-panel select{max-width:100%}#frame-edit-panel button{padding:8px 10px;border:1px solid #d9dedc}#frame-edit-panel [hidden]{display:none}#selected-frame-label{font-size:12px;color:#606d66;overflow-wrap:anywhere}
@media(max-width:700px){#jz-toolstrip{gap:2px;padding:8px 5px;flex-wrap:nowrap}#jz-toolstrip button{width:28px;height:30px;padding:4px}#jz-tool-status{display:none}.jz-wing{width:40px;height:52px}.jz-wing.gear{width:54px;height:35px}.shortcut-list{grid-template-columns:1fr}.shortcut-list dd{margin-bottom:8px}body .stage{min-height:390px}body .stage .stage-bottom{bottom:68px}}

body .stage .stage-bottom{display:none!important} body .stage > #measure{position:absolute;top:18px;left:22px;right:auto;bottom:auto;display:flex;gap:12px;align-items:center;z-index:5;background:transparent;border:0;box-shadow:none;padding:0;color:#777;font-size:13px;pointer-events:none} body .stage > #measure[hidden]{display:none} @media(max-width:700px){body .stage > #measure{top:12px;left:12px;gap:8px;font-size:11px}}

body .stage > #measure{transform:none;max-width:calc(100% - 44px);white-space:normal;flex-wrap:wrap;letter-spacing:0;line-height:1.5}body .stage > #measure span{display:block}body .stage .grow[hidden]{display:none}

body .stage .fixed-wing{position:absolute;z-index:6;padding:0;border:0;border-radius:0;background:rgba(187,193,191,.3);color:white;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;transform:none;transition:background .15s}body .stage .fixed-wing:hover{background:rgba(155,178,186,.5)}body .stage .fixed-wing-plus{display:flex;align-items:center;justify-content:center;border:2px solid white;border-radius:50%;width:34px;height:34px;font:bold 24px Arial}body .stage #grow-up{top:18%;left:25%;right:auto;width:50%;height:65px;clip-path:polygon(0 66%,50% 0,100% 66%,100% 100%,0 100%)}body .stage #grow-left{top:35%;left:7%;right:auto;width:65px;height:36%;clip-path:polygon(100% 0,100% 100%,66% 100%,0 50%,66% 0)}body .stage #grow-right{top:35%;right:7%;left:auto;width:65px;height:36%;clip-path:polygon(0 0,34% 0,100% 50%,34% 100%,0 100%)}@media(max-width:700px){body .stage #grow-up{height:42px;top:20%}body .stage #grow-left,body .stage #grow-right{width:38px}body .stage #grow-left{left:3%}body .stage #grow-right{right:3%}body .stage .fixed-wing-plus{width:26px;height:26px;font-size:19px}}

body .stage .fixed-wing{visibility:visible}body .stage .fixed-wing[hidden]{display:none}body .stage #grow-up{clip-path:polygon(0 65%,50% 0,100% 65%,100% 100%,0 100%)}

#viewer canvas,#viewer canvas:focus,#viewer canvas:focus-visible{outline:none!important;border:0!important;box-shadow:none!important}body .stage .fixed-wing{background:rgba(176,183,180,.28)}body .stage .fixed-wing:focus{outline:none}.wing-round-plus{position:absolute;z-index:7;pointer-events:none;width:25px;height:25px;border:2px solid #fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font:600 19px Arial;color:white;transform:translate(-50%,-50%)}.wing-round-plus[hidden],.model-dimension[hidden]{display:none}.model-dimension{position:absolute;z-index:5;pointer-events:none;font:14px Arial;color:#5b5e5d;background:rgba(255,255,255,.65);padding:1px 4px;white-space:nowrap}

body .stage #toast{position:absolute;left:50%;right:auto;top:auto;bottom:74px;transform:translateX(-50%);z-index:50;max-width:calc(100% - 32px);width:max-content;height:auto;min-height:0;padding:11px 18px;background:#343d32;color:#fff;font-size:13px;line-height:1.6;white-space:normal;text-align:center;pointer-events:none;box-shadow:0 3px 12px #0002}body .stage #grow-up{background:linear-gradient(to top,rgba(174,184,180,.90),rgba(174,184,180,.03))}body .stage #grow-left{background:linear-gradient(to left,rgba(174,184,180,.90),rgba(174,184,180,.03))}body .stage #grow-right{background:linear-gradient(to right,rgba(174,184,180,.90),rgba(174,184,180,.03))}body .stage .fixed-wing:hover{filter:brightness(.96)}

.accessory-model .model-option-image{display:block;width:100%;height:auto;aspect-ratio:16/11;object-fit:contain;margin:0 auto;pointer-events:none}

#docking-targets{position:absolute;inset:0;z-index:30;pointer-events:none}.docking-port{position:absolute;width:18px;height:18px;min-width:0;min-height:0;border:2px solid #26775b;background:#d7f8e6c9;border-radius:50%;transform:translate(-50%,-50%);pointer-events:auto;padding:0}.docking-port:hover,.docking-port.hover{background:#47dba0;box-shadow:0 0 0 5px #5ef1ac44}#docking-banner{position:absolute;top:55px;left:50%;transform:translateX(-50%);z-index:32;background:#fffE;border:1px solid #bad6c8;padding:8px 12px;display:flex;gap:14px;max-width:95%;font-size:12px}#docking-banner[hidden]{display:none}#docking-banner button{color:#9c493b}.dock-lengths{display:flex;flex-wrap:wrap;gap:10px}.dock-lengths button{border:1px solid #9eb5aa;padding:12px 18px}.dock-lengths button:hover{background:#e3efe8}

#docking-preview{position:absolute;z-index:35;pointer-events:none;transform:translate(15px,-50%);background:#e4fff1ee;color:#27664e;border:1px dashed #359e75;padding:7px 10px;font-size:12px;white-space:nowrap}#docking-preview[hidden]{display:none}

[data-page="parts"] #loose-parts-panel{border-top:0;margin-top:0;padding-top:0}@media(max-width:700px){.topbar .tabs{gap:5px}.topbar .tabs button{white-space:nowrap;padding-left:7px;padding-right:7px}}

.topbar .tabs [data-tab=parts]{order:3!important}

.advanced-assembly .assembly>h3,.advanced-assembly .assembly>.assembly-selection,.advanced-assembly .assembly>.hint,.advanced-assembly .assembly>.add-directions,.advanced-assembly .assembly>#remove-module,.advanced-assembly .assembly>#layout-status,.advanced-assembly .assembly>#edit-module{display:none}.advanced-assembly .layout-presets{grid-template-columns:1fr}

.editable-trolley [data-page=structure]>:not(#trolley-structure),.editable-trolley [data-page=function]>:not(#designer-editor){display:none!important}#trolley-structure input[type=number]{width:125px;padding:7px;border:1px solid #aaa}#designer-editor .designer-colors{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}#designer-editor .choices{margin:16px 0}#add-frame-junction,#add-part-junction{padding:8px;border:1px solid #aaa;margin:8px 0}#confirm-rail-junction:disabled{color:#999;background:#eee}
#trolley-structure .select-row{display:flex!important}

#jz-history-tools{position:absolute;right:16px;top:16px;display:flex;gap:6px;padding:5px;background:rgba(250,249,246,.94);border:1px solid #d9dedc;border-radius:6px;z-index:25}#jz-history-tools button{width:36px;height:36px;padding:7px;border:0;border-radius:4px;background:transparent;color:#5c6562}#jz-history-tools svg{width:22px;height:22px}#jz-history-tools button:hover{background:#e5eae8}#jz-history-tools button:disabled{opacity:.3}#jz-history-tools #tool-trash{color:#a0493e}

#jz-toolstrip #zoom-in,#jz-toolstrip #tool-ball,#jz-toolstrip #tool-keyboard{margin-left:22px}@media(max-width:700px){#jz-toolstrip #zoom-in,#jz-toolstrip #tool-ball,#jz-toolstrip #tool-keyboard{margin-left:14px}}
