.delivery-launchers{position:absolute;left:34px;top:124px;display:flex;gap:8px}.delivery-launchers button{display:flex;align-items:center;gap:7px;min-height:40px;padding:0 13px;background:#fffffff0;color:#46525a;border:1px solid #fff;border-radius:4px;font-size:12px;box-shadow:0 4px 20px #1b263510}.delivery-launchers button:hover{color:#ba0014;background:#fff}.delivery-launchers button>span{font-size:10px;color:#8b9399;border-left:1px solid #dce1e5;padding-left:7px}.measuring .dimension-panel{top:180px}.delivery-dialog{padding:0;border:1px solid #ffffff80;border-radius:12px;width:min(960px,calc(100vw - 40px));max-height:min(880px,calc(100dvh - 48px));color:#29333b;background:#f7f8f9;box-shadow:0 25px 100px #10182066;overflow:auto;overscroll-behavior:contain}.delivery-dialog::backdrop{background:#18232cc9;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.delivery-header{display:flex;align-items:flex-start;justify-content:space-between;padding:25px 30px 20px;gap:20px;background:#fff}.delivery-eyebrow{font-size:11px;letter-spacing:1.6px;color:#879198;margin:0 0 10px}.delivery-header h2{font-size:23px;font-weight:600;margin:0;letter-spacing:.5px}.delivery-close{background:#f2f4f5;border:0;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;color:#66727b;flex-shrink:0}.delivery-close:hover{background:#f8e9eb;color:#b90014}.delivery-tabs{display:flex;padding:0 30px;background:#fff;border-bottom:1px solid #e3e7ea;position:sticky;top:0;z-index:1;gap:26px}.delivery-tabs button{display:flex;gap:8px;align-items:center;min-height:49px;border:0;border-bottom:3px solid transparent;background:transparent;font-size:14px;color:#75818a;padding:0 2px}.delivery-tabs [aria-selected=true]{color:#b90014;border-bottom-color:#b90014;font-weight:600}.delivery-body{padding:26px 30px 24px;outline-offset:-4px}.delivery-body h3{font-size:15px;margin:0 0 11px}.delivery-body p{font-size:12px;line-height:1.85;color:#68767f;margin:0}.reference-warning{background:#fff1ee;border:1px solid #efd4cf;border-left:3px solid #b94737;padding:15px 18px;border-radius:5px}.reference-warning>span{font-size:13px;font-weight:600;color:#a43c2e}.reference-warning p{margin-top:6px;color:#895d56}.construction-metrics{display:grid;grid-template-columns:repeat(3,1fr);margin:22px 0 28px;padding:20px 0;border-top:1px solid #e3e7e9;border-bottom:1px solid #e3e7e9}.construction-metrics>div{padding:0 22px;border-right:1px solid #e0e5e8}.construction-metrics>div:first-child{padding-left:0}.construction-metrics>div:last-child{border:0}.construction-metrics small{display:block;font-size:11px;color:#7a8790;margin-bottom:10px}.construction-metrics strong{font-size:22px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.construction-metrics em{font-style:normal;font-size:11px;color:#7c8990}.construction-metrics span{display:block;font-size:10px;color:#8c969c;margin-top:7px}.construction-section{margin-top:26px}.pending-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pending-grid article{padding:17px 18px;background:#fff;border:1px solid #e4e8ea;border-radius:6px}.pending-grid article>span{color:#ac7276;font-size:10px;letter-spacing:1px}.pending-grid h4{font-size:13px;margin:9px 0 6px;font-weight:600}.boundary-warning{padding:18px;margin-top:22px;background:#f3ece1;border:1px solid #e8d8bc;border-radius:6px}.boundary-warning h3{color:#8b612e}.boundary-warning ul{padding-left:18px;margin:8px 0;font-size:12px;line-height:1.9;color:#79684e}.boundary-warning b{font-weight:600}.boundary-warning p{color:#8d795c}.delivery-downloads{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.delivery-downloads a,.film-footer a{display:flex;align-items:center;gap:9px;color:#4a5660;background:#fff;text-decoration:none;border:1px solid #dde3e7;border-radius:5px;padding:14px;font-size:12px;min-height:46px}.delivery-downloads a>span{margin-left:auto;font-size:10px;color:#8b959d}.delivery-downloads a.primary{border-color:#dba8ae;color:#ad0014;background:#fff8f9}.delivery-downloads a:hover,.film-footer a:hover{border-color:#b90014;color:#b90014}.delivery-dialog a:focus-visible{outline:2px solid #b90013;outline-offset:3px}.delivery-footnote{margin-top:24px;padding-top:16px;border-top:1px solid #e1e6e9;font-size:10px;color:#87929a;line-height:1.8}.film-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}.film-heading h3{font-size:19px;margin-bottom:5px}.film-heading>span{font-size:11px;color:#7d8993;white-space:nowrap;font-variant-numeric:tabular-nums}.booth-film{width:100%;display:block;aspect-ratio:16/9;background:#20262b;object-fit:contain;border-radius:7px}.film-error{padding:12px;background:#fff0eb;color:#a53f30!important;border-radius:5px;margin-top:12px!important}.film-chapters{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-top:14px}.film-chapters button{text-align:left;padding:11px 10px;background:#fff;border:1px solid #e2e7ea;border-radius:5px;font-size:11px;color:#52616d}.film-chapters button:hover{border-color:#cf8c95;color:#b90014}.film-chapters span{display:block;font-size:10px;color:#a7777e;margin-bottom:5px;font-variant-numeric:tabular-nums}.film-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.film-footer p{font-size:11px}.film-footer p>span{color:#919ba2;font-size:10px}.film-footer a{flex-shrink:0}.film-footer a>span{font-size:10px;color:#8b959d}@media(max-width:850px){.delivery-launchers{left:18px;top:116px}}@media(max-width:700px){.measuring .dimension-panel{top:auto}.construction-metrics>div{padding:0 12px}.construction-metrics strong{font-size:18px}.film-chapters{grid-template-columns:repeat(3,1fr)}.film-footer{align-items:flex-start;flex-direction:column}.film-footer a{width:100%;justify-content:center}}@media(max-width:520px){.delivery-launchers{left:12px;top:94px;gap:6px}.delivery-launchers button{font-size:11px;min-height:35px;padding:0 10px}.delivery-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 20px);border-radius:8px}.delivery-header{padding:18px 16px 14px;gap:10px}.delivery-header h2{font-size:18px}.delivery-eyebrow{font-size:10px;letter-spacing:.7px}.delivery-tabs{padding:0 16px}.delivery-body{padding:18px 16px}.construction-metrics{grid-template-columns:1fr;gap:16px;padding:18px 0}.construction-metrics>div{padding:0!important;border:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.construction-metrics small{margin:0}.construction-metrics span{width:100%;text-align:right;margin-top:0}.pending-grid,.delivery-downloads{grid-template-columns:1fr}.film-heading{align-items:flex-start;flex-direction:column}.film-heading h3{font-size:17px}.reference-warning{padding:12px}.pending-grid article{padding:14px}.boundary-warning{padding:14px}.explosion-note,.measuring .explosion-note{top:142px}.film-chapters button{padding:10px 6px}}:root{font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif;color:#2b3034;background:#cbd0d3;font-synthesis:none}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{min-width:320px;overflow:hidden}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible{outline:2px solid #b90013;outline-offset:4px}button:disabled{opacity:.4;cursor:wait}.experience{width:100%;height:100%;position:relative}.scene{position:absolute;top:0;right:0;bottom:0;left:0}.scene canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none}.scene canvas:active{cursor:grabbing}.ui{transition:opacity .22s}.topbar{position:absolute;top:28px;left:34px;right:30px;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none}.project{padding:14px 18px;background:#fffffff0;border:1px solid #ffffff;border-radius:4px;box-shadow:0 4px 25px #19222c0a}.project strong{font-size:19px;letter-spacing:1px}.project strong span{color:#c30a16;padding:0 7px;font-weight:400}.project p{margin:7px 0 0;color:#777f85;font-size:12px;letter-spacing:1px}.top-actions{display:flex;gap:8px;pointer-events:auto}.top-actions button{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid #fff9;border-radius:4px;color:#3b4148;background:#ffffffeb;box-shadow:0 3px 18px #202a3510;min-height:46px}.top-actions button:hover,.toolbar button:hover{background:#fff;color:#bd0014}.toolbar{position:absolute;right:30px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;padding:6px;border:1px solid #ffffffd0;background:#ffffffdb;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:5px;box-shadow:0 6px 28px #1b253018}.toolbar button{min-height:61px;min-width:56px;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#687078;border-radius:3px}.toolbar span{font-size:12px}.toolbar button.selected{color:#c40016;background:#faeeee}.bottom{position:absolute;bottom:28px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:15px;white-space:nowrap}.bottom nav{display:flex;padding:5px;border:1px solid #fff9;background:#fffffff2;border-radius:5px;box-shadow:0 5px 30px #16222f1a}.bottom nav button{border:0;color:#6a727a;min-height:49px;padding:0 22px;background:transparent;border-radius:3px;font-size:14px;display:flex;align-items:center;gap:11px}.bottom nav small{font-size:11px;opacity:.55}.bottom nav button.active{background:#bf0014;color:#fff}.hint{font-size:12px;color:#636b72;text-shadow:0 1px 1px #fff8}.hint span{padding-left:20px;color:#889096}.light-control{position:absolute;bottom:39px;left:34px;display:flex;flex-direction:column;gap:10px;font-size:12px;color:#626b72}.light-control input{width:120px;accent-color:#bc0015;cursor:pointer}.clean .ui{opacity:0;pointer-events:none}.clean .ui *{pointer-events:none}.exit-clean{position:absolute;bottom:24px;right:28px;background:#fff9;border:1px solid #fff9;color:#46515a;padding:10px 16px;border-radius:3px;font-size:13px}.exit-clean span{margin-left:12px;color:#8b9399}.loading{position:absolute;top:0;right:0;bottom:0;left:0;background:#dce0e3;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;z-index:9}.loading strong{font-size:25px;color:#b30b17;letter-spacing:3px}.loading span{font-size:14px;color:#647078}@media(max-width:850px){.topbar{top:18px;left:18px;right:18px}.project{padding:12px}.project strong{font-size:16px}.project p{font-size:11px}.toolbar{right:18px}.light-control{display:none}.bottom nav button{padding:0 17px}.hint span{display:none}}@media(max-width:520px){.topbar{top:12px;left:12px;right:12px}.project{padding:9px 11px}.project strong{font-size:15px}.project p{font-size:10px;letter-spacing:.2px}.top-actions{gap:4px}.top-actions button{padding:10px;min-height:40px}.toolbar{right:12px;padding:3px;top:43%}.toolbar button{min-width:42px;min-height:52px}.toolbar span{font-size:10px}.bottom{bottom:20px;gap:12px;width:calc(100% - 24px)}.bottom nav{width:100%;justify-content:space-between}.bottom nav button{font-size:13px;padding:0 12px;min-height:44px;gap:0}.bottom nav small{display:none}.hint{font-size:11px}}@media(prefers-reduced-motion:reduce){.ui{transition:none}}@media(max-width:520px){body{min-width:280px}.toolbar{top:auto;bottom:112px;right:50%;transform:translate(50%);flex-direction:row}.toolbar button{min-width:52px;min-height:48px}.topbar{gap:8px}.project strong{font-size:13px}.top-actions button{padding:8px}.bottom nav button{padding:0 8px}}.measuring .scene{left:330px}.dimension-panel{position:absolute;left:24px;top:132px;bottom:120px;width:292px;display:flex;flex-direction:column;background:#fffffff5;border:1px solid #fff;border-radius:6px;box-shadow:0 8px 32px #1b26351a;overflow:hidden}.dimension-heading{display:flex;justify-content:space-between;align-items:center;padding:18px 16px 10px}.dimension-heading strong{display:block;font-size:17px}.dimension-heading span{display:block;font-size:11px;color:#78828a;margin-top:5px}.dimension-heading button{border:0;background:none;color:#687078;padding:8px}.dimension-note{font-size:11px;line-height:1.65;color:#7b8186;margin:0;padding:0 16px 12px}.dimension-filters{display:flex;gap:8px;padding:0 14px 12px}.dimension-filters select,.dimension-filters button{font:inherit;font-size:12px;background:#f0f3f5;border:1px solid #dfe4e8;border-radius:3px;padding:8px;color:#43505a}.dimension-filters select{flex:1;min-width:0}.part-list{flex:1;overflow:auto;padding:0 10px 10px;overscroll-behavior:contain}.part-card{border-bottom:1px solid #e7ebee}.part-card>button{width:100%;border:0;background:transparent;display:flex;gap:10px;align-items:center;text-align:left;padding:12px 5px;color:#3e4850}.part-card>button:hover{background:#f1f5f7}.part-id{background:#f3e6e8;color:#a30c1b;font-size:11px;border-radius:3px;min-width:26px;height:25px;display:grid;place-items:center}.part-card strong{font-size:12px;font-weight:600}.part-card small{display:block;font-size:11px;color:#77838d;margin-top:6px;font-variant-numeric:tabular-nums}.part-card.chosen{background:#eaf3f9;border-radius:4px}.part-detail{font-size:11px;padding:0 10px 10px 40px;line-height:1.6;color:#586874}.part-detail p{margin:7px 0}.part-detail b{font-weight:500;font-variant-numeric:tabular-nums}.part-detail summary{cursor:pointer;color:#2771a1}.dimension-panel footer{padding:11px 15px;font-size:10px;color:#849099;border-top:1px solid #e8ecef}.explosion-note{position:absolute;top:128px;left:50%;transform:translate(-50%);background:#ffffffd9;padding:9px 15px;border-radius:4px;font-size:12px;color:#697881;pointer-events:none}.measuring .explosion-note{left:65%}@media(max-width:700px){.measuring .scene{left:0;bottom:340px}.dimension-panel{left:12px;right:12px;top:auto;bottom:174px;width:auto;height:230px}.dimension-heading{padding:10px 12px 4px}.dimension-heading strong{font-size:13px}.dimension-heading span{display:inline;margin-left:10px}.dimension-heading>div{display:flex;align-items:center}.dimension-note{font-size:10px;padding:0 12px 6px}.dimension-filters{padding:0 12px 5px}.dimension-filters select,.dimension-filters button{padding:5px;font-size:11px}.dimension-panel footer{display:none}.part-card>button{padding:9px 5px}.measuring .explosion-note,.explosion-note{top:96px;left:50%;font-size:10px;white-space:nowrap}.toolbar button{min-width:48px}}
