:root{color:#16242d;font-synthesis:none;background:#e9eff0;font-family:Inter,Microsoft YaHei UI,Noto Sans SC,sans-serif}*{box-sizing:border-box}#three-host{width:100%;height:100%;position:absolute;inset:0}.three-stage #three-host canvas{display:block;width:100%!important;height:100%!important}.key.flow{background:#ffad2f}.concept-empty{z-index:3;color:#d6e6e5;text-align:center;background:#0d1720d1;flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex;position:absolute;inset:0}.concept-empty[hidden]{display:none}.concept-empty strong{font-size:15px}.concept-empty span{color:#9cb4b5;font-size:10px}body{background:linear-gradient(118deg,#eaf0f1 0%,#f8f7f2 46%,#e2eaeb 100%);min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}.shell{width:min(100% - 40px,1600px);margin:0 auto;padding:18px 0 36px}.topbar{border-bottom:1px solid #c9d4d5;justify-content:space-between;align-items:center;height:56px;display:flex}.brand{letter-spacing:.04em;align-items:center;gap:10px;font-size:17px;font-weight:800;display:flex}.brand-mark{color:#fff;clip-path:polygon(0 0,100% 0,83% 100%,0 100%);letter-spacing:-.02em;background:#0e3c4b;place-items:center;width:35px;height:30px;font-size:12px;display:grid}.topbar-meta{color:#597076;font-size:12px;font-weight:700}.pulse{background:#309a83;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.eyebrow{color:#58747a;letter-spacing:.14em;margin:0 0 8px;font-size:10px;font-weight:800}.workflow{color:#718185;letter-spacing:.05em;border-top:1px solid #c9d4d5;align-items:center;gap:11px;padding:15px 0;font-size:11px;font-weight:800;display:flex}.workflow span.active{color:#0d4856}.workflow i{background:#bbcacc;width:30px;height:1px}.workspace{background:#fefffdad;border:1px solid #c8d4d4;grid-template-columns:minmax(280px,320px) minmax(0,1fr) minmax(300px,360px);min-height:680px;display:grid;box-shadow:0 14px 55px #23393d17}.input-panel,.analysis-panel{padding:20px}.input-panel{border-right:1px solid #cbd6d6}.analysis-panel{background:#f8faf8;border-left:1px solid #cbd6d6}.section-heading{justify-content:space-between;align-items:start;gap:10px;display:flex}.section-heading h2{letter-spacing:-.04em;margin:0;font-size:18px}.upload-zone{text-align:center;background:#edf3f2;border:1px dashed #9eb6b9;height:112px;margin:17px 0 8px;padding:21px 14px;display:block;position:relative;overflow:hidden}.upload-zone input{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-title{color:#164a57;font-size:13px;font-weight:800;display:block}.upload-copy{color:#688084;margin-top:6px;font-size:10px;line-height:1.45;display:block}.upload-zone img{object-fit:contain;background:#fff;width:100%;height:100%;position:absolute;inset:0}.input-tip{color:#738489;margin:0 0 14px;font-size:10px;line-height:1.55}.raster-calibration-panel{background:#f8fbf8;border:1px solid #c8d9d5;margin:10px 0 0;padding:10px}.raster-calibration-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.raster-calibration-head span{color:#315d5b;font-size:11px;font-weight:800}.raster-calibration-head b{color:#a1681a;font-size:9px}.raster-calibration-head b.ready{color:#277263}.raster-calibration-panel>p{color:#64797a;margin:6px 0 8px;font-size:9px;line-height:1.4}.raster-tool-row{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:7px;display:grid}.raster-tool-row label{color:#64797a;gap:3px;font-size:8px;display:grid}.raster-tool-row select,.raster-tool-row input{color:#31565c;background:#fff;border:1px solid #b9ceca;min-width:0;padding:6px;font-size:9px}.raster-canvas{cursor:crosshair;touch-action:none;background:#fff;border:1px solid #c7d5d3;min-height:150px;position:relative;overflow:hidden}.raster-canvas img{-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.raster-scale-line{transform-origin:0;pointer-events:none;background:#c95834;height:2px;position:absolute;box-shadow:0 0 0 1px #fffc}.raster-scale-line:before,.raster-scale-line:after{content:"";background:#c95834;width:2px;height:10px;position:absolute;top:-4px}.raster-scale-line:before{left:0}.raster-scale-line:after{right:0}.raster-scale-line i{color:#a13f27;white-space:nowrap;background:#fff8f4;padding:1px 3px;font-size:8px;font-style:normal;position:absolute;top:-16px;right:0}.raster-target-rect{pointer-events:none;background:#2e8b791f;border:2px solid #2e8b79;position:absolute}.raster-calibration-meta{color:#5d7475;min-height:18px;margin:6px 0;font-size:9px;line-height:1.4}.raster-calibration-panel>button{width:100%;padding:7px}.raster-calibration-panel>button:disabled{cursor:not-allowed;opacity:.45}.pdf-vector-panel{background:#f8fbf8;border:1px solid #c8d9d5;margin:10px 0 0;padding:10px}.pdf-vector-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.pdf-vector-head>div{gap:3px;display:grid}.pdf-vector-head span{color:#315d5b;font-size:11px;font-weight:800}.pdf-vector-head b{color:#a1681a;font-size:9px}.pdf-vector-head b.ready{color:#277263}.pdf-vector-head b.saved{color:#217564}.pdf-vector-head small{color:#6b7f82;text-align:right;font-size:8px}.pdf-vector-panel>p{color:#64797a;margin:6px 0 8px;font-size:9px;line-height:1.45}.pdf-vector-list{gap:5px;max-height:210px;display:grid;overflow:auto}.pdf-vector-card{color:#34575e;text-align:left;cursor:pointer;background:#fff;border:1px solid #c9d7d4;gap:4px;width:100%;padding:7px;display:grid}.pdf-vector-card:hover,.pdf-vector-card.selected{background:#e5f0ed;border-color:#287b70}.pdf-vector-card span{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.pdf-vector-card b{color:#28565b;font-size:9px}.pdf-vector-card small,.pdf-vector-card em,.pdf-vector-card i{color:#687d80;font-size:8px;font-style:normal;line-height:1.35}.pdf-vector-card em{color:#9b6920}.pdf-vector-preview{object-fit:contain;background:#fff;border:1px solid #c7d5d3;width:100%;max-height:185px;margin:8px 0 0;display:block}.pdf-vector-preview-note{min-height:20px}.pdf-vector-panel>button{width:100%;padding:7px}.pdf-vector-panel>button:disabled{cursor:not-allowed;opacity:.45}.pdf-vector-promotion{background:#ecf6f2;border:1px solid #9dc3bb;border-left:3px solid #287b70;gap:6px;margin-top:8px;padding:8px;display:grid}.pdf-vector-promotion[hidden]{display:none}.pdf-vector-promotion strong{color:#245d57;font-size:9px}.pdf-vector-promotion p{color:#587776;margin:0;font-size:8px;line-height:1.45}.pdf-vector-promotion label{color:#456867;align-items:flex-start;gap:5px;font-size:8px;line-height:1.4;display:flex}.pdf-vector-promotion input{accent-color:#287b70;width:12px;height:12px;margin:0}.pdf-vector-promotion button{width:100%;padding:7px}.pdf-vector-promotion small{color:#7f672c;font-size:8px;line-height:1.4}.pdf-drawing-metrics{background:#f9fdfb;border:1px solid #c5dcd5;grid-template-columns:1fr 1fr;gap:6px;padding:7px;display:grid}.pdf-drawing-metrics label{gap:3px;display:grid}.pdf-drawing-metrics label span{color:#4f716d;font-size:8px}.pdf-vector-promotion .pdf-drawing-metrics input{color:#31565c;background:#fff;border:1px solid #b9ceca;width:100%;min-width:0;height:auto;padding:5px 6px;font-size:9px}.pdf-vector-promotion .pdf-drawing-metrics select{color:#31565c;background:#fff;border:1px solid #b9ceca;width:100%;min-width:0;padding:5px 6px;font-size:9px}.project-context{background:#f6faf8;border:1px solid #cbd9d7;margin-top:12px;padding:10px}.project-context-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.project-context-head span{color:#315b60;font-size:10px;font-weight:800}.project-context-head b{color:#a1681a;font-size:9px}.project-context-head b.bound{color:#217564}.project-row{gap:5px;margin-top:7px;display:flex}.project-row select{color:#31565c;background:#fff;border:1px solid #bfcfcb;flex:1;min-width:0;padding:6px;font-size:9px}.project-new,.project-create-actions button{color:#2b6662;background:#fff;border:1px solid #8ca9a5;padding:6px 8px;font-size:9px;font-weight:800}.project-context>p{color:#6b7f82;margin:6px 0 0;font-size:8px;line-height:1.4}.project-create-form{border-top:1px solid #d9e4df;margin-top:8px;padding-top:7px}.project-create-actions{justify-content:flex-end;gap:5px;margin-top:7px;display:flex}.project-save{color:#fff!important;background:#388476!important;border-color:#388476!important}.upload-zone.disabled{opacity:.55;filter:grayscale(.25)}.upload-zone.disabled input{cursor:not-allowed}.project-assets{border-top:1px solid #d7e4e0;gap:6px;margin-top:8px;padding-top:8px;display:grid}.project-assets-head{gap:2px;display:grid}.project-assets-head span{color:#315d5b;font-size:9px;font-weight:800}.project-assets-head small{color:#75898a;font-size:8px;line-height:1.35}.project-assets-list{gap:5px;display:grid}.project-asset{background:#fff;border:1px solid #cbdad5;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:6px;display:grid}.project-asset.active{background:#eaf5f0;border-color:#3c8d7e}.project-asset>div{gap:2px;min-width:0;display:grid}.project-asset b{color:#31565c;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.project-asset span{color:#7b704e;font-size:8px;line-height:1.25}.project-asset button{color:#2b6662;white-space:nowrap;background:#fff;border:1px solid #8ea9a5;padding:5px 6px;font-size:8px;font-weight:800}.project-asset.active button{color:#237364;background:#f9fffc;border-color:#61a998}.project-asset button:disabled{cursor:not-allowed;opacity:.65}.profile-class{grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:13px;display:grid}.profile-class button{color:#637277;background:#fff;border:1px solid #c8d4d4;padding:8px 4px}.profile-class b,.profile-class span{display:block}.profile-class b{font-size:11px}.profile-class span{margin-top:3px;font-size:9px}.profile-class button.selected{color:#fff;background:#144c5b;border-color:#144c5b}.profile-class button:disabled{cursor:not-allowed;opacity:.72}.field-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.number-field span,.select-field span{color:#5e7478;margin-bottom:4px;font-size:10px;font-weight:700;display:block}.number-field div{border-bottom:1px solid #b7c8c9;align-items:center;display:flex}.number-field input{color:#1c3f48;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:5px 0;font-weight:800}.number-field small{color:#789094;white-space:nowrap;font-size:9px}.select-field{margin-top:12px;display:block}.select-field select{color:#34535a;background:#fff;border:1px solid #bdcccd;width:100%;padding:8px 7px;font-size:11px}.business-conditions{background:#f6f9f6;border:1px solid #d4dddd;margin-top:11px;padding:8px}.business-conditions-title{color:#45676d;margin-bottom:6px;font-size:9px;font-weight:800}.compact-field{margin-top:6px;display:block}.compact-field span{color:#6b7e81;margin-bottom:3px;font-size:8px;display:block}.compact-field input,.compact-field select{color:#35565c;background:#fff;border:1px solid #c9d5d4;width:100%;padding:5px 6px;font-size:9px}.primary{color:#fff;background:#bb522e;border:0;width:100%;margin-top:17px;padding:11px;font-size:12px;font-weight:800}.primary:hover{background:#9c3f23}.quote-gate{background:#f6f9f6;border:1px solid #d5ddda;margin-top:9px;padding:9px 10px}.quote-submit{color:#28565b;background:#fff;border:1px solid #8fa8a7;width:100%;padding:8px 9px;font-size:10px;font-weight:800}.quote-submit:not(:disabled){color:#fff;background:#287e6e;border-color:#287e6e}.quote-submit:disabled{cursor:not-allowed;color:#879493;background:#eef2ef;border-color:#c8d1ce}.quote-gate p{color:#718184;margin:6px 0 0;font-size:9px;line-height:1.45}.quote-gate p.allowed{color:#277263}.model-panel{background:#e7efef;flex-direction:column;min-width:0;padding:20px 20px 13px;display:flex}.view-switch{border:1px solid #b7c8c9;display:flex}.view-switch button{color:#597175;background:#f7fbfa;border:0;border-right:1px solid #b7c8c9;padding:6px 9px;font-size:10px}.view-switch button:last-child{border-right:0}.view-switch button.selected{color:#fff;background:#174e5d}.three-stage{background:#0d1720;flex:none;height:clamp(500px,62vh,680px);min-height:0;margin-top:16px;position:relative;overflow:hidden}.stage-key,.drag-tip{z-index:2;color:#b8ced0;font-size:10px;position:absolute}.stage-key{bottom:14px;left:16px}.drag-tip{bottom:14px;right:16px}.key{width:8px;height:8px;margin:0 4px 0 11px;display:inline-block}.key:first-child{margin-left:0}.key.aluminum{background:#cfd8de}.key.steel{background:#8098a3}.key.field-gradient{vertical-align:-1px;border:1px solid #ffffff6b;width:56px}.key.field-gradient.speed{background:linear-gradient(90deg,#234b83,#37a6b8,#f1c34d,#d74736)}.key.field-gradient.pressure{background:linear-gradient(90deg,#2468a2,#f0c44f,#c63f32)}.key.field-gradient.shear{background:linear-gradient(90deg,#2e7f8f,#f0b94e,#d43d31)}.key.field-gradient.trend{background:linear-gradient(90deg,#287fc0,#f2c84b,#d84c3f)}#three-host{width:100%;height:100%}.model-caption{color:#60777c;flex-wrap:wrap;gap:6px 14px;padding:13px 0 1px;font-size:11px;display:flex}.model-caption strong{color:#154b59;white-space:nowrap}.status{color:#667a7e;background:#fff;border:1px solid #bdcbcc;padding:4px 7px;font-size:10px;font-weight:800}.status.green{color:#176d5c;background:#e4f2ed;border-color:#7bb4a7}.status.amber{color:#8d5b0d;background:#fff3d4;border-color:#e4c57c}.status.red{color:#9e3927;background:#fbe6e1;border-color:#e0a094}.score-card{color:#e6f1ef;background:#123d48;margin-top:17px;padding:15px}.score-card p{color:#a9c4c4;margin:0;font-size:10px}.score-card strong{letter-spacing:-.06em;margin:5px 0 3px;font-size:22px;display:block}.score-card>span{color:#f0c178;font-size:11px;font-weight:800}.metric-line{border-top:1px solid #3b6270;justify-content:space-between;gap:10px;margin-top:15px;padding-top:10px;display:flex}.metric-line span{color:#b8cdcf;font-size:10px}.metric-line b{color:#fff;font-size:11px;display:block}.metrics{border-top:1px solid #d4dddd;border-left:1px solid #d4dddd;grid-template-columns:1fr 1fr;margin:12px 0;display:grid}.metrics div{border-bottom:1px solid #d4dddd;border-right:1px solid #d4dddd;min-height:49px;padding:8px}.metrics span,.metrics b{display:block}.metrics span{color:#6d8185;font-size:9px}.metrics b{color:#24434b;margin-top:3px;font-size:11px}.reason-title{justify-content:space-between;align-items:end;margin:16px 0 8px;display:flex}.reason-title span{color:#34545b;font-size:12px;font-weight:800}.reason-title small{color:#849397;text-align:right;max-width:110px;font-size:9px;line-height:1.35}.reason-list{max-height:252px;overflow:auto}.reason{border-top:1px solid #dce4e3;grid-template-columns:8px 1fr;gap:8px;padding:9px 0;display:grid}.reason-dot{background:#80aab0;border-radius:50%;width:7px;height:7px;margin-top:4px}.reason.critical .reason-dot{background:#c45035}.reason.warning .reason-dot{background:#d49a31}.reason b{color:#29464d;font-size:11px}.reason p{color:#61757a;margin:3px 0;font-size:10px;line-height:1.45}.reason small{color:#426c73;font-size:9px;line-height:1.35}.next-step{background:#f1f0e9;border-left:2px solid #bc552f;margin-top:12px;padding:12px}.next-step b{color:#a74428;font-size:10px}.next-step p{color:#506468;margin:5px 0 8px;font-size:10px;line-height:1.45}.next-step button{color:#174e5c;background:0 0;border:0;padding:0;font-size:10px;font-weight:800;text-decoration:underline}.next-step button:disabled{color:#98a3a2;cursor:not-allowed;text-decoration:none}.quote-evidence{background:#f6faf7;border:1px solid #cfdcda;margin:12px 0 4px;padding:10px}.quote-evidence-head{justify-content:space-between;align-items:start;gap:8px;display:flex}.quote-evidence-head span{color:#345d63;font-size:11px;font-weight:800}.quote-evidence-head small{color:#89989a;text-align:right;max-width:145px;font-size:8px;line-height:1.3}.machine-list{gap:4px;margin-top:8px;display:grid}.machine-item{background:#fff;border-left:2px solid #bdcccb;grid-template-columns:55px 1fr;gap:2px 6px;padding:5px 6px;display:grid}.machine-item.fit{border-left-color:#309a83}.machine-item.out{opacity:.75;border-left-color:#c6a26a}.machine-item b{color:#31545a;font-size:9px}.machine-item span{color:#4e7774;text-align:right;font-size:9px;font-weight:800}.machine-item.out span{color:#95713a}.machine-item small{color:#718386;grid-column:1/-1;font-size:8px;line-height:1.35}.quote-basis{border-top:1px solid #dbe5e2;margin-top:8px;padding-top:7px}.quote-mode{color:#a24c2e;font-size:9px;font-weight:800}.quote-basis p{color:#617579;margin:3px 0 0;font-size:8px;line-height:1.35}.quote-empty{color:#839194;margin:8px 0 2px;font-size:9px;line-height:1.4}.case-evidence{background:#fbfcfa;border:1px solid #d4dfdc;margin:12px 0 4px;padding:10px}.case-evidence-head{justify-content:space-between;align-items:start;gap:8px;display:flex}.case-evidence-head span{color:#345d63;font-size:11px;font-weight:800}.case-evidence-head small{color:#89989a;text-align:right;max-width:145px;font-size:8px;line-height:1.3}.case-list{gap:6px;margin-top:8px;display:grid}.case-card{background:#fff;border-left:2px solid #9ab8b3;padding:7px 8px}.case-card-head{justify-content:space-between;gap:8px;display:flex}.case-card-head b{color:#31545a;font-size:9px}.case-card-head span{color:#287263;white-space:nowrap;font-size:8px;font-weight:800}.case-card p{color:#5f7477;margin:4px 0 2px;font-size:8px;line-height:1.35}.case-card small{color:#77878a;font-size:8px;line-height:1.35;display:block}.case-card em{color:#9a6c25;margin-top:3px;font-size:8px;font-style:normal;display:block}.engineer-review{background:#fffaf0;border:1px solid #d6c890;margin:10px 0 0;padding:10px}.engineer-review-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.engineer-review-head span{color:#5d4b25;font-size:11px;font-weight:800}.engineer-review-head b{color:#986b21;font-size:9px}.engineer-review>p{color:#786842;margin:6px 0 8px;font-size:9px;line-height:1.4}.review-field{margin-top:7px;display:block}.review-field span{color:#76643b;margin-bottom:3px;font-size:9px;font-weight:700;display:block}.review-field input,.review-field textarea{color:#4e4a36;resize:vertical;background:#fff;border:1px solid #d9cb9f;outline:0;width:100%;padding:6px;font-size:9px}.review-field input:focus,.review-field textarea:focus{border-color:#aa7b27}.review-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.review-actions button{border:1px solid;flex:86px;padding:7px 5px;font-size:9px;font-weight:800}.review-actions button:disabled{cursor:not-allowed;opacity:.45}.review-recompute{color:#315a62;background:#edf4f3;border-color:#607f85}.review-reject{color:#9a4e37;background:#fff;border-color:#bb806d}.review-approve{color:#fff;background:#388476;border-color:#388476}.review-history{border-top:1px solid #e1d5ad;margin-top:10px;padding-top:8px}.review-history-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.review-history-head span{color:#5d4b25;font-size:10px;font-weight:800}.review-history-head b{color:#986b21;font-size:8px}.review-history>p{color:#7d704c;margin:4px 0 6px;font-size:8px;line-height:1.4}.review-history-list{gap:5px;max-height:185px;display:grid;overflow:auto}.review-history-item{background:#fff;border-left:2px solid #b9a46d;padding:7px}.review-history-item.approved{border-left-color:#398977}.review-history-item.rejected{border-left-color:#bd7660}.review-history-item.current{background:#f2faf5}.review-history-item>div{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.review-history-item b{color:#4d5c4f;font-size:9px}.review-history-item span{color:#387b6c;white-space:nowrap;font-size:8px}.review-history-item p{color:#5f6e62;margin:3px 0;font-size:8px;line-height:1.35}.review-history-item small,.review-history-item em,.review-history-empty{color:#788177;font-size:7px;line-height:1.35;display:block}.review-history-item em{color:#8c7240;margin-top:2px;font-style:normal}.review-history-empty{background:#fff;margin:0;padding:6px}.geometry-lineage{background:#f3f9f6;border:1px solid #b7d1cb;margin:10px 0 0;padding:10px}.geometry-lineage-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.geometry-lineage-head span{color:#315f5a;font-size:11px;font-weight:800}.geometry-lineage-head b{color:#287768;font-size:9px}.geometry-lineage>p{color:#5e7673;margin:6px 0 8px;font-size:8px;line-height:1.45}.geometry-lineage-list{gap:5px;max-height:210px;display:grid;overflow:auto}.geometry-lineage-item{background:#fff;border-left:2px solid #95bbb0;padding:7px}.geometry-lineage-item.current{background:#edf8f3;border-left-color:#2d8d78}.geometry-lineage-item>div{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.geometry-lineage-item b{color:#345c58;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:9px;overflow:hidden}.geometry-lineage-item span{color:#397b6d;white-space:nowrap;font-size:8px}.geometry-lineage-item p{color:#627a77;margin:3px 0;font-size:8px;line-height:1.35}.geometry-lineage-item small,.geometry-lineage-item em{color:#718783;font-size:7px;line-height:1.35;display:block}.geometry-lineage-item em{color:#9a6c25;margin-top:2px;font-style:normal}.repair-panel{background:#f5faf7;border:1px solid #c5d8d1;margin:10px 0 0;padding:10px}.repair-panel-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.repair-panel-head span{color:#315d5b;font-size:11px;font-weight:800}.repair-panel-head b{color:#2f8374;font-size:9px}.repair-panel>p{color:#607878;margin:6px 0 8px;font-size:9px;line-height:1.4}.repair-list{gap:6px;max-height:170px;display:grid;overflow:auto}.repair-item{background:#fff;border-left:2px solid #63a796;padding:7px}.repair-item b{color:#31575b;font-size:10px}.repair-item p{color:#627779;margin:3px 0;font-size:9px;line-height:1.35}.repair-item small{color:#7a8b8d;font-size:8px}.repair-apply{color:#fff;background:#4a9183;border:1px solid #4a9183;width:100%;margin-top:8px;padding:7px;font-size:9px;font-weight:800}.repair-apply:disabled{cursor:not-allowed;opacity:.45}.report-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.report-actions button{color:#174e5c;background:0 0;border:0;padding:0;font-size:10px;font-weight:800;text-decoration:underline}.report-version{color:#2d7c6d;margin-top:6px;font-size:9px;line-height:1.35;display:block}.explain-strip{background:#c7d4d4;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:13px;display:grid}.explain-strip div{background:#f8fbfab8;flex-direction:column;gap:3px;padding:12px 15px;display:flex}.explain-strip b{color:#1d505c;font-size:12px}.explain-strip span{color:#657a7e;font-size:10px;line-height:1.4}.site-footer{color:#6a7f83;text-align:center;border-top:1px solid #cfdcdc;margin-top:14px;padding:12px 0 4px;font-size:10px}.demo-report-download{color:#fff;cursor:pointer;background:#2f8374;border:1px solid #2f8374;margin-top:6px;padding:7px 10px;font-size:10px;font-weight:800}.demo-report-download[hidden],body.demo-mode .workflow,body.demo-mode .review-history,body.demo-mode #parameter-source,body.demo-mode #pdf-vector-promotion-state,body.demo-mode #project-copy,body.demo-mode #intake-copy,body.demo-mode .input-tip,body.demo-mode #engineer-review-copy,body.demo-mode .explain-strip,body.demo-mode .simulation-warning,body.demo-mode .simulation-boundary,body.demo-mode #model-source-banner,body.demo-mode .case-evidence-head small,body.demo-mode #engineering-story{display:none}@media (width<=1280px){.concept-check-grid,.concept-validation-grid{grid-template-columns:repeat(4,1fr)}.model-layer-controls,.simulation-mode{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=1120px){.workspace{grid-template-columns:minmax(260px,1fr) minmax(0,2fr)}.analysis-panel{border:0;border-top:1px solid #cbd6d6;grid-column:1/-1}.reason-list{max-height:none}.explain-strip{grid-template-columns:1fr 1fr}.concept-check-grid,.concept-validation-grid{grid-template-columns:repeat(3,1fr)}.model-layer-controls,.simulation-mode{grid-template-columns:repeat(4,minmax(0,1fr))}.document-structure-grid{grid-template-columns:1fr 1fr}}@media (width<=900px){.workspace{grid-template-columns:1fr}.input-panel{border-bottom:1px solid #cbd6d6;border-right:0}.concept-check-grid,.concept-validation-grid{grid-template-columns:1fr 1fr}.model-layer-controls,.simulation-mode{grid-template-columns:repeat(3,minmax(0,1fr))}.explain-strip{grid-template-columns:1fr 1fr}.field-grid{grid-template-columns:1fr}.document-structure-grid{grid-template-columns:1fr 1fr}.document-structure-lists,.model-explain-row{grid-template-columns:1fr}}@media (width<=720px){.shell{width:calc(100% - 24px)}.topbar-meta{display:none}.workspace{display:block}.input-panel{border:0}.model-panel{min-height:560px;padding:16px 14px 12px}.analysis-panel{border-left:0;padding:16px 14px}.workflow{flex-wrap:wrap;gap:6px;font-size:9px}.workflow i{width:10px}.three-stage{min-height:420px}.explain-strip{grid-template-columns:1fr}.concept-check-grid,.concept-validation-grid{grid-template-columns:1fr 1fr}.model-layer-controls,.simulation-mode{grid-template-columns:repeat(2,minmax(0,1fr))}.raster-tool-row{grid-template-columns:1fr}.profile-class{grid-template-columns:1fr 1fr}.document-structure-grid,.geometry-diff-controls{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:stretch}.view-switch{flex-wrap:wrap;width:100%}.view-switch button{flex:auto}}.raster-candidate-state{color:#8b621d;margin-top:6px;font-size:8px;line-height:1.35;display:block}.raster-profile-recovery{background:#ecf6f2;border:1px solid #9dc3bb;border-left:3px solid #287b70;gap:7px;margin-top:9px;padding:8px;display:grid}.raster-profile-recovery[hidden]{display:none}.raster-profile-recovery img{object-fit:contain;background:#fff;border:1px solid #c7d5d3;width:100%;max-height:240px;display:block}.raster-profile-recovery strong{color:#245d57;font-size:9px}.raster-profile-recovery p{color:#587776;margin:0;font-size:8px;line-height:1.45}.raster-profile-recovery button{width:100%;padding:7px}.raster-profile-recovery small{color:#7f672c;font-size:8px;line-height:1.4}.raster-profile-recovery .pdf-drawing-metrics input,.raster-profile-recovery .pdf-drawing-metrics select{color:#31565c;background:#fff;border:1px solid #b9ceca;width:100%;min-width:0;padding:5px 6px;font-size:9px}@media print{body{background:#fff}.topbar,.workflow,.input-panel,.model-panel,.explain-strip,.next-step button{display:none}.shell{width:100%}.workspace{box-shadow:none;border:0;display:block}.analysis-panel{border:0}.reason-list{max-height:none}}.intake-status{background:#ffffffb3;border:1px solid #c6d7d6;margin:13px 0 10px;padding:12px}.intake-status-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.intake-kicker{color:#6e888a;letter-spacing:.14em;font-size:9px;font-weight:800}.intake-pill{color:#718185;background:#f7faf8;border:1px solid #c5d0d0;padding:3px 6px;font-size:9px;font-weight:800}.intake-pill.loading{color:#966411;background:#fff5dc;border-color:#e0c17c}.intake-pill.ready{color:#176d5c;background:#e5f3ed;border-color:#82b9aa}.intake-pill.review{color:#8b5e16;background:#fff4dc;border-color:#dfc38a}.intake-pill.error{color:#9e3927;background:#fbe7e2;border-color:#dfa396}.intake-status strong{color:#234c55;margin-top:9px;font-size:11px;display:block}.intake-status p{color:#6b7f82;margin:5px 0 0;font-size:9px;line-height:1.5}.intake-meta{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.intake-meta span{color:#537176;background:#edf4f2;padding:3px 5px;font-size:8px}.document-structure{background:#f5faf7;border:1px solid #c7d8d3;margin:10px 0 12px;padding:10px}.document-structure-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.document-structure-head span{color:#315d5b;font-size:10px;font-weight:800}.document-structure-head b{color:#2d7b6d;background:#e2f1eb;padding:3px 5px;font-size:8px}.document-structure-head b.partial{color:#95641f;background:#fff1d2}.document-structure>p{color:#607878;margin:6px 0 8px;font-size:8px;line-height:1.4}.document-structure-grid{border-top:1px solid #d4e2de;border-left:1px solid #d4e2de;grid-template-columns:repeat(3,1fr);display:grid}.document-structure-grid div{background:#fff;border-bottom:1px solid #d4e2de;border-right:1px solid #d4e2de;min-height:37px;padding:5px}.document-structure-grid span,.document-structure-grid b{display:block}.document-structure-grid span{color:#758987;font-size:7px}.document-structure-grid b{color:#31575b;margin-top:2px;font-size:10px}.document-structure-lists{grid-template-columns:1fr 1fr;gap:6px;margin-top:7px;display:grid}.document-structure-list{background:#fff;min-width:0;padding:6px}.document-structure-list strong{color:#3d6563;font-size:8px}.document-structure-list ul{gap:3px;margin:5px 0 0;padding:0;list-style:none;display:grid}.document-structure-list li{color:#718382;justify-content:space-between;gap:6px;font-size:7px;display:flex}.document-structure-list li b{color:#476765;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:7px;font-weight:700;overflow:hidden}.document-structure-warning{background:#fff7df;border-left:2px solid #c18b2a;grid-column:1/-1;padding:6px}.document-structure-warning b,.document-structure-warning span{display:block}.document-structure-warning b{color:#8d6320;font-size:8px}.document-structure-warning span{color:#7c704f;margin-top:3px;font-size:7px;line-height:1.35}.model-check{color:#688185;text-align:right;margin-left:auto;font-size:9px}.model-check-state{color:#245766;flex-basis:100%;font-size:10px;font-weight:600;line-height:1.45}.model-source-note{color:#6e7e82;flex-basis:100%;margin-top:1px;font-size:10px;line-height:1.45;display:block}.concept-generation-state{color:#587075;background:#e4eeedb3;border-left:3px solid #91a7aa;gap:8px;margin:8px 0;padding:8px 10px;font-size:10px;line-height:1.45;display:flex}.concept-generation-state strong{color:#154b59;white-space:nowrap}.concept-generation-state.blocked{color:#8a3d2c;background:#fff0eb;border-color:#bf684f}.concept-generation-state.candidate_generated{color:#2f6f5b;background:#eaf7f1;border-color:#4b9b81}.report-actions #save-concept-snapshot{color:#154b59;background:#e7f1f0;border-color:#6b9a9c}.report-actions #export-pdf{color:#fff;background:#ad741c;padding:6px 9px;text-decoration:none}.model-origin-badge{z-index:3;color:#dbe9e8;letter-spacing:.01em;background:#09181fd1;border:1px solid #ffffff38;padding:6px 8px;font-size:9px;font-weight:800;position:absolute;top:12px;left:12px}.model-explain-row{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:8px;margin-top:8px;display:grid}.model-source-banner{color:#d5e6e5;background:#09181ff0;border:1px solid #ffffff2e;align-items:baseline;gap:8px;min-width:0;padding:10px 11px;font-size:10px;line-height:1.5;display:flex}.model-source-banner strong{color:#fff;white-space:nowrap}.model-source-banner.customer{color:#dff4eb;background:#0d3d38eb;border-color:#5ab8979e}.model-source-banner.blocked{color:#ffd4c7;background:#512018eb;border-color:#d36b4fb8}.model-layer-controls{color:#d7e7e5;background:#10242d;border:1px solid #aacdcb6b;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px 8px;width:100%;max-width:none;margin-top:8px;padding:8px 10px;font-size:8px;display:grid;position:static}.model-layer-controls[hidden]{display:none}.model-layer-controls strong{color:#f0c178;grid-column:1/-1;font-size:8px}.model-layer-controls label{white-space:nowrap;align-items:center;gap:3px;display:flex}.model-layer-controls label.unavailable{opacity:.5;cursor:not-allowed}.model-layer-controls input{accent-color:#5eb59f;width:11px;height:11px;margin:0}.model-layer-controls .cut-toggle{color:#f0c178;border-top:1px solid #aacdcb38;grid-column:span 2;margin-top:3px;padding-top:4px}.model-layer-controls .cut-range{color:#b8ced0;border-top:1px solid #aacdcb38;grid-column:span 5;grid-template-columns:auto 1fr;align-items:center;gap:5px;margin-top:3px;padding-top:4px;display:grid}.model-layer-controls .cut-range input{accent-color:#e3a74d;width:100%}.model-layer-controls .cut-range span{min-width:48px}.engineering-story{color:#dcebea;background:#08181ff5;border:1px solid #7db0ae80;min-width:0;padding:10px 11px}.engineering-story[hidden]{display:none}.engineering-story-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.engineering-story-head span{color:#fff;font-size:10px;font-weight:800}.engineering-story-head b{color:#f1c477;background:#cb913229;padding:2px 5px;font-size:8px}.engineering-story-focus{color:#d6e5e3;background:#ffffff0b;border-left:3px solid #e3a74d;margin-top:6px;padding:6px 7px;font-size:8px;line-height:1.45}.engineering-story-steps{gap:4px;margin-top:7px;display:grid}.engineering-story-steps>div{grid-template-columns:25px minmax(0,1fr);align-items:start;gap:6px;display:grid}.engineering-story-steps>div>strong{color:#0e3037;background:#b9d2cf;place-items:center;min-height:25px;font-size:7px;display:grid}.engineering-story-steps span{gap:1px;min-width:0;display:grid}.engineering-story-steps b{color:#eef7f6;font-size:8px}.engineering-story-steps small{color:#9fb7b7;font-size:7px;line-height:1.35}.engineering-story-boundary{border-top:1px solid #aacdcb33;gap:2px;margin-top:7px;padding-top:6px;display:grid}.engineering-story-boundary b{color:#efc578;font-size:8px}.engineering-story-boundary span{color:#9fb4b5;font-size:7px;line-height:1.4}.model-origin-badge.customer{color:#dff4eb;background:#0d3d38e6;border-color:#5ab8979e}.model-origin-badge.blocked{color:#ffd4c7;background:#512018e6;border-color:#d36b4fb8}.cad-preview-host{background:#101c25;border:1px solid #b8ced0;margin:10px 0 0;padding:8px}.cad-preview-host[hidden]{display:none}.cad-preview-canvas{min-height:260px;overflow:hidden}.cad-preview-canvas canvas{width:100%;display:block}.cad-preview-label{color:#c7d9d8;padding:6px 2px 1px;font-size:9px;line-height:1.35}.cad-preview-status{color:#c7d9d8;text-align:center;place-items:center;min-height:100px;font-size:10px;display:grid}.cad-preview-status.error{color:#ffd0c4}.section-candidate-toolbar{color:#c8d9d8;flex-wrap:wrap;align-items:center;gap:5px;padding:8px 2px 5px;font-size:9px;display:flex}.section-candidate-toolbar button{color:#c9dedc;background:#1a3038;border:1px solid #557177;padding:4px 7px;font-size:9px}.section-candidate-toolbar button.selected{color:#fff;background:#286d61;border-color:#6fc0aa}.section-candidate-toolbar small{color:#90adae;flex-basis:100%;line-height:1.35}.section-candidate-preview{background:#0b151b;border:1px solid #294b55;margin-top:4px;padding:7px}.section-candidate-head{color:#d5e5e3;justify-content:space-between;gap:8px;font-size:9px;display:flex}.section-candidate-head span{color:#9bb4b5}.section-candidate-preview svg{background:#101c25;width:100%;height:auto;margin-top:5px;display:block}.section-candidate-preview svg rect{fill:#101c25}.section-candidate-preview svg line{stroke:#78d1b5;stroke-width:1.1px}.section-candidate-preview p{color:#9eb5b5;margin:5px 0 0;font-size:8px;line-height:1.4}.section-candidate-empty{text-align:center;place-items:center;min-height:50px;display:grid;color:#d3b08c!important}.section-candidate-save{border-top:1px solid #294b55;grid-template-columns:1fr auto;align-items:end;gap:6px;margin-top:7px;padding-top:7px;display:grid}.section-candidate-save label{color:#9eb5b5;gap:3px;font-size:8px;display:grid}.section-candidate-save select{color:#27484e;background:#fff;border:1px solid #557177;min-width:0;padding:5px;font-size:9px}.section-candidate-save button{padding:6px 8px}.section-candidate-save small{color:#d3b08c;grid-column:1/-1;font-size:8px;line-height:1.35}.concept-checks{background:#f8fcfae0;border:1px solid #b9cbca;margin-top:9px;padding:9px 10px}.concept-check-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.concept-check-head span{color:#315961;font-size:10px;font-weight:800}.concept-check-head b{padding:3px 6px;font-size:8px;font-weight:800}.concept-check-head b.pass{color:#1b715e;background:#e1f2eb}.concept-check-head b.pending{color:#8c641d;background:#fff1d2}.concept-check-head b.blocked{color:#9d3c2a;background:#fbe4df}.concept-check-grid{grid-template-columns:repeat(5,1fr);gap:5px;margin-top:7px;display:grid}.concept-check-item{background:#fff;border-left:2px solid #9bbab3;min-height:66px;padding:6px}.concept-check-item.pending{border-left-color:#d1a34b}.concept-check-item.fail{border-left-color:#c45035}.concept-check-item.na{opacity:.8;border-left-color:#aab9b7}.concept-check-item>div{justify-content:space-between;align-items:start;gap:4px;display:flex}.concept-check-item b{color:#31545a;font-size:8px;line-height:1.3}.concept-check-item span{color:#287263;white-space:nowrap;font-size:7px}.concept-check-item.pending span{color:#9b6a1f}.concept-check-item.fail span{color:#a3422f}.concept-check-item p{color:#6e8082;margin:4px 0 0;font-size:7px;line-height:1.35}.concept-boundary{color:#7b898a;margin-top:7px;font-size:8px;line-height:1.35;display:block}.concept-source-map{border-top:1px solid #dbe5e2;gap:3px;margin-top:8px;padding-top:7px;display:grid}.concept-validation{border-top:1px solid #dbe5e2;margin-top:8px;padding-top:7px}.concept-validation-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.concept-validation-head strong{color:#315961;font-size:8px}.concept-validation-head small{color:#7b898a;font-size:7px}.concept-validation-grid{grid-template-columns:repeat(5,1fr);gap:4px;margin-top:5px;display:grid}.concept-validation-item{background:#fff;border-left:2px solid #d1a34b;min-height:48px;padding:5px}.concept-validation-item.pass{border-left-color:#4b9b81}.concept-validation-item.blocked{border-left-color:#c45035}.concept-validation-item.not_applicable{opacity:.8;border-left-color:#aab9b7}.concept-validation-item>div{justify-content:space-between;align-items:start;gap:4px;display:flex}.concept-validation-item b{color:#405e63;font-size:7px;line-height:1.3}.concept-validation-item span{color:#9b6a1f;text-align:right;font-size:7px}.concept-validation-item.pass span{color:#287263}.concept-validation-item.blocked span{color:#a3422f}.concept-validation-item small{color:#748587;margin-top:4px;font-size:6.5px;line-height:1.3;display:block}.concept-source-map>strong{color:#315961;font-size:8px}.concept-source-row{background:#fff;justify-content:space-between;align-items:center;gap:6px;padding:3px 5px;font-size:8px;display:flex}.concept-source-row b{color:#4c6669;font-weight:700}.concept-source-row em{color:#9a6c25;white-space:nowrap;font-style:normal}.concept-components{background:#f8fcfae0;border:1px solid #b9cbca;margin-top:8px;padding:9px 10px}.concept-components-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.concept-components-head span{color:#315961;font-size:10px;font-weight:800}.concept-components-head small{color:#718486;font-size:8px}.concept-component-row{background:#fff;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;margin-top:4px;padding:5px 6px;display:grid}.concept-component-row>div{align-items:center;gap:5px;min-width:0;display:flex}.concept-component-row b{color:#405e63;font-size:8px}.concept-component-row em{color:#9a6c25;white-space:nowrap;font-size:8px;font-style:normal}.concept-component-row small{color:#748587;white-space:nowrap;font-size:8px}.concept-trace-note{color:#557174;background:#eef6f3;border-left:2px solid #6e9d96;margin-top:7px;padding:6px;font-size:8px;line-height:1.4}.component-state{color:#236b5c;white-space:nowrap;background:#e4f2ec;padding:2px 4px;font-size:7px}.component-state.concept_only{color:#8b621d;background:#fff1d2}.component-state.missing{color:#a3422f;background:#fbe4df}.component-state.not_applicable{color:#738284;background:#edf1f0}.region-picker{background:#fff9e9;border:1px solid #d7c68e;margin:10px 0 12px;padding:11px}.region-picker-head{justify-content:space-between;align-items:start;gap:8px;display:flex}.region-picker-head strong{color:#5b4a26;margin-top:5px;font-size:11px;display:block}.region-picker-head>span{color:#8d6d25;font-size:9px;font-weight:800}.region-picker>p{color:#786842;margin:7px 0 9px;font-size:9px;line-height:1.45}.region-list{gap:5px;max-height:235px;display:grid;overflow:auto}.region-card{color:#5b5a43;text-align:left;background:#ffffffc7;border:1px solid #ddcf9e;width:100%;padding:8px;display:block}.region-card:hover,.region-card.selected{background:#fff1c5;border-color:#9c6c1e}.region-card.blocked{color:#8d887a;cursor:not-allowed;opacity:.82;background:#f3f1eb;border-color:#d7d2c2}.region-card.blocked .region-card-title b,.region-card.blocked .region-card-metrics,.region-card.blocked .region-card-hint{color:#8d887a}.region-card.blocked:hover{background:#f3f1eb;border-color:#d7d2c2}.region-card-title,.region-card-metrics,.region-card-hint{justify-content:space-between;align-items:center;gap:7px;display:flex}.region-card-title b{color:#614719;font-size:10px}.region-card-title small{color:#8b794d;font-size:8px}.region-card-metrics{color:#6d623f;margin-top:4px;font-size:8px}.region-card-hint{color:#8b7a51;margin-top:4px;font-size:8px;line-height:1.35}.region-confirm-row{align-items:end;gap:6px;margin-top:9px;display:flex}.unit-confirm{flex:1}.unit-confirm span{color:#79643a;margin-bottom:4px;font-size:9px;font-weight:700;display:block}.unit-confirm select{color:#5d512e;background:#fff;border:1px solid #d5c590;width:100%;padding:6px;font-size:9px}.secondary{color:#fff;white-space:nowrap;background:#a87322;border:1px solid #a87322;padding:7px 8px;font-size:9px;font-weight:800}.secondary:disabled{cursor:not-allowed;opacity:.45}.manual-select-panel{background:#f4faf7;border:1px solid #c6d8d1;margin:10px 0 12px;padding:11px}.manual-select-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.manual-select-head span{color:#315d5b;font-size:11px;font-weight:800}.manual-select-head b{color:#2f8374;font-size:9px}.manual-select-panel>p{color:#607878;margin:7px 0 9px;font-size:9px;line-height:1.45}.manual-cad-canvas{cursor:crosshair;touch-action:none;background:#fff;border:1px solid #b9ceca;min-height:210px;position:relative;overflow:hidden}.manual-cad-canvas img{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:210px;display:block}.manual-selection-rect{z-index:2;pointer-events:none;background:#f4a33b2e;border:2px solid #b84f2e;position:absolute}.manual-select-meta{color:#557174;margin-top:6px;font-size:8px;line-height:1.4}.manual-select-actions{margin-top:7px}.manual-select-actions .secondary{flex:none}.parameter-source{color:#6b7f82;background:#f2f6f4;border-left:2px solid #9eb7b7;margin:3px 0 9px;padding:6px 7px;font-size:9px;line-height:1.45}.parameter-source.cad{color:#76613a;background:#fff7df;border-left-color:#c18b2a}.geometry-diff{background:#f5faf8;border:1px solid #aac7c0;margin:10px 0 0;padding:10px}.geometry-diff-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.geometry-diff-head span{color:#285d56;font-size:11px;font-weight:800}.geometry-diff-head b{color:#287768;font-size:9px}.geometry-diff>p{color:#5e7673;margin:6px 0 8px;font-size:8px;line-height:1.45}.geometry-diff-controls{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:7px;display:grid}.geometry-diff-controls label{min-width:0}.geometry-diff-controls span{color:#58736f;margin-bottom:3px;font-size:8px;font-weight:700;display:block}.geometry-diff-controls select{color:#345c58;background:#fff;border:1px solid #b6d0c9;width:100%;min-width:0;padding:5px;font-size:8px}.geometry-diff-controls select:disabled{color:#8c9b98;background:#eef3f1}.geometry-diff-visual{background:#fff;border:1px solid #c2d6d0;overflow:hidden}.geometry-diff-legend{color:#637d78;border-bottom:1px solid #e0ece8;flex-wrap:wrap;gap:8px;padding:5px 7px;font-size:8px;display:flex}.geometry-diff-legend span:before{content:"";vertical-align:middle;background:currentColor;width:8px;height:2px;margin-right:4px;display:inline-block}.geometry-diff-legend .base{color:#6e9f95}.geometry-diff-legend .compare{color:#235f58}.geometry-diff-legend .risk{color:#b95b3e}.geometry-diff-svg{background-image:linear-gradient(#688e8514 1px,#0000 1px),linear-gradient(90deg,#688e8514 1px,#0000 1px);background-size:14px 14px;width:100%;height:182px;display:block}.geometry-diff-path{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.geometry-diff-path.base{stroke:#76a89e;stroke-width:1.35px;stroke-dasharray:4 3}.geometry-diff-path.compare{stroke:#235f58;stroke-width:1.75px}.geometry-diff-marker{fill:none;vector-effect:non-scaling-stroke;stroke-width:1.7px}.geometry-diff-marker.thin{stroke:#b94f36}.geometry-diff-marker.thin circle{fill:#fff7ed;vector-effect:non-scaling-stroke;stroke:#b94f36;stroke-width:1.4px}.geometry-diff-marker.cavity{stroke:#a87224;stroke-dasharray:3 2}.geometry-diff-marker.open{stroke:#8c6532;stroke-dasharray:2 2}.geometry-diff-summary{color:#627a77;margin:7px 0 0;font-size:8px;line-height:1.4}.geometry-risk-list{gap:5px;margin-top:7px;display:grid}.geometry-risk-item{background:#fff;border-left:2px solid #899f9b;padding:7px}.geometry-risk-item.warning{border-left-color:#bd7a31}.geometry-risk-item.critical{border-left-color:#b85a43}.geometry-risk-item b{color:#405f5b;font-size:9px;display:block}.geometry-risk-item p{color:#667a77;margin:3px 0;font-size:8px;line-height:1.35}.geometry-risk-item small{color:#8a6b37;font-size:7px;line-height:1.35;display:block}.geometry-diff-empty{color:#6d817d;background:#fff;margin:0;padding:14px 9px;font-size:8px;line-height:1.45}.project-search{margin-top:7px;display:block}.project-search span{color:#5e7778;margin-bottom:3px;font-size:8px;font-weight:700;display:block}.project-search input{color:#31565c;background:#fff;border:1px solid #bfcfcb;width:100%;padding:6px;font-size:9px}.project-search input:focus{border-color:#4c9084;outline:0}.simulation-mode{border-bottom:1px solid #aecdcf3d;grid-column:1/-1;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;padding-bottom:5px;display:grid}.simulation-mode button{color:#c5d8d7;cursor:pointer;background:#172b34;border:1px solid #557177;min-width:0;padding:5px 4px;font-size:8px;line-height:1.25}.simulation-mode button:hover{color:#fff;border-color:#87ada9}.simulation-mode button.selected{color:#fff4d8;background:#74552a;border-color:#e0ae57;box-shadow:inset 0 0 0 1px #ffd27c29}.reduced-simulation{background:#f8fcfaeb;border:1px solid #b9cbca;margin-top:9px;padding:10px}.reduced-simulation[hidden]{display:none}.reduced-simulation-head{justify-content:space-between;align-items:flex-start;gap:9px;display:flex}.reduced-simulation-head>div{gap:2px;display:grid}.reduced-simulation-head span{color:#315961;font-size:10px;font-weight:800}.reduced-simulation-head small{color:#718486;font-size:7px}.reduced-simulation-head>b{padding:3px 6px;font-size:8px}.reduced-simulation-head>b.low{color:#1b715e;background:#e1f2eb}.reduced-simulation-head>b.medium{color:#8c641d;background:#fff1d2}.reduced-simulation-head>b.high{color:#9d3c2a;background:#fbe4df}.reduced-simulation>p{color:#5e7476;margin:7px 0;font-size:8px;line-height:1.45}.topology-comparison{background:#f6faf8;border:1px solid #aebfbc;border-left:4px solid #b67b1d;margin-top:9px;padding:12px}.topology-comparison[hidden]{display:none}.topology-comparison-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;display:grid}.topology-comparison-head>div:first-child{gap:3px;display:grid}.topology-comparison-head span{color:#62797b;letter-spacing:.04em;font-size:8px;font-weight:800}.topology-comparison-head h3{color:#174c56;margin:0;font-size:14px;line-height:1.25}.topology-comparison-head p{color:#687c7d;max-width:780px;margin:0;font-size:8px;line-height:1.5}.topology-verdict{text-align:right;background:#fff8e8;border:1px solid #d4c18f;min-width:120px;padding:8px 10px}.topology-verdict b{color:#8a5f17;margin:2px 0;font-size:18px;display:block}.topology-verdict small{color:#7e7358;font-size:7px;line-height:1.35;display:block}.topology-cards{grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:8px;margin-top:10px;display:grid}.topology-card{background:#fff;border:1px solid #c8d5d2;gap:8px;min-width:0;padding:10px;display:grid;position:relative;box-shadow:0 4px 12px #1843480d}.topology-card:before{content:"";background:#9aacaa;height:3px;position:absolute;top:-1px;left:-1px;right:-1px}.topology-card.recommended:before{background:#25806e}.topology-card.eliminated:before{background:#b68539}.topology-card.blocked:before{background:#b95c48}.topology-card.viewing{outline-offset:-2px;outline:2px solid #1a6570}.topology-card.loading{background:#fffdf7;outline-color:#b67b1d}.topology-card.load-failed{outline-color:#b95c48}.topology-card-head{grid-template-columns:58px minmax(0,1fr) auto;align-items:start;gap:9px;display:grid}.topology-card-head>div:nth-child(2){gap:2px;min-width:0;display:grid}.topology-card-head span{color:#708486;font-size:7px;font-weight:800}.topology-card-head b{color:#214b53;font-size:10px;line-height:1.25}.topology-card-head small{color:#748587;font-size:7px;line-height:1.35}.topology-card-head>strong{color:#77591f;white-space:nowrap;background:#fff0cf;padding:3px 5px;font-size:7px}.topology-card.recommended .topology-card-head>strong{color:#196453;background:#e2f3ec}.topology-card.blocked .topology-card-head>strong{color:#923f2f;background:#fbe7e1}.topology-map{background:radial-gradient(circle,#e5eeec 0 16%,#f9fbfa 17% 64%,#dce7e5 65% 68%,#fff 69%);border:2px solid #748b8d;border-radius:50%;width:56px;height:56px;position:relative}.topology-map i{background:#cbdad7;border:1px solid #789092;border-radius:50%;width:13px;height:13px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.topology-map span{background:#4eb4ad;border:1px solid #176b75;border-radius:50%;display:block;position:absolute;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 2px #ffffff59}.topology-score{background:#f5f8f7;border-left:3px solid #b67b1d;justify-content:space-between;align-items:end;gap:8px;padding:6px 7px;display:flex}.topology-score span{color:#6c8082;font-size:7px}.topology-score b{color:#174c56;font-size:16px;line-height:1}.topology-score em{color:#829294;font-size:7px;font-style:normal}.topology-metrics{border:1px solid #d9e1df;grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.topology-metrics span{color:#78898b;text-align:center;border-right:1px solid #e3e9e7;gap:3px;min-width:0;padding:5px 3px;font-size:6px;display:grid}.topology-metrics span:last-child{border-right:0}.topology-metrics b{color:#315b61;white-space:nowrap;font-size:7px}.topology-reasons{gap:3px;min-height:34px;display:grid}.topology-reasons span{color:#6b7d7e;padding-left:9px;font-size:7px;line-height:1.35;position:relative}.topology-reasons span:before{content:"";background:#b67b1d;width:4px;height:4px;position:absolute;top:.52em;left:1px;transform:rotate(45deg)}.topology-card.recommended .topology-reasons span:before{background:#2d8c76}.topology-load-state,.topology-load-error{padding:5px 7px;font-size:7px;line-height:1.4;display:block}.topology-load-state{color:#77591f;background:#fff4d8}.topology-load-error{color:#923f2f;background:#fbe7e1}.topology-card button{color:#24565d;cursor:pointer;background:#edf5f3;border:1px solid #4d777b;justify-self:stretch;padding:6px 8px;font-size:8px;font-weight:800}.topology-card button:hover{color:#fff;background:#285f67}.topology-card button:focus-visible{outline-offset:2px;outline:2px solid #d09839}.topology-card button:disabled{color:#9ba8a7;cursor:not-allowed;background:#f2f4f3;border-color:#c8d1cf}.topology-boundary{color:#7b8989;border-top:1px solid #d6dfdd;margin-top:9px;padding-top:7px;font-size:7px;line-height:1.45;display:block}.simulation-warning{background:#fff1ea;border-left:3px solid #c75b3f;gap:3px;margin:7px 0;padding:7px 8px;display:grid}.simulation-warning b{color:#9f402a;font-size:9px}.simulation-warning span{color:#76584e;font-size:7px;line-height:1.45}.simulation-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.simulation-metrics>div{background:#fff;gap:3px;min-width:0;padding:6px;display:grid}.simulation-metrics span{color:#728385;font-size:7px}.simulation-metrics b{overflow-wrap:anywhere;color:#315961;font-size:9px}.engineering-features{grid-template-columns:repeat(4,minmax(0,1fr))}.engineering-gates{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:7px;display:grid}.engineering-gate{background:#fff;border-left:3px solid #d1a34b;min-width:0;padding:6px}.engineering-gate.pass{border-left-color:#4b9b81}.engineering-gate.warning{background:#fff8f0;border-left-color:#d27d47}.engineering-gate.blocked{background:#fff2ee;border-left-color:#c45035}.engineering-gate>div{justify-content:space-between;align-items:flex-start;gap:5px;display:flex}.engineering-gate b{color:#405e63;font-size:8px;line-height:1.35}.engineering-gate span{color:#8c641d;text-align:right;font-size:7px}.engineering-gate.pass span{color:#287263}.engineering-gate.warning span,.engineering-gate.blocked span{color:#a3422f}.engineering-gate small{color:#748587;margin-top:4px;font-size:7px;line-height:1.4;display:block}.optimization-comparison{background:#f4f8f6;border:1px solid #c8d8d4;gap:7px;margin:8px 0;padding:8px;display:grid}.optimization-comparison-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.optimization-comparison-head>div{gap:2px;display:grid}.optimization-comparison-head b{color:#294f56;font-size:9px}.optimization-comparison-head span,.optimization-comparison>small{color:#728486;font-size:7px;line-height:1.45}.optimization-comparison-head strong{color:#8c641d;white-space:nowrap;font-size:8px}.optimization-comparison-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.optimization-comparison-grid>div{background:#fff;border:1px solid #dce7e3;gap:2px;min-width:0;padding:6px;display:grid}.optimization-comparison-grid span,.optimization-comparison-grid small{color:#718486;font-size:7px;line-height:1.35}.optimization-comparison-grid b{color:#315961;overflow-wrap:anywhere;font-size:8px}.pressure-stages{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:6px;display:grid}.pressure-stage{background:#fffaf0;border-left:2px solid #d4a34a;grid-template-columns:minmax(0,1fr) auto;gap:2px 6px;padding:6px;display:grid}.pressure-stage span{color:#506d70;font-size:8px;font-weight:700}.pressure-stage b{color:#a56b21;font-size:8px}.pressure-stage small{color:#7c8887;grid-column:1/-1;font-size:7px}.risk-explanations{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:6px;display:grid}.risk-explanations article{background:#fff8f0;border-left:2px solid #d27d47;gap:3px;padding:6px;display:grid}.risk-explanations b{color:#795333;font-size:8px}.risk-explanations span{color:#766c61;font-size:7px;line-height:1.4}.localized-risk-head{justify-content:space-between;align-items:baseline;gap:8px;margin-top:8px;display:flex}.localized-risk-head b{color:#284f57;font-size:9px}.localized-risk-head span{color:#728486;font-size:7px}.localized-risk-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:5px;display:grid}.localized-risk-grid article{background:#fff;border-left:3px solid #d2a14a;min-width:0;padding:6px}.localized-risk-grid article.high{background:#fff3ef;border-left-color:#cf533c}.localized-risk-grid article.medium{background:#fff9ed;border-left-color:#d29a3f}.localized-risk-grid article.low{background:#f3faf7;border-left-color:#4f9c84}.localized-risk-grid article>div{justify-content:space-between;gap:6px;display:flex}.localized-risk-grid b{color:#315961;font-size:8px}.localized-risk-grid span{color:#a44631;text-align:right;font-size:7px;font-weight:800}.localized-risk-grid small{color:#697d80;margin-top:3px;font-size:7px;line-height:1.4;display:block}.flow-branches{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:6px;display:grid}.flow-branch{background:#fff;border-left:2px solid #55a17e;padding:6px}.flow-branch.fast{background:#fff4f1;border-left-color:#d9544d}.flow-branch.slow{background:#f2f8fd;border-left-color:#3b82c4}.flow-branch.balanced{background:#f2faf6;border-left-color:#45a77a}.flow-branch>div{justify-content:space-between;align-items:center;gap:5px;display:flex}.flow-branch b{color:#405e63;font-size:8px}.flow-branch span{color:#6f8082;white-space:nowrap;font-size:7px}.flow-branch.fast span{color:#a3422f}.flow-branch.slow span{color:#2f6f9f}.flow-branch.balanced span{color:#287263}.flow-branch p{color:#617779;margin:4px 0 2px;font-size:7px}.flow-branch small{color:#7a898a;font-size:7px;line-height:1.35;display:block}.simulation-boundary{color:#7b898a;border-top:1px solid #dbe5e2;margin-top:7px;padding-top:6px;font-size:7px;line-height:1.45;display:block}@media screen and (width>=1441px){.shell{width:min(1920px,100% - clamp(48px,5vw,128px))}.workspace{grid-template-columns:clamp(290px,18vw,360px) minmax(560px,1.65fr) clamp(310px,19vw,390px)}}@media screen and (width>=1121px) and (width<=1440px){.shell{width:min(100% - 42px,1440px)}.workspace{grid-template-columns:minmax(276px,.9fr) minmax(500px,1.75fr) minmax(286px,.98fr)}.input-panel,.analysis-panel,.model-panel{min-width:0}.model-panel .section-heading{flex-wrap:wrap}.view-switch{margin-left:auto}}@media screen and (width<=1320px){.shell{width:min(100% - 36px,1280px)}.workspace{grid-template-columns:minmax(282px,34%) minmax(0,1fr)}.analysis-panel{border-top:1px solid #cbd6d6;border-left:0;grid-column:1/-1}.model-panel .section-heading{flex-wrap:wrap}.view-switch{margin-left:auto}.three-stage{flex:none;height:clamp(440px,52vh,680px);min-height:clamp(440px,52vh,680px)}.model-explain-row{grid-template-columns:1fr}}@media screen and (width<=960px){.shell{width:min(100% - 28px,900px);padding-top:14px}.workspace{grid-template-columns:minmax(0,1fr);display:grid}.input-panel,.model-panel,.analysis-panel{border:0;border-top:1px solid #cbd6d6;grid-column:1;min-width:0}.input-panel{border-top:0}.model-panel{padding:18px}.model-panel .section-heading{flex-direction:column;align-items:stretch}.view-switch{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin:0;display:grid}.view-switch button{text-wrap:balance;min-width:0;min-height:42px;padding:7px 5px;line-height:1.3}.three-stage{flex:none;height:clamp(380px,55vh,560px);min-height:0}.reason-list{max-height:none}}@media screen and (width<=640px){.topology-comparison{padding:9px}.topology-comparison-head{grid-template-columns:1fr;gap:8px}.topology-verdict{text-align:left;min-width:0}.topology-cards{grid-template-columns:1fr}.topology-card-head{grid-template-columns:52px minmax(0,1fr)}.topology-card-head>strong{grid-column:2;justify-self:start}.topology-map{width:50px;height:50px}.topology-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.topology-metrics span:nth-child(3){border-right:0}.topology-metrics span:nth-child(n+4){border-top:1px solid #e3e9e7}body{min-width:0;overflow-x:clip}.shell{width:min(100% - 20px,640px);padding-bottom:22px}.topbar{height:auto;min-height:52px}.topbar-meta{display:none}.workflow{scrollbar-width:thin;gap:5px;padding:12px 0;font-size:9px;overflow-x:auto}.workflow span,.workflow i{flex:none}.workflow i{width:10px}.input-panel,.analysis-panel,.model-panel{padding:15px}.section-heading h2{font-size:16px}.three-stage{height:clamp(310px,52svh,440px);margin-top:12px}.model-origin-badge{width:fit-content;max-width:calc(100% - 20px);line-height:1.35;top:10px;left:10px;right:10px}.model-layer-controls{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;inset:auto 10px 78px}.simulation-mode{grid-template-columns:repeat(4,minmax(0,1fr))}.model-layer-controls .cut-toggle,.model-layer-controls .cut-range{grid-column:1/-1}.engineering-story{width:auto;padding:7px 8px;top:48px;left:10px;right:10px}.engineering-story-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.model-source-banner{flex-direction:column;align-items:flex-start;gap:2px;padding:6px 8px;font-size:9px;bottom:31px;left:10px;right:10px}.stage-key{max-width:none;font-size:8px;line-height:1.35;bottom:9px;left:10px;right:10px}.drag-tip{display:none}.model-caption{gap:5px;padding-top:10px;font-size:10px}.field-grid,.raster-tool-row,.geometry-diff-controls{grid-template-columns:minmax(0,1fr)}.region-confirm-row,.project-row,.project-create-actions{flex-direction:column;align-items:stretch}.region-confirm-row .secondary,.project-row .secondary,.project-create-actions button{width:100%}.concept-check-grid,.concept-validation-grid,.simulation-metrics,.engineering-gates,.optimization-comparison-grid,.pressure-stages,.flow-branches,.localized-risk-grid,.risk-explanations,.explain-strip{grid-template-columns:minmax(0,1fr)}.optimization-comparison-head{flex-direction:column;align-items:stretch}.optimization-comparison-head strong{white-space:normal}.concept-component-row{grid-template-columns:minmax(0,1fr);gap:3px}.concept-component-row em,.concept-component-row small{white-space:normal}}@media screen and (width<=400px){.view-switch{grid-template-columns:minmax(0,1fr)}.view-switch button{border-bottom:1px solid #b7c8c9;border-right:0}.view-switch button:last-child{border-bottom:0}.three-stage{height:420px}.model-layer-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-height:none;padding:5px;inset:48px 8px auto;overflow:visible}.model-layer-controls>strong,.model-layer-controls>label:not(.cut-toggle):not(.cut-range){display:none}.simulation-mode{grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:4px}.simulation-mode button{padding:5px 2px;font-size:7px}.model-layer-controls .cut-toggle,.model-layer-controls .cut-range{min-width:0;font-size:7px}.model-layer-controls .cut-range{grid-template-columns:auto minmax(0,1fr)}.model-layer-controls .cut-range span{min-width:0}.engineering-story{top:184px;left:8px;right:8px}.engineering-story-steps{display:none}.reduced-simulation-head,.flow-branch>div{flex-direction:column;align-items:flex-start}}
