
*{box-sizing:border-box}body{margin:0;background:#eef3f6;color:#173347;font:14px system-ui}main{max-width:1600px;margin:auto;padding:24px}h1{margin:0}p{line-height:1.7;color:#536a78}.layout{display:grid;grid-template-columns:300px 1fr;gap:18px}.panel,.view{min-width:0;background:#fff;padding:18px;border-radius:12px;border:1px solid #d5e1e8}label{display:block;font-size:12px;margin:12px 0 5px}select,input,button{width:100%;min-width:0;font:inherit;padding:9px;border-radius:6px;border:1px solid #b8cbd5;background:white;color:inherit}button{cursor:pointer;margin-top:10px;background:#087e87;color:white;border:0}button.secondary{background:#e8f1f4;color:#264e60}.row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.views{display:grid;grid-template-columns:1fr 1fr;gap:16px}#top{width:100%;height:620px;touch-action:none;background:#f7fafb;border-radius:8px}#three{width:100%;height:480px;border-radius:8px;overflow:hidden}h2{font-size:17px}.hint{font-size:12px}.status{background:#fff3dc;padding:12px;border-radius:6px;line-height:1.7;font-size:12px}#assembly button{text-align:left;background:#edf4f7;color:#254e60}#assembly button.active{background:#087e87;color:white}table{width:100%;table-layout:fixed;overflow-wrap:anywhere;border-collapse:collapse;font-size:13px}td,th{text-align:left;padding:9px;border-bottom:1px solid #dce5eb}#menu{position:fixed;z-index:5;background:white;box-shadow:0 5px 30px #17334744;border-radius:8px;padding:8px;width:230px}#menu[hidden]{display:none}#menu button{margin:2px 0}a{color:#087e87}summary{cursor:pointer}#message{min-height:38px;color:#9b4519}.views>div{min-width:0}canvas{display:block;max-width:100%}@media(max-width:1100px){.views{grid-template-columns:1fr}}@media(max-width:700px){main{padding:10px}.layout{grid-template-columns:1fr}}
button:disabled{opacity:.45;cursor:default}.control-card{margin-top:16px;padding:14px;border:1px solid #d9e5e9;border-radius:10px;background:#f8fbfc}.control-card h3{margin:0 0 8px;font-size:14px}.control-card p{margin:6px 0}.toggle{display:flex;align-items:center;gap:10px;font-size:14px}.toggle input{width:18px;height:18px;margin:0}.group-state{font-size:13px;color:#087e87;line-height:1.6}.control-card label{margin-top:8px}#assembly button small{display:block;opacity:.85;margin-top:5px;font-size:11px}#assembly{user-select:none}.layer-group{border:1px solid #b9a2d1;border-left:3px solid #8861b0;border-radius:8px;margin:12px 0;padding:6px}#assembly .group-header{background:#eee7f6;color:#60418a;margin:0;font-weight:600}#assembly .group-header[aria-pressed="true"]{background:#d7eeed;color:#086c74}#assembly .layer-group .layer-item{margin-left:10px;width:calc(100% - 10px)}#assembly .layer-item{border:1px solid transparent}#assembly .layer-item.active{border-color:#004f59}#group small,#ungroup small{display:block;font-size:10px;margin-top:3px}button:focus-visible{outline:3px solid #e4a22d;outline-offset:2px}#menu{max-height:calc(100vh - 16px);overflow-y:auto}#menu hr{border:0;border-top:1px solid #dce5eb;margin:6px 0}#menuSelection{padding:5px 8px;color:#536a78}#menu button{text-align:left}#menu small{float:right;display:inline;margin:0;opacity:.7}#manualPreview section,#manualPreview header{border:1px solid #dce5e9;border-radius:8px;padding:18px;margin:14px 0;background:white}#manualPreview svg{width:100%;max-height:280px}#manualPreview figure{margin:0}#manualPreview .pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}#manualPreview .step-number{font-weight:bold;color:#007f88}#manualPreview .warning{background:#fff3df;padding:10px;color:#934800}#manualPreview table{font-size:12px}
.edit-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 16px}.edit-toolbar button{width:auto;min-width:90px;margin:0}.text-button{display:block;width:auto;padding:3px 0;margin:6px 0;background:none!important;color:#087e87!important;text-align:left;text-decoration:underline}.bom-scroll{overflow-x:auto}.purchase-table{min-width:660px;table-layout:auto}.purchase-table th:first-child{width:27%}.purchase-table th:nth-child(3){min-width:85px}.purchase-table th:nth-child(5){min-width:74px}.purchase-table input{width:75px}.verified-value{color:#087e87;font-weight:600}.pending-value{color:#975000}#partDialog{width:min(780px,94vw);max-height:90vh;border:1px solid #c7dbe0;border-radius:14px;padding:0;color:#173347}#partDialog::backdrop{background:#17334788}.dialog-head{display:flex;align-items:center;gap:12px;justify-content:space-between;position:sticky;top:0;background:#fff;padding:14px 22px;border-bottom:1px solid #dce5e9;z-index:1}.dialog-head button{width:auto;margin:0}.dialog-head h2{margin:0}#partDetailsBody{padding:8px 22px 22px}.part-facts{display:grid;grid-template-columns:100px 1fr;gap:10px}.part-facts dt{font-weight:600}.part-facts dd{margin:0;line-height:1.6}.part-photo{display:block;max-width:100%;width:220px;max-height:140px;object-fit:contain;margin:12px auto}.part-drawing svg{width:100%;max-height:220px}.part-drawing{background:#f7fafb;border-radius:8px}#partCount{margin:6px 0}#partDetailsBody a{overflow-wrap:anywhere}@media(max-width:700px){.part-facts{grid-template-columns:82px 1fr}.edit-toolbar .hint{width:100%}#partDetailsBody{padding:8px 14px 14px}.dialog-head{padding:12px 14px}}
@media(max-width:1100px){.purchase-table{min-width:0;display:block}.purchase-table thead{display:none}.purchase-table tbody{display:grid;gap:12px}.purchase-table tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #dce5eb;border-radius:8px;padding:10px}.purchase-table td{border:0;padding:5px;font-size:12px;min-width:0}.purchase-table td:first-child,.purchase-table td:last-child{grid-column:1/-1}.purchase-table td:first-child{font-size:14px;font-weight:600}.purchase-table td:not(:first-child)::before{content:attr(data-label);display:block;font-size:11px;font-weight:400;color:#536a78;margin-bottom:5px}.purchase-table input{width:100%;padding:6px}.purchase-table td[colspan]{grid-column:1/-1}}
.download-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:16px 0}.download-button{display:inline-block;padding:10px 16px;border-radius:6px;background:#087e87;color:#fff;text-decoration:none;font-weight:600}.download-button:focus-visible{outline:3px solid #e4a22d;outline-offset:2px}
.site-header{background:#fff;border-bottom:1px solid #dce5e9}.site-header .nav-inner{max-width:1600px;margin:auto;min-height:82px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.site-header .brand{font-size:19px;font-weight:750;line-height:1.4;color:#173347;text-decoration:none}.site-header .brand small{display:block;font-size:10px;letter-spacing:2px;color:#087e87}.site-header .site-nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.site-header .site-nav a{text-decoration:none;color:#536a78;padding:12px 0;font-weight:600}.site-header .site-nav a[aria-current]{color:#087e87;border-bottom:2px solid #087e87}.site-header a:focus-visible{outline:3px solid #e4a22d;outline-offset:3px}@media(max-width:600px){.site-header .nav-inner{padding:14px;align-items:flex-start;flex-direction:column;gap:6px}.site-header .site-nav{gap:20px}.site-header .site-nav a{padding:8px 0}}
#accessoryPicker,#platePicker{padding:8px 0;border-bottom:1px solid #dce5e9}#accessoryPicker>summary,#platePicker>summary{font-weight:600;padding:6px 0}#accessoryMenu{position:fixed;z-index:6;width:190px;background:white;box-shadow:0 5px 30px #17334744;padding:8px;border-radius:8px}#accessoryMenu button{margin:3px 0;text-align:left}[hidden]{display:none!important}#accessoryInspector details{margin-top:12px}#assembly .accessory-item{border-left:3px solid #a7b9c3}
@media(min-width:701px){.layout{align-items:start}.panel{position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto;scrollbar-gutter:stable;overscroll-behavior:contain}}#accessoryInspector{margin-top:0}#rollerStackEditor,#axisSettings{border-top:1px solid #d8e5e9;margin-top:12px;padding-top:12px}#stackOrderHint{font-size:11px;margin:4px 0}#stackLayers{border-left:3px solid #81959c;padding-left:8px;margin:6px 0}.stack-layer{background:#e8f0f4;color:#294b5c;text-align:left;margin:3px 0;padding:7px;font-size:12px}.stack-layer.active{background:#087e87;color:white}.stack-layer small{display:block;margin-top:4px;opacity:.85}.spacer-presets{display:grid;grid-template-columns:repeat(6,1fr);gap:3px}.spacer-presets button{padding:6px 1px;font-size:11px}#screwFit.short{color:#b54324;font-weight:600}#accessoryMenu{width:248px;max-height:calc(100vh - 16px);overflow:auto}#accessoryMenu button{font-size:13px}.roller-stack-group{border:1px solid #a8cbcf;border-left:3px solid #087e87;border-radius:8px;padding:5px;margin:12px 0}#assembly .stack-group-header{background:#d9ecec;margin-top:0;font-weight:600}.roller-stack-group .accessory-item{margin-left:8px;width:calc(100% - 8px)}
#accessoryMenu button{background:transparent;color:#264653;margin:0;padding:9px 10px}#accessoryMenu button:hover:not(:disabled){background:#e2f2f1;color:#006c75}#accessoryMenu button:disabled{opacity:.35}#accessoryMenu hr{border:0;border-top:1px solid #dce5e9;margin:5px 0}#accessoryMenu #accessoryContextRemove,#accessoryMenu #accessoryContextAxisRemove{color:#b13b2d}#screwLength{padding-left:6px;padding-right:2px;font-size:13px}
#mountStatus{height:1.6em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#mountStatus[hidden]{display:block!important;visibility:hidden}

.editor-jumps{display:none}.edit-toolbar{position:sticky;top:0;z-index:20;background:#f3f6f7;padding:10px 0;flex-wrap:wrap}.edit-toolbar button{min-height:40px}#multiSelect[aria-pressed="true"]{background:#087e87;color:white}#menu,#accessoryMenu{z-index:100}#menu button:focus-visible,#accessoryMenu button:focus-visible{outline:2px solid #087e87;outline-offset:-3px;background:#e2f2f1}#menu button,#accessoryMenu button{min-height:40px}#planView,#bomView,#manualSection,#partsPanel{scroll-margin-top:100px}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #c4861f;outline-offset:2px}
@media(max-width:700px){.editor-jumps{display:flex;gap:4px;position:sticky;top:104px;z-index:15;background:#f3f6f7;padding:6px 0;margin-bottom:12px}.editor-jumps a{flex:1;text-align:center;min-height:44px;padding:9px 3px;border-bottom:2px solid #b7cbd2;font-size:13px;text-decoration:none}.edit-toolbar{gap:6px;top:0}.edit-toolbar .hint{flex-basis:100%}.edit-toolbar button{flex:1;min-width:65px}.panel button{min-height:44px}.panel input,.panel select{font-size:16px}#planView,#bomView,#manualSection,#partsPanel{scroll-margin-top:165px}#menu,#accessoryMenu{max-width:calc(100vw - 16px);max-height:calc(100dvh - 24px);overflow:auto}}
