:root{font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#20344e;background:#f2f5fa;font-synthesis:none;font-size:14px;line-height:1.5;font-weight:400;--paper:#f7f9fc;--surface:#fff;--line:#dce4ef;--ink:#20344e;--muted:#75849a;--accent:#2864b4;--accent-soft:#eaf2ff;color-scheme:light}
*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{overflow:hidden}button,input,select{font:inherit}button{cursor:pointer;color:inherit;border:1px solid var(--line);border-radius:7px;background:#fff;padding:8px 10px;line-height:1.25;transition:background .15s,border-color .15s,color .15s}button:hover:not(:disabled){background:#f0f5ff;border-color:#a6bedf}button.active,button[aria-pressed="true"]{color:#1e59a3;background:var(--accent-soft);border-color:#a9c4e8}button:disabled{cursor:default;opacity:.37}button,input,select{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #4980c8;outline-offset:3px}button svg{flex-shrink:0}input,select{min-width:0;max-width:100%;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:7px;padding:9px 10px}input[type="range"]{padding:0;border:0;accent-color:var(--accent);cursor:pointer;min-width:30px;height:22px}input::placeholder{color:#8f9bae}.icon-button{display:inline-flex;align-items:center;justify-content:center;background:transparent;border-color:transparent;padding:6px}.icon-button:hover:not(:disabled){background:#edf3fc;border-color:#d2dff0}
.gallery-app{height:100vh;height:100dvh;min-height:360px;display:flex;flex-direction:column;overflow:hidden;background:var(--paper)}.gallery-header{height:62px;min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 22px;background:#fff;border-bottom:1px solid var(--line);z-index:30}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand-icon{width:36px;height:36px;display:grid;place-items:center;color:#2864b4;border:1px solid #cddcf0;border-radius:9px;background:#f0f5fe;flex:0 0 36px}.brand strong{display:block;font-size:16px;line-height:1.35;font-weight:650;letter-spacing:.04em}.brand strong>span{font-size:9px;font-weight:500;letter-spacing:.11em;color:#7c91b0;margin-left:5px}.brand small{display:block;font-size:10px;color:#74869e;margin-top:3px;letter-spacing:.04em}.header-actions{display:flex;gap:8px;flex-shrink:0}.header-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:11px;padding:8px 11px}.header-actions button b{font:500 9px/18px system-ui,sans-serif;padding:0 5px;min-width:22px;border-radius:4px;background:#edf2f8;color:#6983a4}.gallery-body{position:relative;display:flex;flex:1;min-height:0;overflow:hidden}
.catalog-panel,.parts-panel{position:relative;display:flex;flex-direction:column;flex-shrink:0;min-height:0;background:#fff;z-index:20}.catalog-panel{width:246px;border-right:1px solid var(--line)}.parts-panel{width:308px;border-left:1px solid var(--line)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px 15px 12px;flex-shrink:0}.panel-heading h2{margin:0;font-size:13px;font-weight:650}.panel-heading h2>span{font:400 10px/1.5 system-ui,sans-serif;color:#8b9ab0;margin-left:5px}.panel-heading .icon-button{padding:4px}.catalog-search{position:relative;display:flex;align-items:center;gap:7px;min-width:0;margin:0 13px 9px;padding:0 9px;background:#f8faff;border:1px solid var(--line);border-radius:7px;color:#8c9eb7;flex-shrink:0}.catalog-search svg{flex-shrink:0}.catalog-search input{width:100%;padding:9px 19px 9px 0;border:0;background:transparent;box-shadow:none;font-size:11px;outline:none}.catalog-search:focus-within{border-color:#8badde}.catalog-search button{position:absolute;right:3px;top:4px;padding:2px 5px;line-height:22px;border:0;background:transparent;color:#7c8da5;font-size:17px}.category-select{width:calc(100% - 26px);margin:0 13px 11px;padding:8px 9px;font-size:10px;color:#6e819e;background:#f7f9fd;flex-shrink:0}.model-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 8px 16px;scrollbar-width:thin;scrollbar-color:#cad6e7 transparent}.result-count{font-size:9px;color:#8c9bb0;padding:0 7px 7px}.model-card{display:flex;align-items:center;position:relative;gap:9px;width:100%;text-align:left;min-height:77px;padding:8px 7px;margin-bottom:5px;border-color:transparent;background:transparent;border-radius:8px}.model-card:hover:not(:disabled){background:#f4f7fd;border-color:#dde7f5}.model-card.active{background:#eaf2ff;border-color:#aec8eb;box-shadow:inset 3px 0 #3471c1}.model-card img{width:70px;height:53px;object-fit:cover;border-radius:5px;flex:0 0 70px;background:#edf1f7}.model-card>span{min-width:0;flex:1;padding-right:1px}.model-card small{display:block;color:#8a99af;font-size:8px;line-height:1.4;margin:0 0 3px}.model-card strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px;font-weight:550;line-height:1.6}.model-card>b{position:absolute;top:5px;right:6px;font:400 8px/1 system-ui,sans-serif;color:#a1adc0}.empty-result{margin:30px 12px;color:#8c9bb0;text-align:center;font-size:11px}
.model-stage{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;position:relative;background:#eef2f7;isolation:isolate}.stage-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 20px;min-height:79px;flex-shrink:0;background:#fff;border-bottom:1px solid var(--line);z-index:8}.model-title{min-width:0}.model-title>span{display:flex;align-items:center;gap:7px;color:#7188a7;font-size:9px;letter-spacing:.04em;line-height:1.3;margin-bottom:6px}.model-title>span i{width:3px;height:3px;border-radius:50%;background:#a0b3cc;margin:0 2px}.model-title h1{margin:0;font-size:19px;line-height:1.4;font-weight:650;overflow-wrap:anywhere}.stage-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.stage-actions button{padding:6px}.action-divider{height:18px;width:1px;background:var(--line);margin:0 3px}.system-bar{padding:9px 18px 6px;border-bottom:1px solid #dbe3ef;background:#f9fbfe;flex-shrink:0;min-width:0}.system-caption{display:flex;align-items:center;gap:7px;margin-bottom:7px;font-size:10px;line-height:1.4}.system-caption>b{font-weight:550}.system-caption>span:last-child{margin-left:auto;color:#7f90a9;font-size:9px;white-space:nowrap}.status-dot{height:6px;width:6px;border-radius:50%;background:#4c87d1;box-shadow:0 0 0 3px #e3edfc;flex:0 0 6px}.system-chips{display:flex;gap:5px;overflow-x:auto;max-width:100%;padding-bottom:3px;scrollbar-width:thin;scrollbar-color:#ccdaed transparent}.system-chips button{white-space:nowrap;flex-shrink:0;font-size:10px;padding:6px 9px;border-radius:5px;background:#fff;color:#7a8ba3}.system-chips button.active{background:#e8f1ff;color:#235faa;border-color:#a9c5e9}.system-chips button>small{font:500 8px/1 system-ui,sans-serif;margin-left:6px;color:#8da2c0}.viewport{position:relative;flex:1;min-height:190px;overflow:hidden;isolation:isolate;background:#eef0f1}.viewer,.realistic-viewer,.canvas-host,.marker-layer{position:absolute;inset:0;width:100%;height:100%}.canvas-host canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}.marker-layer{pointer-events:none;overflow:hidden;z-index:3}.camera-presets{position:absolute;right:13px;top:12px;display:flex;gap:1px;z-index:6;padding:3px;border:1px solid #d1ddebcc;border-radius:7px;background:#ffffffde;backdrop-filter:blur(8px)}.camera-presets button{font-size:9px;line-height:1.2;border-color:transparent;background:transparent;padding:5px 7px;border-radius:4px;color:#6a809f}.camera-presets button:hover:not(:disabled){background:#eaf2ff}.camera-presets button:last-child{display:flex;align-items:center;padding:4px 6px}.realism-status{position:absolute;left:14px;top:13px;z-index:2;font-size:9px;line-height:1.4;color:#71849e;background:#ffffffcc;padding:4px 7px;border:1px solid #d6e0eccc;border-radius:5px;pointer-events:none;max-width:43%;backdrop-filter:blur(6px)}.realism-status:empty{display:none}.axis-key{position:absolute;left:14px;bottom:13px;display:flex;align-items:center;gap:4px;z-index:3;pointer-events:none}.axis-key b{display:inline-block;width:17px;height:17px;text-align:center;border-radius:50%;background:#f9fcffdb;font:600 8px/17px system-ui,sans-serif}.axis-key .x{color:#b97867}.axis-key .y{color:#6d9a7d}.axis-key .z{color:#648bb5}.webgl-error{position:absolute;z-index:10;inset:15%;display:flex;align-items:center;justify-content:center;padding:25px;background:#fbfdfff5;border:1px solid #cbd9ec;border-radius:12px;text-align:center;color:#6e819e;font-size:12px;box-shadow:0 10px 40px #2a416218}
.annotation-lines{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:2}.annotation-lines path{fill:none;stroke:#5d7d9d;stroke-width:.8;stroke-opacity:.85;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.annotation-lines circle{fill:#3c78b8;stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke}.annotation-lines path.selected{stroke:#235da6;stroke-width:1.3;stroke-opacity:1}.annotation-lines circle.selected{fill:#205fb0}.annotation-lines path.internal{stroke-dasharray:3 2}.model-marker{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:flex-start;gap:6px;width:148px;min-height:33px;height:auto;padding:7px 8px;border-radius:5px;border:1px solid #a3b7cf;background:#fffffff5;color:#2b4767;font:500 11px/1.45 "PingFang SC","Microsoft YaHei",system-ui,sans-serif;text-align:left;white-space:normal;overflow:visible;box-shadow:0 2px 8px #29466a17;pointer-events:auto;backdrop-filter:blur(5px)}.model-marker .marker-index{flex:0 0 17px;min-width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;border-radius:3px;background:#eaf1fa;color:#6a86a7;font:600 9px/1 system-ui,sans-serif}.model-marker .marker-name{display:block;flex:1;min-width:0;overflow:visible;white-space:normal;overflow-wrap:anywhere;text-overflow:clip}.model-marker:hover:not(:disabled),.model-marker.selected{background:#2866b3;color:#fff;border-color:#1c569e;box-shadow:0 3px 12px #244e8435}.model-marker:hover .marker-index,.model-marker.selected .marker-index{background:#ffffff25;color:#fff}.marker-state{display:none;font-size:8px;line-height:12px;color:#718399;background:#edf2f8;border-radius:3px;padding:0 3px;position:absolute;right:3px;top:-7px;pointer-events:none}.model-marker.internal .marker-state{display:block}
.part-info-card{position:absolute;left:50%;bottom:11px;transform:translateX(-50%);z-index:7;width:min(525px,calc(100% - 30px));padding:10px 12px;border:1px solid #adbfda;border-radius:8px;background:#ffffffed;box-shadow:0 5px 24px #2b4b7420;backdrop-filter:blur(10px)}.part-info-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;min-width:0}.part-info-heading>div{min-width:0}.part-info-heading small{display:block;color:#8b9db6;font-size:8px;margin-bottom:2px}.part-info-heading h2{margin:0;font-size:12px;line-height:1.45;font-weight:650;overflow-wrap:anywhere}.part-info-heading .icon-button{padding:2px;width:22px;height:22px;flex:0 0 22px;color:#7188a7}.selection-actions{display:flex;gap:5px;align-items:center;margin-top:7px;flex-wrap:wrap}.selection-actions button{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:9px;padding:5px 8px;color:#50759f;background:#f6f9fe;border-color:#d7e2f1}.selection-actions button:first-child{color:#235faa;background:#eaf2ff;border-color:#bed2ef}.selection-actions button:last-child{margin-left:auto}.selection-actions button.active{background:#dceaff;color:#245fa8;border-color:#aac6eb}
.interaction-bar{position:relative;z-index:8;flex-shrink:0;max-height:43%;overflow-y:auto;overscroll-behavior:contain;padding:12px 18px 13px;background:#fff;border-top:1px solid #d6e0ee;scrollbar-width:thin;scrollbar-color:#d0dced transparent}.display-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;min-width:0}.display-row button{font-size:10px;padding:6px 8px;white-space:nowrap}.display-mode{display:inline-flex;gap:0;flex-shrink:0}.display-mode button{border-radius:0}.display-mode button:first-child{border-radius:5px 0 0 5px}.display-mode button:last-child{margin-left:-1px;border-radius:0 5px 5px 0}.display-mode button.active{z-index:1}.toggle-group,.section-buttons{display:flex;align-items:center;gap:5px;flex-shrink:0}.toggle-group button,.section-buttons button{color:#7187a5;background:#fff}.toggle-group button.active,.section-buttons button.active{color:#225fa8;background:#edf4ff;border-color:#b5cdec}.section-buttons{margin-left:auto}.section-slider{display:flex;align-items:center;gap:9px;margin-top:9px;font-size:9px;color:#7288a6}.section-slider>span{white-space:nowrap}.section-slider input{flex:1;min-width:30px;margin:0}.section-slider output{font:500 9px/1 system-ui,sans-serif;min-width:27px;text-align:right}.disassembly{margin-top:11px;padding-top:10px;border-top:1px solid #e6ebf3}.disassembly-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.disassembly-head strong{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;white-space:nowrap;color:#4a6488}.disassembly-head select{width:auto;max-width:65%;font-size:10px;padding:6px 8px;background:#f7faff;color:#5e789e}.explode-row{display:flex;align-items:center;gap:12px;min-width:0;margin-top:9px}.explode-button{min-width:86px;flex-shrink:0;font-size:10px;font-weight:550;background:#2864b4;border-color:#2864b4;color:#fff;padding:8px 10px}.explode-button:hover:not(:disabled){color:#fff;background:#1e56a2;border-color:#1e56a2}.explode-button.active{color:#245fa8;background:#eaf2ff;border-color:#adc8ed}.explode-slider{display:flex;align-items:center;gap:9px;min-width:0;flex:1;font-size:9px;color:#8495ad}.explode-slider>span{white-space:nowrap}.explode-slider input{flex:1;min-width:30px;width:100%;margin:0}.explode-slider output{min-width:29px;text-align:right;font:500 10px/1 system-ui,sans-serif;color:#4c76a9}.stepper{display:flex;align-items:center;gap:7px;margin-top:9px;min-width:0}.stepper button{font-size:10px;padding:7px 9px;white-space:nowrap}.stepper .next-part{background:#eaf2ff;border-color:#b6cdee;color:#225da7}.stepper button:last-child{margin-left:auto;color:#6c82a1;background:#fff}.disassembly-count{flex:1;text-align:center;color:#98a5b7;white-space:nowrap;font:400 10px/1.5 system-ui,sans-serif}.disassembly-count b{font-size:13px;font-weight:600;color:#2f65a6}.disassembly-count small{font-size:9px;font-family:"Microsoft YaHei",sans-serif;color:#8a9bb3;margin-left:3px}.assembly-status{display:flex;align-items:center;justify-content:space-between;gap:9px;min-width:0;margin-top:7px;color:#7f93ae;font-size:9px;min-height:19px}.assembly-status>span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.assembly-status button{padding:2px 0;white-space:nowrap;flex-shrink:0;border:0;background:transparent;font-size:9px;color:#5b7fae}.related-details{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:9px;padding-top:8px;border-top:1px solid #e6ebf3}.related-details>span{font-size:9px;color:#94a1b4;margin-right:3px;white-space:nowrap}.related-details button{font-size:9px;padding:4px 6px;color:#7189ac;border-color:transparent;background:#f4f7fc}
.parts-system-name{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 15px 10px;font-size:9px;color:#8d9db3;flex-shrink:0}.parts-system-name>button{border:0;padding:0;background:transparent;font-size:9px;color:#6d86a9;white-space:nowrap}.part-list{flex:1;min-height:140px;overflow-y:auto;overscroll-behavior:contain;padding:0 9px 12px;scrollbar-width:thin;scrollbar-color:#cad6e7 transparent}.part-row{display:flex;align-items:center;gap:2px;margin-bottom:4px;border:1px solid transparent;border-radius:7px;padding-right:4px}.part-row:hover{background:#f5f8fe}.part-row.selected{background:#eaf2ff;border-color:#b7ceef}.part-select{display:flex;align-items:flex-start;gap:8px;min-width:0;flex:1;text-align:left;border-color:transparent;background:transparent;padding:9px 5px 9px 8px}.part-select:hover:not(:disabled),.part-select[aria-pressed="true"]{background:transparent;border-color:transparent}.part-select>span:first-child{font:500 9px/16px system-ui,sans-serif;color:#92a3bb;min-width:17px;flex-shrink:0}.part-select>span:last-child{display:block;min-width:0;flex:1}.part-select strong{display:block;overflow-wrap:anywhere;font-weight:500;font-size:11px;line-height:1.5}.part-select small{display:block;margin-top:3px;line-height:1.3;font-size:8px;color:#98a6ba}.part-row.selected .part-select strong{color:#225da7}.part-row.removed-part .part-select small{color:#4d82bc}.part-row.hidden-part .part-select{opacity:.43}.part-visibility{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:25px;height:28px;padding:3px;border:0;background:transparent;color:#99a9bf}.part-visibility[aria-pressed="true"],.part-visibility[aria-pressed="false"]{border:0;background:transparent;color:#8a9cb5}.part-visibility i{position:absolute;width:18px;height:1px;transform:rotate(-45deg);background:#8a9cb5}.parts-empty{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px 18px 22px;background:#f7faff;border-top:1px solid var(--line);color:#8da1bd;flex-shrink:0}.parts-empty b{font-size:11px;font-weight:500;color:#657e9e}.parts-empty span{font-size:9px;color:#94a4bb}.part-detail{border-top:1px solid var(--line);background:#f7faff;flex-shrink:0;min-height:0;max-height:51%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c9d7eb transparent}.part-detail>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none;cursor:pointer;padding:13px 16px;position:sticky;top:0;z-index:2;background:#f7faff}.part-detail>summary::-webkit-details-marker{display:none}.part-detail>summary>div{min-width:0}.part-detail>summary small{display:block;font-size:8px;letter-spacing:.05em;color:#9aabc1}.part-detail h3{font-size:12px;line-height:1.6;font-weight:650;margin:3px 0 0;overflow-wrap:anywhere;color:#315c8d}.detail-chevron{color:#7a94b6;font-size:17px;line-height:1;transform:rotate(180deg)}.part-detail:not([open]) .detail-chevron{transform:none}.part-detail-content{padding:0 16px 19px}.part-category{display:inline-block;background:#eaf1fb;border:1px solid #dce7f7;padding:3px 6px;color:#7e94b2;font-size:8px;border-radius:4px}.part-actions{display:flex;gap:5px;flex-wrap:wrap;margin:10px 0 13px}.part-actions button{display:inline-flex;align-items:center;gap:4px;font-size:9px;padding:5px 7px;color:#567da9;background:#fff;border-color:#cddcf0}.part-detail dl{margin:0}.part-detail dt{font-size:9px;color:#7590b0;margin:11px 0 4px;line-height:1.5;font-weight:600}.part-detail dd{font-size:11px;line-height:1.8;color:#5c7595;overflow-wrap:anywhere;margin:0;white-space:pre-line}.panel-scrim{display:none;position:absolute;inset:0;border:0;border-radius:0;padding:0;background:#17314f35;backdrop-filter:blur(2px);z-index:40}.panel-scrim:hover:not(:disabled){background:#17314f35;border:0}.model-stage.focused{position:fixed;inset:0;width:100%;height:100vh;height:100dvh;z-index:100}.model-stage.focused .viewport{min-height:0}
@media(min-width:1650px){.catalog-panel{width:272px}.parts-panel{width:334px}.stage-header{padding:17px 25px}.model-title h1{font-size:22px}.model-card img{width:78px;height:59px;flex-basis:78px}.model-card strong{font-size:12px}.interaction-bar{padding-left:24px;padding-right:24px}.system-bar{padding-left:24px;padding-right:24px}}
@media(max-width:1249px){.parts-panel{position:absolute;right:0;top:0;bottom:0;width:320px;max-width:calc(100% - 28px);z-index:50;box-shadow:-12px 0 36px #1d3b6129}.panel-scrim.for-parts{display:block}.catalog-panel{width:234px}.interaction-bar{padding-left:15px;padding-right:15px}.stage-header{padding-left:17px;padding-right:17px}.model-title h1{font-size:18px}.model-card img{width:66px;height:50px;flex-basis:66px}.part-detail{max-height:53%}}
@media(max-width:999px){.catalog-panel{position:absolute;left:0;top:0;bottom:0;width:310px;max-width:calc(100% - 28px);z-index:50;box-shadow:12px 0 36px #1d3b6129}.panel-scrim.for-catalog{display:block}.model-card img{width:82px;height:62px;flex-basis:82px}.model-card strong{font-size:12px}.model-card small{font-size:9px}.gallery-header{padding-left:17px;padding-right:17px}.model-title h1{font-size:19px}.interaction-bar{max-height:45%}}
@media(max-width:649px){:root{font-size:13px}.gallery-app{min-height:360px}.gallery-header{height:58px;min-height:58px;padding:0 11px;gap:8px}.brand{gap:8px}.brand-icon{width:29px;height:29px;flex-basis:29px;border-radius:7px}.brand-icon svg{width:21px;height:21px}.brand strong{font-size:12px;white-space:nowrap;letter-spacing:.02em}.brand strong>span{font-size:7px;letter-spacing:.05em;margin-left:3px}.brand small{font-size:7px;margin-top:2px}.header-actions{gap:4px}.header-actions button{padding:7px 6px;font-size:10px;gap:4px}.header-actions button svg{width:15px;height:15px}.header-actions button b{font-size:8px;line-height:16px;min-width:17px;padding:0 3px}.model-stage{overflow-y:auto;overscroll-behavior:contain;display:flex;scrollbar-width:thin;scrollbar-color:#cbd8eb transparent}.stage-header{min-height:83px;position:relative;display:block;padding:11px 13px 12px}.model-title{padding-top:18px}.model-title>span{font-size:8px;margin-bottom:5px;line-height:1.2}.model-title h1{font-size:16px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stage-actions{position:absolute;top:7px;right:9px;gap:2px}.stage-actions button{padding:3px 5px}.stage-actions button svg{width:15px;height:15px}.action-divider{height:13px;margin:0 2px}.system-bar{padding:8px 11px 5px}.system-caption{display:none}.system-chips{gap:4px;padding-bottom:3px}.system-chips button{padding:6px 8px;font-size:9px}.system-chips button>small{font-size:7px;margin-left:4px}.viewport{flex:none;height:clamp(320px,52dvh,470px);min-height:320px;max-height:none}.camera-presets{top:9px;right:9px;padding:3px;gap:0}.camera-presets button{font-size:8px;padding:5px 6px}.camera-presets button:last-child{padding:4px 5px}.realism-status{left:10px;top:10px;padding:3px 5px;font-size:8px;max-width:37%}.axis-key{left:11px;bottom:10px;gap:3px}.axis-key b{width:14px;height:14px;font-size:7px;line-height:14px}.model-marker{width:106px;min-height:30px;padding:5px 6px;gap:4px;font-size:10px;line-height:1.4}.model-marker .marker-index{flex-basis:14px;min-width:14px;height:14px;font-size:8px;border-radius:3px}.part-info-card{bottom:8px;width:calc(100% - 20px);padding:8px 9px;border-radius:7px}.part-info-heading h2{font-size:11px}.part-info-heading small{font-size:7px}.part-info-heading .icon-button{width:20px;height:20px;flex-basis:20px}.selection-actions{gap:4px;margin-top:6px}.selection-actions button{font-size:9px;padding:5px 6px;gap:3px}.selection-actions button svg{width:12px;height:12px}.interaction-bar{flex:none;max-height:none;overflow:visible;padding:11px 12px max(13px,env(safe-area-inset-bottom))}.display-row{gap:7px}.display-row button{font-size:9px;padding:6px 8px}.toggle-group,.section-buttons{gap:4px}.section-buttons{margin-left:0}.section-slider{font-size:8px;gap:6px}.section-slider output{font-size:8px}.disassembly{margin-top:10px;padding-top:10px}.disassembly-head{gap:7px}.disassembly-head strong{font-size:10px;gap:5px}.disassembly-head strong svg{width:14px;height:14px}.disassembly-head select{max-width:67%;font-size:9px;padding:6px 7px}.explode-row{gap:9px;margin-top:9px}.explode-button{min-width:75px;padding:7px 8px;font-size:9px}.explode-slider{gap:6px;font-size:8px}.explode-slider output{font-size:9px;min-width:26px}.stepper{gap:5px;flex-wrap:wrap;margin-top:9px}.stepper button{font-size:9px;padding:7px 8px}.disassembly-count{font-size:9px;min-width:65px}.disassembly-count b{font-size:12px}.disassembly-count small{font-size:8px}.stepper button:last-child{margin-left:0}.assembly-status{font-size:8px;margin-top:7px}.assembly-status button{font-size:8px}.related-details{gap:4px;margin-top:8px;padding-top:8px}.related-details>span{font-size:8px;margin-right:1px}.related-details button{font-size:8px;padding:4px 5px}.parts-panel{width:320px;max-width:calc(100% - 20px)}.catalog-panel{max-width:calc(100% - 20px)}.parts-panel .panel-heading{padding-top:13px}.part-detail{max-height:56%}.part-list{min-height:110px}.part-detail>summary{padding-top:11px;padding-bottom:11px}.part-detail h3{font-size:12px}.part-detail dd{font-size:11px}.model-stage.focused .viewport{min-height:320px}.webgl-error{inset:12% 7%;padding:18px;font-size:11px}}
@media(max-width:359px){.brand-icon{display:none}.brand strong{font-size:12px}.brand small{font-size:7px}.gallery-header{padding-left:10px;padding-right:9px}.header-actions button{font-size:9px;padding:7px 5px}.header-actions button b{font-size:7px;min-width:15px}.model-title h1{font-size:15px}.stage-header{padding-left:11px;padding-right:11px}.system-bar{padding-left:9px;padding-right:9px}.interaction-bar{padding-left:9px;padding-right:9px}.display-row{gap:6px}.display-row button{font-size:8px;padding:6px 7px}.toggle-group{gap:3px}.model-marker{width:99px;padding:5px;font-size:10px;gap:3px}.model-marker .marker-index{flex-basis:13px;min-width:13px;height:13px;font-size:7px}.selection-actions button{font-size:8px;padding:5px 6px}.stepper{gap:4px}.stepper button{font-size:8px;padding:7px 6px}.disassembly-count{min-width:55px;font-size:8px}.disassembly-count small{font-size:7px;margin-left:2px}.camera-presets button{padding:5px;font-size:8px}}
@media(max-height:690px) and (min-width:650px){.gallery-header{height:53px;min-height:53px}.stage-header{min-height:66px;padding-top:11px;padding-bottom:11px}.model-title h1{font-size:17px}.system-bar{padding-top:7px;padding-bottom:4px}.system-caption{margin-bottom:5px}.system-chips button{padding-top:5px;padding-bottom:5px}.interaction-bar{max-height:39%;padding-top:9px;padding-bottom:10px}.display-row button{padding-top:5px;padding-bottom:5px}.disassembly{margin-top:8px;padding-top:8px}.disassembly-head select{padding-top:5px;padding-bottom:5px}.explode-row,.stepper{margin-top:7px}.related-details{margin-top:7px;padding-top:6px}.viewport{min-height:145px}.part-list{min-height:100px}.part-detail{max-height:48%}.panel-heading{padding-top:12px;padding-bottom:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.system-color{display:inline-block;width:7px;height:7px;border-radius:2px;vertical-align:middle;margin-right:5px;box-shadow:inset 0 0 0 1px #0000000c}

/* Dedicated touch workbench. Desktop structure above remains unchanged. */
.mobile-system-picker,.mobile-action-dock,.mobile-sheet-heading,.mobile-panel-tabs{display:none}
.gallery-app.is-mobile{height:100vh;height:100dvh;min-height:0;overflow:hidden;--touch-line:#d7e3f4}
.is-mobile button{min-height:40px;touch-action:manipulation}
.is-mobile .gallery-header{height:calc(52px + env(safe-area-inset-top));min-height:calc(52px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(10px,env(safe-area-inset-right)) 0 max(10px,env(safe-area-inset-left));gap:8px}
.is-mobile .brand{gap:7px}.is-mobile .brand-icon{display:grid;width:28px;height:28px;flex-basis:28px}.is-mobile .brand-icon svg{width:21px;height:21px}.is-mobile .brand strong{font-size:14px;white-space:nowrap}.is-mobile .brand strong>span,.is-mobile .brand small{display:none}
.is-mobile .header-actions{gap:5px}.is-mobile .header-actions button{height:44px;min-height:44px;font-size:12px;padding:7px;gap:5px;white-space:nowrap}.is-mobile .header-actions button svg{width:17px;height:17px}.is-mobile .header-actions button b{font-size:10px;line-height:20px;min-width:20px;padding:0 3px}
.is-mobile .gallery-body{flex:1;min-height:0;overflow:hidden}
.is-mobile .model-stage{display:flex;flex-direction:column;overflow:hidden;min-height:0;height:100%;max-height:100%;padding:0}
.is-mobile .stage-header{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:48px;flex-shrink:0;padding:5px max(9px,env(safe-area-inset-right)) 5px max(10px,env(safe-area-inset-left));gap:7px;background:#fff}
.is-mobile .model-title{min-width:0;flex:1;padding:0}.is-mobile .model-title>span{display:none}.is-mobile .model-title h1{font-size:15px;line-height:1.35;font-weight:650;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}
.is-mobile .stage-actions{position:static;display:flex;gap:2px;flex-shrink:0}.is-mobile .stage-actions .icon-button{width:40px;height:40px;min-height:40px;padding:6px}.is-mobile .stage-actions .icon-button svg{width:18px;height:18px}.is-mobile .stage-actions .action-divider,.is-mobile .stage-actions [aria-label="保存模型截图"],.is-mobile .stage-actions [aria-label="全屏查看"],.is-mobile .stage-actions [aria-label="退出全屏"]{display:none}
.is-mobile .system-bar{position:relative;flex-shrink:0;min-width:0;padding:4px max(8px,env(safe-area-inset-right)) 3px max(8px,env(safe-area-inset-left));background:#f7faff;border-bottom:1px solid #dde6f3}
.is-mobile .system-caption{display:none}.is-mobile .system-chips{display:flex;gap:5px;padding-bottom:3px;scrollbar-width:none;overscroll-behavior-x:contain}.is-mobile .system-chips::-webkit-scrollbar{display:none}.is-mobile .system-chips button{min-height:40px;padding:7px 10px;font-size:12px;border-radius:7px}.is-mobile .system-chips button small{font-size:10px;margin-left:5px}.is-mobile .mobile-system-picker{display:none}
.is-mobile .viewport,.is-mobile .model-stage.focused .viewport{flex:1 1 0;position:relative;height:auto;min-height:0;max-height:none;margin-left:env(safe-area-inset-left);margin-right:env(safe-area-inset-right);overflow:hidden}
.is-mobile .camera-presets{display:none}.is-mobile .realism-status{top:9px;left:10px;font-size:11px;max-width:65%;padding:5px 7px}.is-mobile .axis-key{left:10px;bottom:8px;gap:4px}.is-mobile .axis-key b{height:17px;width:17px;line-height:17px;font-size:8px}
.is-mobile .model-marker{width:112px;min-height:40px;padding:6px;gap:4px;font-size:11px;line-height:1.35}.is-mobile .model-marker .marker-index{height:15px;min-width:15px;flex-basis:15px;font-size:8px}.is-mobile .marker-state{font-size:9px;line-height:13px}
.is-mobile .part-info-card.mobile-selection-card{position:relative;display:flex;align-items:center;left:auto;bottom:auto;transform:none;z-index:8;flex:0 0 auto;width:100%;min-height:58px;max-height:78px;padding:4px max(6px,env(safe-area-inset-right)) 4px max(7px,env(safe-area-inset-left));gap:2px;border-width:1px 0 0;border-radius:0;background:#fff;box-shadow:none;backdrop-filter:none}
.is-mobile .mobile-selection-name{flex:1;min-width:0;min-height:46px;max-height:68px;padding:3px 5px;text-align:left;border:0;background:transparent}.is-mobile .mobile-selection-name strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:600;font-size:13px;line-height:1.35;color:#28517e}.is-mobile .mobile-selection-name span{display:block;font-size:12px;line-height:1.4;color:#8396b0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-top:2px}
.is-mobile .mobile-quick-focus{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:44px;width:45px;min-width:45px;padding:2px;border-color:#d5e3f5;background:#edf5ff;color:#2c66ad;font-size:10px}.is-mobile .mobile-selection-details{width:44px;min-width:44px;height:44px;padding:3px;font-size:12px;color:#507ba9;background:#f7faff;border-color:#e0e8f3}.is-mobile .mobile-selection-card>.icon-button{height:40px;width:40px;min-width:40px;flex-shrink:0;padding:4px;color:#7e94ae}
.is-mobile .mobile-action-dock{display:block;position:relative;z-index:10;flex:0 0 auto;padding:4px max(8px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:#fff;border-top:1px solid #d4e1f2;box-shadow:0 -3px 15px #27476808}
.is-mobile .mobile-dock-status{height:21px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 2px 4px;min-width:0}.is-mobile .mobile-dock-status .disassembly-count{flex:0 0 auto;min-width:0;text-align:left;font-size:11px}.is-mobile .mobile-dock-status .disassembly-count b{font-size:14px}.is-mobile .mobile-dock-status .disassembly-count small{font-size:11px}.is-mobile .mobile-last-moved{font-size:11px;line-height:1.4;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;color:#8296b1}
.is-mobile .mobile-primary-actions{display:grid;grid-template-columns:1fr 1.2fr 1fr .85fr;gap:5px;min-width:0}.is-mobile .mobile-primary-actions button{display:flex;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:44px;height:44px;padding:7px 3px;font-size:12px;line-height:1.2;font-weight:550;border-radius:8px;white-space:nowrap}.is-mobile .mobile-primary-actions .next-part{color:#fff;background:#2864b4;border-color:#2864b4}.is-mobile .mobile-primary-actions .next-part:hover:not(:disabled){color:#fff;background:#225ca9;border-color:#225ca9}.is-mobile .mobile-primary-actions [data-mobile-tools-toggle]{background:#f3f7fe;color:#517dac;border-color:#d2dff0}.is-mobile .mobile-primary-actions [data-mobile-tools-toggle] svg{height:15px;width:15px}
.is-mobile .interaction-bar{display:none;position:absolute;left:0;right:0;bottom:0;z-index:80;flex:none;flex-direction:column;width:100%;max-height:calc(100% - 6px);min-height:0;padding:0;overflow:hidden;overscroll-behavior:contain;background:#fff;border:1px solid #d6e3f4;border-bottom:0;border-radius:18px 18px 0 0;box-shadow:0 -8px 35px #18385c2b}.is-mobile .interaction-bar.mobile-open{display:flex}
.is-mobile .mobile-sheet-heading{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:10px max(12px,env(safe-area-inset-right)) 5px max(16px,env(safe-area-inset-left));flex:0 0 auto;border-bottom:1px solid #e1e9f5;background:#fff}.is-mobile .mobile-sheet-heading>div{min-width:0}.is-mobile .mobile-sheet-heading h2{font-size:15px;line-height:1.5;font-weight:650;margin:5px 0 0}.is-mobile .mobile-sheet-heading .icon-button{height:44px;width:44px;min-height:44px;padding:8px}.is-mobile .mobile-drag-handle{position:absolute;top:6px;left:50%;transform:translateX(-50%);height:4px;width:34px;border-radius:3px;background:#ccd8e9}
.is-mobile .tool-sheet-content{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;padding:12px max(13px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(13px,env(safe-area-inset-left));scroll-padding:12px;scrollbar-width:thin;scrollbar-color:#c7d7ee transparent}
.is-mobile .mobile-camera-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:13px}.is-mobile .mobile-camera-controls button{min-height:44px;font-size:13px;padding:8px 6px;background:#f7faff;color:#5479a8;border-color:#d8e4f5}
.is-mobile .display-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}.is-mobile .display-row button{min-height:40px;padding:7px 5px;font-size:13px;white-space:nowrap}.is-mobile .display-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column:1/-1;width:100%;min-width:0}.is-mobile .display-mode button{min-height:44px}.is-mobile .toggle-group{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-column:1/-1;gap:6px;min-width:0}.is-mobile .section-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column:1/-1;gap:7px;margin:0;min-width:0}
.is-mobile .section-slider{display:flex;align-items:center;gap:8px;min-height:44px;margin-top:12px;font-size:12px;line-height:1.4}.is-mobile .section-slider input{min-width:60px;height:40px}.is-mobile .section-slider output{font-size:12px;min-width:34px}
.is-mobile .disassembly{margin-top:14px;padding-top:13px}.is-mobile .disassembly-head{display:block}.is-mobile .disassembly-head strong{font-size:13px;margin-bottom:9px;gap:7px}.is-mobile .disassembly-head strong svg{height:17px;width:17px}.is-mobile .disassembly-head select{width:100%;max-width:100%;font-size:16px;min-height:44px;padding:9px 10px;background:#f7faff}.is-mobile .explode-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px}.is-mobile .explode-button{width:100%;min-height:44px;font-size:14px;padding:9px 12px}.is-mobile .explode-slider{min-width:0;flex:1 1 100%;min-height:44px;gap:8px;font-size:12px}.is-mobile .explode-slider input{height:40px;min-width:70px;flex:1}.is-mobile .explode-slider output{font-size:12px;min-width:34px}.is-mobile input[type="range"]{touch-action:pan-x}.is-mobile input[type="range"]::-webkit-slider-thumb{height:24px;width:24px}.is-mobile input[type="range"]::-moz-range-thumb{height:24px;width:24px}
.is-mobile .assembly-status{min-height:40px;font-size:12px;gap:9px;margin-top:7px}.is-mobile .assembly-status button{min-height:40px;padding:7px;font-size:12px}.is-mobile .related-details{gap:6px;margin-top:12px;padding-top:10px}.is-mobile .related-details>span{width:100%;font-size:12px;margin:0 0 3px}.is-mobile .related-details button{min-height:40px;font-size:12px;padding:7px 10px;background:#f3f7fd;border-color:#dfE8f5}
.is-mobile .mobile-sheet-scrim{position:absolute;inset:0;z-index:70;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#15334f47;backdrop-filter:blur(2px);touch-action:none}.is-mobile .mobile-sheet-scrim:hover:not(:disabled){background:#15334f47;border:0}
.is-mobile .panel-scrim.for-catalog,.is-mobile .panel-scrim.for-parts{display:block;z-index:85;background:#15334f47;touch-action:none}
.is-mobile .catalog-panel,.is-mobile .parts-panel{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;width:100%;max-width:100%;height:88%;max-height:calc(100% - 6px);min-height:0;padding-bottom:env(safe-area-inset-bottom);z-index:90;border:1px solid #d2e0f2;border-bottom:0;border-radius:18px 18px 0 0;background:#fff;box-shadow:0 -8px 35px #18385c2b;overflow:hidden}
.is-mobile .panel-heading{flex:0 0 auto;min-height:58px;padding:10px max(12px,env(safe-area-inset-right)) 6px max(16px,env(safe-area-inset-left));position:relative}.is-mobile .panel-heading:before{content:"";position:absolute;height:4px;width:34px;left:50%;top:6px;transform:translateX(-50%);background:#cbd8ea;border-radius:3px}.is-mobile .panel-heading h2{font-size:16px}.is-mobile .panel-heading h2>span{font-size:12px}.is-mobile .panel-heading .icon-button{width:44px;height:44px;min-height:44px;padding:8px}.is-mobile .panel-heading .icon-button svg{width:20px;height:20px}
.is-mobile .catalog-search{margin:4px max(13px,env(safe-area-inset-right)) 9px max(13px,env(safe-area-inset-left));padding-left:12px;min-height:46px;flex-shrink:0;border-radius:8px}.is-mobile .catalog-search input{font-size:16px;height:44px;padding:9px 40px 9px 0}.is-mobile .catalog-search svg{height:19px;width:19px}.is-mobile .catalog-search button{height:44px;min-height:44px;width:40px;top:0;right:1px;padding:4px;font-size:23px}.is-mobile .category-select{width:calc(100% - 26px);font-size:16px;min-height:44px;margin:0 13px 10px;padding:9px 11px}.is-mobile .model-list{min-height:0;padding:0 max(9px,env(safe-area-inset-right)) 16px max(9px,env(safe-area-inset-left));scroll-padding-top:8px;touch-action:pan-y}.is-mobile .result-count{font-size:12px;padding:0 7px 9px}.is-mobile .model-card{gap:12px;min-height:89px;padding:9px 10px;margin-bottom:6px;border-radius:9px}.is-mobile .model-card img{width:88px;height:66px;flex-basis:88px}.is-mobile .model-card strong{font-size:14px;line-height:1.55}.is-mobile .model-card small{font-size:11px;line-height:1.35;margin-bottom:5px}.is-mobile .model-card>b{font-size:10px;right:9px;top:8px}.is-mobile .empty-result{font-size:14px}
.is-mobile .mobile-panel-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:0 max(13px,env(safe-area-inset-right)) 9px max(13px,env(safe-area-inset-left));flex-shrink:0}.is-mobile .mobile-panel-tabs button{height:44px;min-height:44px;font-size:14px;padding:7px}.is-mobile .mobile-panel-tabs button span{font-size:12px;margin-left:4px}.is-mobile .parts-system-name{font-size:13px;line-height:1.4;padding:0 max(14px,env(safe-area-inset-right)) 7px max(16px,env(safe-area-inset-left));flex-shrink:0;min-height:40px}.is-mobile .parts-system-name button{min-height:40px;font-size:12px;padding:5px}
.is-mobile .part-list{min-height:0;flex:1;overflow-y:auto;touch-action:pan-y;overscroll-behavior:contain;padding:0 max(9px,env(safe-area-inset-right)) 16px max(9px,env(safe-area-inset-left));scroll-padding-top:8px}.is-mobile .part-row{margin-bottom:5px;padding-right:4px}.is-mobile .part-select{min-height:64px;padding:10px 6px 10px 10px;gap:9px}.is-mobile .part-select strong{font-size:14px;line-height:1.55}.is-mobile .part-select small{font-size:12px;line-height:1.45;margin-top:4px}.is-mobile .part-select>span:first-child{font-size:11px;line-height:21px;min-width:21px}.is-mobile .part-visibility{height:44px;min-height:44px;width:44px;padding:9px}.is-mobile .part-visibility svg{height:19px;width:19px}
.is-mobile .mobile-list-view .part-detail,.is-mobile .mobile-list-view .parts-empty{display:none}.is-mobile .mobile-detail-view .part-list,.is-mobile .mobile-detail-view .parts-system-name{display:none}.is-mobile .mobile-detail-view .part-detail{display:block;flex:1;min-height:0;max-height:none;overflow-y:auto;touch-action:pan-y;overscroll-behavior:contain;background:#f8fbff}.is-mobile .part-detail>summary{min-height:64px;padding:12px max(16px,env(safe-area-inset-right)) 11px max(16px,env(safe-area-inset-left));background:#f8fbff}.is-mobile .part-detail>summary small{font-size:12px}.is-mobile .part-detail h3{font-size:16px;line-height:1.5;margin-top:4px}.is-mobile .detail-chevron{font-size:21px}.is-mobile .part-detail-content{padding:0 max(16px,env(safe-area-inset-right)) 22px max(16px,env(safe-area-inset-left))}.is-mobile .part-category{font-size:12px;padding:4px 8px}.is-mobile .part-actions{gap:7px;margin:13px 0 17px}.is-mobile .part-actions button{min-height:44px;font-size:13px;padding:8px 9px;gap:5px}.is-mobile .part-actions button svg{height:16px;width:16px}.is-mobile .part-detail dt{font-size:13px;line-height:1.6;margin:16px 0 5px}.is-mobile .part-detail dd{font-size:14px;line-height:1.8;color:#526e92}.is-mobile .parts-empty b,.is-mobile .parts-empty span{font-size:13px}
.is-mobile .model-stage.focused{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;padding-top:env(safe-area-inset-top);overflow:hidden}.is-mobile .webgl-error{inset:12px 16px;padding:18px;font-size:13px}
@media(orientation:landscape) and (max-height:520px){
 .is-mobile .gallery-header{height:calc(44px + env(safe-area-inset-top));min-height:calc(44px + env(safe-area-inset-top))}.is-mobile .brand-icon{width:25px;height:25px;flex-basis:25px}.is-mobile .brand strong{font-size:13px}.is-mobile .header-actions button{height:40px;min-height:40px;padding:5px 9px}
 .is-mobile .stage-header{position:absolute;top:7px;left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));z-index:9;display:flex;min-height:0;height:40px;padding:0;border:0;background:transparent;pointer-events:none}.is-mobile .model-title{flex:0 1 auto;max-width:calc(100% - 95px);padding:8px 10px;background:#fffffff0;border:1px solid #dbe5f4;border-radius:7px;backdrop-filter:blur(6px)}.is-mobile .model-title h1{font-size:14px;line-height:1.35;-webkit-line-clamp:1}.is-mobile .stage-actions{margin-left:auto;pointer-events:auto;gap:4px}.is-mobile .stage-actions .icon-button{height:40px;width:40px;background:#ffffffed;border-color:#d8e3f2}
 .is-mobile .system-bar{position:absolute;top:54px;left:max(10px,env(safe-area-inset-left));z-index:9;width:min(310px,46%);padding:0;border:0;border-radius:7px;background:transparent}.is-mobile .system-chips{display:none}.is-mobile .mobile-system-picker{display:block;width:100%;margin:0}.is-mobile .mobile-system-picker select{display:block;width:100%;height:40px;min-height:40px;padding:7px 9px;font-size:14px;background:#fffffff0;border:1px solid #d7e3f4;box-shadow:0 1px 5px #24476e08}
 .is-mobile .viewport,.is-mobile .model-stage.focused .viewport{flex:1 1 0;height:auto;min-height:0;max-height:none}.is-mobile .part-info-card.mobile-selection-card{position:absolute;right:max(10px,env(safe-area-inset-right));left:auto;bottom:calc(78px + env(safe-area-inset-bottom));width:min(390px,48%);min-height:56px;max-height:72px;border:1px solid #c6d9f1;border-radius:8px;padding:4px 5px;background:#fffffff2;box-shadow:0 3px 14px #264c7a1a}.is-mobile .mobile-selection-name strong{font-size:13px}.is-mobile .mobile-selection-name span{font-size:12px}
 .is-mobile .mobile-action-dock{padding-top:2px;padding-bottom:max(5px,env(safe-area-inset-bottom))}.is-mobile .mobile-dock-status{height:17px;margin-bottom:3px}.is-mobile .mobile-primary-actions{grid-template-columns:1fr 1.2fr 1fr .85fr;max-width:760px;margin:0 auto;gap:7px}.is-mobile .mobile-primary-actions button{height:44px;min-height:44px;font-size:13px}.is-mobile .mobile-dock-status{max-width:756px;margin-left:auto;margin-right:auto}.is-mobile .mobile-last-moved,.is-mobile .mobile-dock-status .disassembly-count,.is-mobile .mobile-dock-status .disassembly-count small{font-size:11px}
 .is-mobile .catalog-panel,.is-mobile .parts-panel{height:96%;max-height:calc(100% - 4px)}.is-mobile .panel-heading{min-height:53px;padding-top:6px;padding-bottom:2px}.is-mobile .mobile-panel-tabs{padding-bottom:6px}.is-mobile .part-detail>summary{min-height:60px}.is-mobile .mobile-camera-controls{grid-template-columns:repeat(4,minmax(0,1fr))}.is-mobile .mobile-sheet-heading{min-height:53px;padding-top:6px;padding-bottom:2px}.is-mobile .tool-sheet-content{padding-top:10px}.is-mobile .catalog-panel .model-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 8px;align-content:start}.is-mobile .catalog-panel .result-count,.is-mobile .catalog-panel .empty-result{grid-column:1/-1}.is-mobile .catalog-panel .model-card img{width:76px;height:57px;flex-basis:76px}.is-mobile .catalog-panel .model-card{min-height:80px}
}
