.home-start{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#edf3ef;border:1px solid #dce6de;border-radius:12px;padding:28px 32px}.home-start h2{margin:8px 0;font-size:29px}.home-start p{margin:0;font-size:13px;color:#708077}.home-start .button{flex:none}
#joint-dialog{width:min(1000px,calc(100vw - 24px));max-height:92dvh;overflow:auto;background:#fbfcfa;color:#3f575a}.bolt-intro{display:flex;align-items:center;gap:12px;margin:20px 0}.bolt-intro h3{font-size:16px;margin:0 0 4px}.bolt-intro p{font-size:11px;color:#768883;margin:0}#joint-dialog .joint-detail-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.bolt-xray{font-size:11px;margin:12px 0}.bolt-behavior{border-top:1px solid #dce5e1;padding-top:12px}.bolt-behavior summary{cursor:pointer;font-size:12px}.joint-scheme summary{font-size:11px;cursor:pointer;color:#648078}.joint-scheme .joint-diagram{margin-top:8px}#joint-dialog .joint-caption{font-size:11px;text-align:left;line-height:1.5}#joint-fit-report[hidden]{display:none!important}#joint-dialog .dialog-actions{position:sticky;bottom:-26px;background:#fbfcfa;border-top:1px solid #dde5e0;padding:14px 0;margin-bottom:0}#joint-dialog input:focus-visible,#joint-dialog select:focus-visible{outline:2px solid #458477;outline-offset:2px}
@media(max-width:600px){.home-start{flex-direction:column;align-items:stretch;padding:22px}#joint-dialog .joint-detail-grid{grid-template-columns:1fr}#joint-dialog .joint-detail-grid>div:first-child{display:block}#joint-dialog .joint-diagram{width:100%}#joint-dialog .dialog-actions{bottom:-18px}#joint-dialog .joint-detail-grid h3{margin:0}}
#joint-dialog{width:min(1240px,calc(100vw - 24px))}#joint-dialog .joint-local-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr);align-items:start}.joint-preview-pane{position:sticky;top:0;min-width:0}.joint-preview-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.joint-preview-tools label{font-size:11px}.joint-local-scene{display:block;width:100%;aspect-ratio:640/420;border:1px solid #dce6dd;border-radius:9px}.joint-local-scene [data-joint-member]{cursor:pointer}.joint-local-scene [data-joint-member]:focus-visible{outline:none;stroke:#168568;stroke-width:2}#joint-live-preview{touch-action:none;cursor:grab;min-height:160px}#joint-live-preview:active{cursor:grabbing}.joint-camera-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.joint-camera-fields label{font-size:10px;color:#667e74;display:grid;gap:7px}.joint-camera-fields input{width:100%;accent-color:#4a806c}.joint-config-pane{min-width:0}.joint-config-pane select{width:100%;min-width:0}.joint-pattern{border:1px solid #dce5df;border-radius:8px;margin:18px 0;padding:14px}.joint-pattern legend{font-size:10px;font-weight:600;color:#57756a;padding:0 5px}.joint-checks{border-top:1px solid #dae4db;padding-top:10px;margin-top:12px}.joint-checks h4{font-size:10px;letter-spacing:1px;margin:7px 0}.joint-checks #joint-fit-report{font-size:12px;line-height:1.5}.joint-check{display:flex;gap:9px;align-items:flex-start;width:100%;text-align:left;border:1px solid #e4ded3;background:#faf7ef;color:#725f42;padding:10px;border-radius:7px;margin:6px 0;cursor:pointer;font:inherit;font-size:11px;line-height:1.45}.joint-check span{flex:1}.joint-check.error{background:#fff3ed;border-color:#ead1c5;color:#8a4b37}.joint-check:hover{border-color:#799c8c}.joint-check:focus-visible{outline:2px solid #458477;outline-offset:2px}#joint-check-list{max-height:230px;overflow:auto}#joint-review-list{max-height:320px;overflow:auto}#joint-highlight{color:#a6482f;min-height:16px}#joint-dialog .joint-scope{margin:18px 0 0}.joint-config-pane #joint-reset-detail{margin-bottom:15px}
@media(max-width:850px){#joint-dialog .joint-local-grid{grid-template-columns:1fr}.joint-preview-pane{position:static}.joint-camera-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.joint-local-scene{max-height:420px}}
.connection-library,.machining-fields{border:1px solid #d9e1d9;border-radius:10px;background:#f7f9f5;margin:12px 0;padding:12px}
.connection-library>summary,.machining-fields>summary{cursor:pointer;font-weight:650;color:#36594b;padding:3px 0}
.connection-library[open]>summary,.machining-fields[open]>summary{margin-bottom:10px}
.library-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:8px 0}
.library-buttons .button{font-size:12px;padding:8px 10px}
.library-batch{padding-top:12px;border-top:1px solid #dce4da;margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:9px}
.library-batch>label{display:grid;gap:5px;font-size:12px;color:#51665b}
.library-batch>p,.library-batch>.library-buttons,#joint-library-results{grid-column:1/-1}
#joint-library-results{max-height:240px;overflow:auto;display:grid;gap:5px}
.library-result{display:flex;align-items:flex-start;gap:8px;padding:9px;border-radius:6px;background:white;border:1px solid #dbe4da;cursor:pointer;font-size:12px}
.library-result input{width:auto;margin-top:2px}.library-result span{display:grid;gap:4px}.library-result small{color:#627568}.library-result.invalid{background:#fcf2ed;cursor:default}.library-result.invalid small{color:#9d4e32}
.connection-library input,.connection-library select,.machining-fields select{min-width:0;max-width:100%}
#joint-library-status,#joint-machining-status{font-size:12px;line-height:1.5}
@media(max-width:600px){.library-batch{grid-template-columns:1fr}.library-buttons .button{flex:1}.connection-library .compact-fields{grid-template-columns:1fr}}
