:root{--ink:#18232d;--muted:#697986;--line:#d9e1e7;--panel:#f8fafb;--blue:#087e9c;--blue2:#06657d;--bg:#e9eef2}.forge-project-identity{display:flex;flex-direction:column;gap:2px;min-width:0}.forge-project-identity a{width:max-content;color:var(--blue);font-size:10px;font-weight:750;text-decoration:none}.forge-project-identity strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forge-project-identity small{font-size:10px;letter-spacing:.12em;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forge-context-state{min-width:0;align-items:center;justify-content:center}.forge-context-state section{width:min(520px,calc(100vw - 40px));padding:40px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:center}.forge-context-state .mark{margin:0 auto 18px}.forge-context-state a{display:inline-block;margin-top:12px;color:var(--blue);font-weight:750;text-decoration:none}*{box-sizing:border-box}body,html{margin:0;height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg)}button,input,textarea{font:inherit}button:disabled{opacity:.55;cursor:not-allowed}main{height:100vh;display:flex;flex-direction:column;min-width:1050px}header{height:68px;background:#fff;border-bottom:1px solid var(--line);display:grid;grid-template-columns:280px 1fr auto auto;padding:0 20px;grid-gap:28px;gap:28px;z-index:3}.brand,header{align-items:center}.brand{display:flex;gap:10px}.brand>div,.project-title{display:flex;flex-direction:column}.brand small,.project-title span{font-size:10px;letter-spacing:.12em;color:var(--muted)}.mark{width:34px;height:34px;border-radius:8px;background:linear-gradient(145deg,#0b8eaa,#07576c);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}.project-title strong{font-size:14px}.save-state{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:7px}.save-state i{width:7px;height:7px;border-radius:50%;background:#4ba879}.save-state i.saving{background:#e0a12d;animation:pulse 1s infinite}.start-over{border:1px solid #c7776f;background:#fff7f6;color:#8f342c;border-radius:5px;padding:8px 12px;font-weight:700;cursor:pointer}.start-over:hover:not(:disabled){background:#fbe9e7}.start-over:disabled{opacity:.5;cursor:not-allowed}.dropzone button,.primary{border:0;border-radius:6px;background:var(--blue);color:#fff;padding:10px 15px;font-weight:650;cursor:pointer}.dropzone button:hover,.primary:hover{background:var(--blue2)}.workspace{display:grid;grid-template-columns:280px minmax(420px,1fr) 390px;min-height:0;flex:1 1}.left-panel,.right-panel{background:#fff;overflow:auto;z-index:2}.left-panel{border-right:1px solid var(--line)}.right-panel{border-left:1px solid var(--line)}aside section{padding:20px;border-bottom:1px solid var(--line)}h2{font-size:14px;margin:0 0 18px}.dropzone{min-height:250px;border:1.5px dashed #aab8c3;border-radius:10px;background:#f8fafb;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:22px;transition:.15s}.dropzone.dragging{border-color:var(--blue);background:#eff9fb}.dropzone strong{font-size:14px}.dropzone span,.muted{font-size:12px;color:var(--muted);line-height:1.5}.upload-icon{height:48px;width:58px;border-radius:5px;border:1px solid #8fa1ad;color:var(--blue);font-size:10px;font-weight:800;display:grid;place-items:center;position:relative}.upload-icon:after{content:"";position:absolute;width:14px;height:1px;background:#8fa1ad;box-shadow:0 5px #8fa1ad,0 10px #8fa1ad}.replace .dropzone{margin-top:20px;min-height:150px}.replace .upload-icon,.replace strong{display:none}dl{display:grid;grid-template-columns:1fr auto;margin:0;grid-gap:10px 12px;gap:10px 12px;font-size:12px}dt{color:var(--muted)}dd{margin:0;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{border-radius:999px;background:#edf2f4;padding:3px 7px;text-transform:capitalize}.badge.ready{background:#e4f5ec;color:#27744d}.badge.failed{background:#fce8e6;color:#a63d34}.badge.processing,.badge.queued{background:#e5f4f8;color:#096f89}.viewport{position:relative;min-width:0;min-height:0;background:#edf2f5}.viewer{height:100%;width:100%;position:relative}.viewer-tools{position:absolute;top:14px;left:14px;display:flex;gap:6px}.viewer-tools button{border:1px solid #c4ced5;border-radius:5px;background:hsla(0,0%,100%,.92);padding:7px 10px;font-size:11px;box-shadow:0 1px 3px #20304016;cursor:pointer}.viewer-tools button[aria-pressed=true]{color:var(--blue);border-color:#76adba}.empty-view{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.empty-view h1{font-size:20px;margin:20px 0 5px}.empty-view p{max-width:430px;color:var(--muted);font-size:13px}.axis-cube{width:72px;height:72px;border:1px solid #b9c6ce;transform:rotate(30deg) skew(-10deg);display:grid;place-items:center;color:#82939f;font-size:11px;background:#f7f9fa;box-shadow:12px 12px 30px #aab7c344}.progress{width:260px;height:5px;background:#d8e2e7;border-radius:4px;overflow:hidden;margin:15px}.progress span{display:block;height:100%;width:35%;background:var(--blue);animation:loading 1.3s ease-in-out infinite}.error{position:absolute;left:18px;right:18px;bottom:18px;padding:12px 14px;border:1px solid #e9b8b0;border-radius:7px;background:#fff5f3;display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:12px;gap:12px;font-size:12px;color:#813b32}.error button,.link{border:0;background:none;color:var(--blue);cursor:pointer;font-size:11px}.selection-mode{position:absolute;top:14px;right:14px;border:1px solid #b9c8d1;border-radius:999px;background:hsla(0,0%,100%,.94);padding:6px 10px;color:#31515e;font-size:10px;font-weight:700;box-shadow:0 1px 3px #20304016}.right-panel label{font-size:9px;letter-spacing:.12em;color:var(--muted);font-weight:700}.section-heading{display:flex;align-items:center;justify-content:space-between}.section-heading h2{margin:0}.section-heading>span{background:#e8f4f7;color:var(--blue);border-radius:999px;padding:3px 8px;font-size:11px}.face-card{border:1px solid var(--line);border-radius:7px;background:#fafcfd;padding:10px;margin-top:9px}.face-card>div{display:flex;justify-content:space-between;gap:8px;margin-bottom:9px}.face-card b{font-family:ui-monospace,SFMono-Regular,monospace;font-size:9px;overflow:hidden;text-overflow:ellipsis}.face-card span{font-size:9px;text-transform:capitalize;color:var(--blue);background:#e9f4f7;border-radius:10px;padding:2px 6px}.face-card dl{font-size:10px;gap:6px}.face-card dd{font-family:ui-monospace,SFMono-Regular,monospace}.right-panel .muted{margin:10px 0 0}.workflow-nav{padding:18px 12px}.workflow-heading{padding:3px 8px 14px;display:flex;flex-direction:column;gap:5px}.current-step-card label,.workflow-heading span{font-size:9px;letter-spacing:.13em;font-weight:750;color:var(--muted)}.workflow-heading strong{font-size:13px}.workflow-nav ol{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:3px}.workflow-nav button{width:100%;display:grid;grid-template-columns:26px 1fr 8px;align-items:center;grid-gap:9px;gap:9px;text-align:left;padding:9px 8px;border:1px solid transparent;background:transparent;border-radius:7px;color:var(--ink);cursor:pointer}.workflow-nav button:hover:not(:disabled){background:#f1f6f8}.workflow-nav button.active{border-color:#aad0d9;background:#edf8fa}.workflow-nav button:disabled{opacity:.52}.step-number{height:24px;width:24px;display:grid;place-items:center;border:1px solid #c6d0d7;border-radius:50%;font-size:10px;font-weight:750}.workflow-nav button.active .step-number{background:var(--blue);border-color:var(--blue);color:#fff}.step-label{display:flex;flex-direction:column;gap:2px}.step-label b{font-size:11px}.step-label small{font-size:9px;color:var(--muted);text-transform:capitalize}.status-dot{width:7px;height:7px;border-radius:50%;background:#c8d0d5}.status-dot.complete{background:#42a36d}.status-dot.current{background:var(--blue);box-shadow:0 0 0 3px #cce7ed}.status-dot.needs_attention,.status-dot.outdated{background:#e0a12d}.status-dot.failed{background:#c84c43}.status-dot.running{background:#238ba5;animation:pulse 1s infinite}.current-step-card h2{margin:7px 0 11px}.badge.workflow-current{background:#e5f4f8;color:#096f89}.badge.workflow-complete{background:#e4f5ec;color:#27744d}.badge.workflow-needs_attention{background:#fff3d7;color:#8a6112}.workflow-nav .optimization-submenu{list-style:none;margin:4px 0 7px 32px;padding:0 0 0 10px;border-left:2px solid #d7e6ea;display:flex;flex-direction:column;gap:4px}.workflow-nav .optimization-submenu button{grid-template-columns:28px 1fr;padding:8px}.workflow-nav .optimization-submenu button>span:first-child{font-size:9px;font-weight:800;color:var(--blue)}.workflow-nav .optimization-submenu button>span:last-child{display:flex;flex-direction:column;gap:2px}.workflow-nav .optimization-submenu b{font-size:10px}.workflow-nav .optimization-submenu small{font-size:8px;line-height:1.25;color:var(--muted)}.manufacturing-stages{margin:10px 0;border:1px solid var(--line);border-radius:6px;padding:8px}.manufacturing-stages summary{cursor:pointer;font-size:10px;font-weight:800;color:var(--blue)}.manufacturing-stages ol{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:4px;gap:4px}.manufacturing-stages li{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:var(--muted)}.manufacturing-stages li b{font-size:8px;text-transform:uppercase}.manufacturing-stages li.current{color:var(--blue)}.organization-panel>section{padding:16px 18px}.button-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px;margin-top:12px}.button-grid button,.form-actions button,.row-actions button{border:1px solid #c9d3da;background:#fff;border-radius:5px;padding:7px 8px;font-size:10px;cursor:pointer}.button-grid .primary,.form-actions .primary{border-color:var(--blue);background:var(--blue);color:#fff}.tree-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.tree-heading h2{margin:0}.tree-heading span{font-size:10px;color:var(--muted)}.tree-row{border:1px solid var(--line);border-radius:7px;background:#fbfcfd;padding:9px;margin-top:7px}.tree-row.active{border-color:#6baebe;background:#eff9fb}.body-main,.region-main span{display:flex;flex-direction:column;gap:2px}.body-main{width:100%;border:0;background:none;text-align:left;padding:0;cursor:pointer}.body-main:hover b{color:var(--blue)}.body-details{margin-top:8px;padding-top:8px;border-top:1px solid #e4e9ed;font-size:9px;gap:4px 8px}.body-details dd{text-transform:capitalize}.tree-row b{font-size:11px}.tree-row small{font-size:9px;color:var(--muted)}.region-main{width:100%;border:0;background:none;padding:0;display:grid;grid-template-columns:12px 1fr;text-align:left;grid-gap:8px;gap:8px;align-items:center;cursor:pointer}.region-main>i{width:10px;height:10px;border-radius:3px}.row-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.row-actions button{padding:4px 6px;font-size:9px}.row-actions .danger-link{color:#a33c34}.region-membership>p{font-size:11px}.disabled-copy{padding:8px;border:1px dashed var(--line);border-radius:5px}.validation,.warning-text{font-size:10px;line-height:1.4;color:#8a5b11;background:#fff7e5;border:1px solid #edd7a4;padding:7px;border-radius:5px}.complete-message{font-size:11px;color:#267149;background:#e8f6ee;border:1px solid #b9dfca;padding:8px;border-radius:5px;margin-bottom:0}.region-form{background:#f6fafb}.region-form form{display:flex;flex-direction:column;gap:7px}.region-form input:not([type=color]),.region-form textarea{width:100%;border:1px solid #bfcbd3;border-radius:5px;background:#fff;padding:8px;font-size:11px}.region-form textarea{min-height:60px;resize:vertical}.region-form input[type=color]{width:46px;height:30px;border:1px solid #bfcbd3;border-radius:5px;background:#fff;padding:2px}.form-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:4px}.coverage dl{grid-template-columns:1fr auto}.exit-isolate{border-color:#d39940!important;color:#875b17;background:#fff8e8!important}.materials-panel>section{padding:16px 18px}.materials-header .row-actions{margin-bottom:10px}.material-body-list{display:flex;flex-direction:column;gap:7px}.material-body-row{border:1px solid var(--line);border-left:3px solid #d59a35;border-radius:7px;background:#fbfcfd;padding:9px}.material-body-row.assigned{border-left-color:#48a06d}.material-body-row.selected{border-color:#4d9caf;background:#edf9fb;box-shadow:0 0 0 1px #8fc5d0}.material-body-row.hidden{opacity:.58}.material-body-title{display:grid;grid-template-columns:18px 1fr auto;align-items:center;grid-gap:7px;gap:7px}.material-body-title>button:first-of-type{display:flex;flex-direction:column;align-items:flex-start;border:0;background:none;padding:0;text-align:left;cursor:pointer}.material-body-title>button:last-child{border:1px solid #c9d3da;background:#fff;border-radius:4px;padding:4px 6px;font-size:9px}.material-body-title b{font-size:11px}.material-body-title small{font-size:9px;color:var(--muted)}.material-body-row p{font-size:9px;margin:7px 0 0}.assigned-copy{color:#28744e}.warning-copy{color:#9a6411}.material-search{width:100%;border:1px solid #bfcbd3;border-radius:5px;padding:8px;font-size:11px;margin:11px 0 8px}.material-library{max-height:245px;overflow:auto;border:1px solid var(--line);border-radius:7px}.material-library>button{width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;grid-gap:9px;gap:9px;border:0;border-bottom:1px solid var(--line);background:#fff;padding:9px;text-align:left;cursor:pointer}.material-library>button:last-child{border-bottom:0}.material-library>button.selected,.material-library>button:hover{background:#eef8fa}.material-library>button.selected{box-shadow:inset 3px 0 var(--blue)}.material-library span{display:flex;flex-direction:column;gap:2px}.material-library b{font-size:10px}.material-library small{font-size:8px;color:var(--muted)}.material-library strong{font-size:9px;color:#31515e;white-space:nowrap}.create-material{width:100%;margin-top:9px}.material-details p{font-size:9px}.material-details .danger-link{color:#a33c34}.assignment-actions{display:flex;flex-direction:column;gap:7px}.assignment-actions h2,.assignment-actions p{margin-bottom:2px}.assignment-actions>button{border:1px solid #c9d3da;background:#fff;border-radius:5px;padding:8px;font-size:10px}.assignment-actions>.primary{border-color:var(--blue);background:var(--blue);color:#fff}.materials-coverage .warning-text{margin-bottom:0}.material-form input{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meshing-panel>section{padding:16px 18px}.mesh-wide{width:100%;margin-top:11px;border:1px solid #bfcbd3;border-radius:6px;padding:9px;background:#fff;cursor:pointer}.mesh-wide.primary{border-color:var(--blue);background:var(--blue);color:#fff}.preset-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:5px;gap:5px;margin:7px 0 12px}.preset-grid button{border:1px solid #c5d0d7;border-radius:5px;background:#fff;padding:7px 3px;font-size:9px;text-transform:capitalize;cursor:pointer}.preset-grid button.selected{border-color:var(--blue);background:#e9f7fa;color:#086c84;font-weight:750}.mesh-summary{padding:9px;border:1px solid var(--line);border-radius:6px;background:#fafcfd}.mesh-control{display:grid;grid-template-columns:16px 1fr auto;align-items:center;grid-gap:7px;gap:7px;border:1px solid var(--line);border-radius:5px;padding:7px;margin-top:6px}.mesh-control span{display:flex;flex-direction:column}.mesh-control b{font-size:10px}.mesh-control small{font-size:8px;color:var(--muted)}.mesh-control button{border:0;background:none;color:#9c413a;cursor:pointer}.control-form{display:grid;grid-template-columns:1fr 1fr;grid-gap:5px;gap:5px;margin-top:9px}.control-form input,.control-form select,.mesh-custom input{min-width:0;border:1px solid #bdcad2;border-radius:5px;background:#fff;padding:7px;font-size:9px}.control-form button{border:1px solid #99bdc6;border-radius:5px;background:#eef8fa;color:#086b82;font-size:9px}.mesh-custom{display:flex;flex-direction:column;gap:6px}.mesh-two{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px}.mesh-two span{display:flex;flex-direction:column;gap:5px}.mesh-check{display:flex;align-items:center;gap:5px;letter-spacing:0!important;font-size:10px!important;margin-top:4px}.mesh-job{border:1px solid #acd1db;background:#edf8fa;border-radius:6px;padding:9px;margin-top:10px}.mesh-job.failed,.mesh-job.timed_out{border-color:#e3ada6;background:#fff3f1}.mesh-job>div{display:flex;justify-content:space-between;text-transform:capitalize;font-size:10px}.mesh-job progress{width:100%;accent-color:var(--blue);height:8px}.mesh-job p,.mesh-job small{font-size:9px;color:var(--muted)}.mesh-outdated{background:#fff0cf!important;color:#8a6112!important}.mesh-region-label{display:block;margin-top:13px}.mesh-region-list{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.mesh-region-list button{display:flex;align-items:center;gap:5px;border:1px solid #c6d1d7;border-radius:999px;background:#fff;padding:4px 7px;font-size:8px;cursor:pointer}.mesh-region-list button.selected{border-color:var(--blue);background:#eaf7fa;color:#076d85}.mesh-region-list i{width:7px;height:7px;border-radius:2px}.mesh-download{display:block;text-align:center;border:1px solid #86b7c2;border-radius:5px;padding:8px;margin-top:11px;color:#086c84;text-decoration:none;font-size:10px}.mesh-history{border:1px solid var(--line);border-radius:6px;padding:8px;margin-top:6px}.mesh-history.active{border-left:3px solid #3c9b67}.mesh-history>span{display:flex;flex-direction:column;gap:2px}.mesh-history b{font-size:9px}.mesh-history small{font-size:8px;color:var(--muted)}.mesh-history>div{display:flex;gap:4px;margin-top:6px}.mesh-history button{border:1px solid #c7d1d7;background:#fff;border-radius:4px;padding:4px 6px;font-size:8px;cursor:pointer}.loads-panel>section{padding:16px 18px}.load-wide{width:100%;margin-top:10px;border:1px solid var(--blue);border-radius:6px;padding:9px;background:var(--blue);color:#fff;cursor:pointer}.condition-row{border:1px solid var(--line);border-radius:7px;padding:8px;margin-top:7px;background:#fbfcfd}.condition-row.selected{border-color:#4d9caf;background:#edf9fb;box-shadow:0 0 0 1px #8fc5d0}.condition-row.disabled{opacity:.62}.condition-main{display:grid;grid-template-columns:11px 1fr;grid-gap:8px;gap:8px;width:100%;border:0;background:none;padding:0;text-align:left;cursor:pointer}.condition-main>i{width:10px;height:10px;border-radius:3px;margin-top:2px}.condition-main span{display:flex;flex-direction:column;gap:2px}.condition-main b{font-size:10px}.condition-main small{font-size:8px;color:var(--muted)}.condition-main em{font-size:8px;color:#28744e;font-style:normal;text-transform:capitalize}.condition-row .row-actions{align-items:center}.condition-row .row-actions label{display:flex;align-items:center;gap:3px;margin-right:auto;font-size:8px!important;letter-spacing:0}.condition-row .derived{display:block;margin-top:7px;padding-top:6px;border-top:1px solid var(--line);font-size:8px;color:#45616b}.condition-editor{display:flex;flex-direction:column;gap:6px;background:#f6fafb}.condition-editor input:not([type=color]),.condition-editor select{width:100%;min-width:0;border:1px solid #bdcad2;border-radius:5px;background:#fff;padding:8px;font-size:10px}.condition-editor input[type=color]{width:46px;height:30px;border:1px solid #bfcbd3;border-radius:5px;background:#fff;padding:2px}.condition-editor>small{font-size:8px;color:var(--muted)}.condition-value{display:grid;grid-template-columns:1fr 70px;grid-gap:5px;gap:5px}.condition-preview{display:flex;flex-direction:column;gap:3px;border:1px solid #b8dcca;background:#eff9f3;color:#286b48;padding:8px;border-radius:5px}.condition-preview.invalid{border-color:#e4b0aa;background:#fff2f0;color:#91423a}.condition-preview b{font-size:9px}.condition-preview small{font-size:8px}.loads-coverage dl{grid-template-columns:1fr auto}.solve-panel>section{padding:16px 18px}.solve-checks{display:flex;flex-direction:column;gap:5px;margin:9px 0}.solve-checks>div{display:grid;grid-template-columns:18px 1fr auto;align-items:center;grid-gap:7px;gap:7px;border:1px solid var(--line);border-radius:5px;padding:7px;background:#fbfcfd}.solve-checks>div.ready i{background:#3d9b68}.solve-checks>div.blocked i{background:#c98924}.solve-checks i{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;color:#fff;font-size:9px;font-style:normal}.solve-checks span{display:flex;flex-direction:column}.solve-checks b{font-size:9px}.solve-checks small{font-size:8px;color:var(--muted)}.solve-checks strong{font-size:8px;color:#44616c}.continue-results,.solve-run{width:100%;border:1px solid var(--blue);border-radius:6px;padding:9px;background:var(--blue);color:#fff;font-size:10px;font-weight:700;cursor:pointer}.solve-run:disabled{opacity:.45;cursor:not-allowed}.solve-job{border:1px solid #a8cfd9;background:#edf8fa;border-radius:6px;padding:9px}.solve-job.failed,.solve-job.timed_out{border-color:#e2aaa4;background:#fff1ef}.solve-job>div{display:flex;justify-content:space-between;gap:8px;font-size:9px}.solve-job progress{width:100%;height:8px;accent-color:var(--blue)}.solve-job>small{display:block;color:var(--muted);font-size:8px}.solve-job>button{width:100%;margin-top:8px;border:1px solid #c57a72;border-radius:5px;background:#fff;color:#973d35;padding:6px;font-size:9px}.solution-summary{border:1px solid #b8dcca;background:#f1faf5;border-radius:7px;padding:10px}.solution-summary h3{margin:0 0 8px;font-size:11px;color:#286b48}.solution-summary dl{grid-template-columns:1fr auto}.solution-summary dd small{color:var(--muted)}.solution-summary>small{display:block;margin-top:8px;overflow-wrap:anywhere;color:var(--muted);font-size:7px}.timing-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px;margin-top:9px}.timing-grid span{display:flex;justify-content:space-between;border:1px solid #d6e6dd;border-radius:4px;padding:5px;font-size:8px}.continue-results{margin-top:8px}.solve-visibility{display:flex;flex-direction:column;gap:4px;margin:6px 0 12px}.solve-visibility button{border:1px solid #c6d1d7;border-radius:5px;background:#fff;padding:6px;text-align:left;font-size:8px}.solve-visibility button.hidden{opacity:.55;background:#f0f2f3}.solve-history{border:1px solid var(--line);border-radius:6px;padding:8px;margin-top:6px}.solve-history.active{border-left:3px solid #3c9b67}.solve-history>span{display:flex;flex-direction:column;gap:2px}.solve-history b{font-size:9px}.solve-history small{font-size:8px;color:var(--muted)}.solve-history em{font-size:8px;color:#7a5b18;font-style:normal}.solve-history>div{display:flex;gap:4px;margin-top:6px}.solve-history button{border:1px solid #c7d1d7;background:#fff;border-radius:4px;padding:4px 6px;font-size:8px;cursor:pointer}.results-panel input[type=number],.results-panel select{width:100%}.result-tabs{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:4px;gap:4px;padding:8px;border-bottom:1px solid var(--line)}.result-summary-card.selected,.result-tabs button.selected{border-color:#1686a0;background:#eefbfe}.result-legend{height:16px;border-radius:3px;margin:8px 0}.result-legend.sequential{background:linear-gradient(90deg,#313695,#2c7bb6,#00a6ca,#ffffbf,#fdae61,#d7191c)}.result-legend.diverging{background:linear-gradient(90deg,#2166ac,#f7f7f2,#b2182b)}.result-range{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.results-panel .check{display:flex;align-items:center;gap:7px;margin:8px 0;font-size:12px}.results-panel .check input{width:auto}.result-summary-card{border:1px solid var(--line);border-radius:5px;padding:9px;margin-top:8px;cursor:pointer}.result-summary-card>div:first-child{display:flex;flex-direction:column}.result-summary-card small{color:var(--muted)}.result-summary-card dl{margin-top:8px}.body-actions{display:flex;gap:5px;margin-top:6px}.body-actions button{flex:1 1}.positive{color:#087f5b}.negative{color:#b42318}.export-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.export-grid a{border:1px solid var(--line);border-radius:4px;padding:7px;text-align:center;font-size:11px;text-decoration:none;color:var(--ink)}.optimization-panel input[type=number],.optimization-panel select{width:100%}.phase-notice{font-size:10px;line-height:1.5;background:#fff7e5;border:1px solid #edd7a4;border-radius:5px;padding:8px}.optimization-bodies{display:flex;flex-direction:column;gap:6px}.optimization-bodies label{display:flex;gap:7px;align-items:center;border:1px solid var(--line);border-radius:5px;padding:7px}.optimization-bodies span{display:flex;flex-direction:column;font-size:10px}.input-summary,.optimization-bodies small{font-size:8px;color:var(--muted)}.input-summary{display:block;margin-top:5px}.temperature-input{display:grid;grid-template-columns:1fr 70px;grid-gap:5px;gap:5px}.temperature-input span{display:flex;flex-direction:column}.advanced-toggle{width:100%;border:0;background:none;color:var(--blue);font-size:10px}.advanced-settings{display:grid;grid-gap:6px;gap:6px;margin:9px 0}.advanced-settings label{display:grid;grid-gap:3px;gap:3px}.cancel-optimization{width:100%;margin-top:7px;border:1px solid #c57a72;border-radius:5px;background:#fff;color:#973d35;padding:7px}.iteration-chart{height:110px;display:flex;align-items:flex-end;gap:2px;position:relative;border-left:1px solid #aebcc5;border-bottom:1px solid #aebcc5;margin-top:10px}.iteration-chart i{flex:1 1;min-width:2px;max-width:12px;background:#1686a0}.iteration-chart span{position:absolute;left:0;right:0;border-top:1px dashed #c2410c;font-size:7px;color:#9a3412}.iteration-latest{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px;font-size:9px}.reference-table{width:100%;border-collapse:collapse;font-size:8px}.reference-table td,.reference-table th{padding:5px;border-bottom:1px solid var(--line);text-align:right}.reference-table td:first-child,.reference-table th:first-child{text-align:left}.optimization-history{width:100%;display:flex;flex-direction:column;text-align:left;border:1px solid var(--line);background:#fff;border-radius:5px;padding:7px;margin-top:5px}.optimization-history.active{border-left:3px solid #3c9b67}.optimization-history small{font-size:8px;color:var(--muted)}.manufacturing-direction-legend{margin:10px;padding:10px;border:1px solid #c4b5fd;border-radius:7px;background:#f5f3ff;color:#3b2766}.manufacturing-direction-legend p{margin:5px 0 9px;line-height:1.35}.manufacturing-direction-legend b span{margin-right:5px}.compactness-presets,.run-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px;gap:6px;margin:8px 0}.compactness-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.compactness-presets button[aria-pressed=true],.run-mode button[aria-pressed=true]{border-color:#1686a0;background:#e8f7fb;color:#07566b}.lambda-value{display:block;margin:10px 0;color:#07566b}.family-lambdas{display:grid;grid-gap:4px;gap:4px;padding:10px;border:1px solid #d7e2e8;border-radius:6px;background:#f8fbfc}.family-lambdas span{font-size:12px}.family-table-wrap{overflow:auto;margin:8px 0}.family-table{min-width:780px}.family-table tbody tr{cursor:pointer}.family-table tbody tr.selected,.family-table tbody tr:hover{background:#e8f7fb}.family-table tbody tr.dominated{opacity:.58}.comparison-statement,.interface-probe{padding:9px;border-radius:5px;background:#f1f5f9}.interface-probe{margin-top:8px}.optimization-rebase{margin:8px 0;padding:9px;border:1px solid #d89a37;border-radius:6px;background:#fff7e6}.optimization-rebase p{font-size:10px}.optimization-rebase dl{margin:7px 0}.optimization-rebase .solve-run{margin-top:6px}@keyframes loading{0%{transform:translateX(-100%)}to{transform:translateX(370%)}}@keyframes pulse{50%{opacity:.3}}@media(max-width:1250px){.workspace{grid-template-columns:245px minmax(400px,1fr) 340px}header{grid-template-columns:245px 1fr auto auto}.left-panel section,.organization-panel>section,.right-panel section{padding:14px}.button-grid{grid-template-columns:1fr}}.voxel-stage{display:contents}.stage-list{padding-left:1.25rem}.stage-list li{margin:.4rem 0;color:var(--muted,#64748b)}.stage-list li.current{color:inherit}.stage-list li b{float:right;font-size:.75rem}.layer-controls,.voxel-presets{display:flex;gap:.45rem;flex-wrap:wrap;margin:.5rem 0}.voxel-layer-grid{display:grid;grid-gap:1px;gap:1px;background:#1e293b;padding:6px;max-height:420px;aspect-ratio:1;overflow:auto}.voxel-layer-grid i{display:block;background:#0f172a;min-width:2px;min-height:2px}.voxel-layer-grid i.inside{background:#64748b}.voxel-layer-grid i.copper{background:#e87922}.validation-requirements details label,.validation-requirements>label{display:grid;grid-gap:5px;gap:5px;margin:0 0 13px;letter-spacing:0}.validation-requirements label>span{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#50616d}.validation-requirements label>span b{font-size:8px;color:#7b8992}.validation-requirements input{display:block;width:100%;min-width:0;border:1px solid #b9c7cf;border-radius:5px;padding:8px;background:#fff;color:var(--ink);font-size:11px}.validation-requirements details>p,.validation-requirements label>small,.validation-requirements>small{display:block;font-size:9px;line-height:1.4;color:var(--muted);font-weight:400;letter-spacing:0}.validation-requirements details{margin:8px 0 13px;padding:9px;border:1px solid var(--line);border-radius:6px;background:#fafcfd}.validation-requirements details summary{cursor:pointer;font-size:10px;font-weight:750;color:var(--blue)}.validation-requirements details>p{margin:7px 0 10px}.validation-formula{display:grid;grid-gap:4px;gap:4px;margin:8px 0 12px;padding:9px;border:1px solid #b9d5dc;border-radius:6px;background:#eef8fa}.validation-formula b{font-size:10px}.validation-formula code{font-size:11px;color:#075f75}.validation-formula small{font-size:8px;color:var(--muted)}.custom-direction{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.5rem;gap:.5rem}.custom-direction label{margin:0}.dependency-banner{display:flex;gap:10px;align-items:center;padding:9px 16px;background:#fff7e5;border-bottom:1px solid #e4c77d;color:#714d0e;font-size:11px}.dependency-banner span{color:#7b5c24}.forge-app,.forge-context-state{--ink:#efeeec;--muted:#a3a19f;--line:#302a25;--panel:#0b0a09;--bg:#030303;--blue:#c58b69;--blue2:#dbab8d;--forge-raised:#15120f;--forge-hover:#211b16;--forge-selected:#2c2018;--forge-success:#8fc9a2;--forge-warning:#dfba7a;--forge-error:#eda49a;color-scheme:dark;color:var(--ink);background:var(--bg);font-family:Helvetica Neue,Segoe UI,Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}.forge-app{min-width:0;height:100dvh}.forge-app a,.forge-context-state a{color:var(--blue2)}.forge-app ::selection{background:#785037;color:#fff}.forge-app :is(button,a,input,select,textarea,summary):focus-visible,.forge-context-state a:focus-visible{outline:2px solid var(--blue2);outline-offset:3px}.forge-app .material-body-title>button:last-child,.forge-app :is(.mesh-download,.export-grid a),.forge-app button{border:1px solid #4a3c31;border-radius:4px;background:var(--forge-raised);color:var(--ink);padding:8px 10px;min-height:34px;font:inherit;font-size:11px;font-weight:600;line-height:1.4;text-decoration:none;cursor:pointer;box-shadow:none;transition:background-color .15s,border-color .15s,color .15s}.forge-app :is(.mesh-download,.export-grid a):hover,.forge-app button:not(:disabled):hover{background:var(--forge-hover);border-color:var(--blue);color:var(--blue2)}.forge-app button:disabled{opacity:.45;cursor:not-allowed}.forge-app .dropzone button,.forge-app button:is(.primary,.load-wide,.solve-run,.continue-results){background:var(--blue);border-color:var(--blue);color:#100b08;font-weight:700}.forge-app .dropzone button:hover:not(:disabled),.forge-app button:is(.primary,.load-wide,.solve-run,.continue-results):hover:not(:disabled){background:var(--blue2);border-color:var(--blue2);color:#100b08}.forge-app .material-library>button.selected,.forge-app .result-tabs button.selected,.forge-app button:is(.selected,.active,[aria-pressed=true]){border-color:var(--blue);background:var(--forge-selected);color:var(--blue2);box-shadow:inset 0 -2px var(--blue)}.forge-app :is(.danger-link,.cancel-optimization,.solve-job>button,.mesh-control button){color:var(--forge-error);border-color:#75443d;background:#231412}.forge-app :is(.danger-link,.cancel-optimization,.solve-job>button,.mesh-control button):hover:not(:disabled){color:#ffd0c8;background:#3a201c;border-color:var(--forge-error)}.forge-app :is(.advanced-toggle,.link){color:var(--blue2)}.forge-app :is(.region-main,.condition-main,.material-body-title>button:first-of-type){border:0;background:transparent;padding:2px;text-align:left;box-shadow:none}.forge-app :is(.row-actions,.form-actions,.body-actions){gap:6px;flex-wrap:wrap}.forge-app .body-actions button{min-width:65px}.forge-app :is(.voxel-presets,.layer-controls){gap:6px}.forge-app :is(.voxel-presets,.layer-controls) button{flex:1 0 auto}.forge-app :is(input,select,textarea){min-width:0;max-width:100%;font:inherit;font-size:12px;accent-color:var(--blue)}.forge-app input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),.forge-app select,.forge-app textarea{width:100%;min-height:36px;padding:8px 9px;border:1px solid #4a3c31;border-radius:4px;color:var(--ink);background:var(--forge-raised);box-shadow:none;font-size:12px}.forge-app :is(input,textarea)::placeholder{color:#89827c}.forge-app :is(input,select,textarea):disabled{opacity:.5;cursor:not-allowed}.forge-app input:is([type=checkbox],[type=radio]){width:15px;height:15px;flex-shrink:0}.forge-app input[type=range]{width:100%;padding:0;background:transparent}.forge-app input[type=color]{border:1px solid #4a3c31;background:var(--forge-raised)}.forge-app fieldset{min-width:0;border:1px solid var(--line);border-radius:4px}.forge-app legend{color:var(--muted);font-size:11px}.forge-app .right-panel label{font-size:10px;letter-spacing:.06em;font-weight:600}.forge-app .right-panel .check{letter-spacing:0}.forge-app .right-panel{font-size:12px}.forge-app .panel-scroll details>label,.forge-app .right-panel section>label:not(.mesh-check):not(.check){display:block;margin:12px 0}.forge-app .panel-scroll details>label input,.forge-app .right-panel section>label :is(input,select){margin-top:5px}.forge-app .right-panel section>label input[type=checkbox]{margin-top:0;vertical-align:middle}.forge-app .right-panel .wide{width:100%;margin-top:10px}.forge-app .panel-scroll section>a{display:inline-block;margin:12px 0;font-size:12px}.forge-app .panel-scroll details{padding:8px 10px;border:1px solid var(--line);border-radius:4px;background:var(--forge-raised)}.forge-app :is(.success,.warning,.error-text){margin:12px 0;padding:10px;border:1px solid;border-radius:4px;font-size:12px}.forge-app :is(.success,.warning) p:last-child{margin-bottom:0}.forge-app .success{background:#101c14;border-color:#344e3c;color:var(--forge-success)}.forge-app .warning{background:#231c12;border-color:#635033;color:var(--forge-warning)}.forge-app .error-text{background:#291714;border-color:#75443d;color:var(--forge-error)}.forge-app .right-panel :is(h2,h3){color:var(--ink);font-weight:600}.forge-app h2{font-size:14px;letter-spacing:.01em}.forge-app h3{font-size:12px}.forge-app .muted{color:var(--muted)}.forge-app dl{font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;gap:8px 10px}.forge-app dt{color:var(--muted);min-width:0}.forge-app dd{color:var(--ink)}.forge-app .forge-header{flex-shrink:0;min-height:64px;height:auto;grid-template-columns:230px minmax(150px,1fr) auto auto auto;gap:16px;padding:10px 18px;background:#080808;border-color:var(--line)}.forge-app .brand{gap:10px}.forge-app .mark,.forge-context-state .mark{width:30px;height:30px;border:1px solid var(--blue);border-radius:3px;background:transparent;color:var(--blue2);font-size:10px}.forge-app .brand b{font-size:14px;font-weight:500}.forge-app :is(.brand small,.project-title span,.forge-project-identity small){font-size:9px;color:var(--muted)}.forge-app :is(.project-title strong,.forge-project-identity strong){font-size:12px;font-weight:500}.forge-app .forge-command-bar{display:flex;align-items:center;border:1px solid var(--line);border-radius:4px}.forge-app .forge-command-bar span{width:30px;text-align:center;color:var(--muted);border-right:1px solid var(--line);cursor:default}.forge-app .forge-command-bar span:last-child{border-right:0}.forge-app .save-state,.forge-app .start-over{font-size:10px}.forge-app .workspace{grid-template-columns:240px minmax(300px,1fr) 390px;background:var(--bg)}.forge-app :is(.left-panel,.right-panel){background:var(--panel);color:var(--ink);border-color:var(--line);scrollbar-color:#594b40 var(--panel)}.forge-app aside section{padding:18px;border-color:var(--line)}.forge-app .workflow-nav{padding:14px 10px}.forge-app .workflow-heading{border-bottom:1px solid var(--line);margin-bottom:8px}.forge-app :is(.workflow-heading span,.current-step-card label){color:var(--blue)}.forge-app .workflow-heading strong{font-size:12px;font-weight:500}.forge-app .workflow-nav button{border:1px solid transparent;background:transparent;padding:9px 8px;box-shadow:none}.forge-app .workflow-nav button:hover:not(:disabled){background:var(--forge-hover)}.forge-app .workflow-nav button.active{background:var(--forge-selected);border-color:transparent;color:var(--ink);box-shadow:inset 2px 0 var(--blue)}.forge-app .step-number{background:var(--panel);border-color:#625144;color:var(--muted)}.forge-app .workflow-nav button.active .step-number{background:var(--blue);border-color:var(--blue);color:#100b08}.forge-app .step-label b{font-size:11px;font-weight:500}.forge-app .step-label small{color:var(--muted);font-size:9px}.forge-app .status-dot{background:#5c534b}.forge-app .status-dot.complete{background:var(--forge-success)}.forge-app .status-dot.current{background:var(--blue);box-shadow:0 0 0 3px #4d3423}.forge-app :is(.status-dot.needs_attention,.status-dot.outdated){background:var(--forge-warning)}.forge-app .workflow-nav .optimization-submenu{border-color:#564131}.forge-app .workflow-nav .optimization-submenu button>span:first-child{color:var(--blue2)}.forge-app .current-step-card{background:#080808}.forge-app .viewport{background:radial-gradient(ellipse at 50% 45%,#252422,#121211 65%,#080808)}.forge-app .viewer{background:transparent}.forge-app .empty-view h1{color:var(--ink);font-weight:400}.forge-app .empty-view p{color:var(--muted)}.forge-app .axis-cube{background:#171412;border-color:#625144;color:var(--blue);box-shadow:12px 12px 30px #0005}.forge-app .viewer-tools{flex-wrap:wrap;max-width:calc(100% - 28px)}.forge-app .viewer-tools button{background:#14120fed;font-size:11px}.forge-app .viewer-tools button[aria-pressed=true]{background:var(--forge-selected);border-color:var(--blue);color:var(--blue2)}.forge-app .selection-mode{background:#14120fed;border-color:#625144;color:var(--blue2)}.forge-app :is(.face-card,.tree-row,.material-body-row,.material-library,.mesh-summary,.mesh-control,.mesh-history,.condition-row,.solve-checks>div,.solve-history,.result-summary-card,.optimization-history,.family-lambdas,.manufacturing-stages,.validation-requirements details,.validation-formula,.comparison-statement,.interface-probe,.optimization-bodies label){border-color:var(--line);background:var(--forge-raised);color:var(--ink);border-radius:4px}.forge-app :is(.region-form,.condition-editor,.material-form){background:#100d0b}.forge-app .dropzone{border-color:#625144;background:var(--forge-raised);border-radius:4px}.forge-app .dropzone.dragging{border-color:var(--blue);background:var(--forge-selected)}.forge-app .upload-icon{border-color:#625144;color:var(--blue2)}.forge-app :is(.section-heading>span,.face-card span){background:var(--forge-selected);color:var(--blue2)}.forge-app :is(.tree-row.active,.condition-row.selected,.material-body-row.selected,.result-summary-card.selected,.family-table tbody tr.selected){border-color:var(--blue);background:var(--forge-selected);box-shadow:inset 2px 0 var(--blue)}.forge-app .material-body-row{border-left-color:var(--forge-warning)}.forge-app .material-body-row.assigned{border-left-color:var(--forge-success)}.forge-app .material-library>button{border:0;border-bottom:1px solid var(--line);background:var(--forge-raised);border-radius:0}.forge-app .material-library>button:last-child{border-bottom:0}.forge-app :is(.material-library strong,.condition-row .derived,.solve-checks strong,.validation-requirements label>span,.validation-requirements label>span b){color:var(--muted)}.forge-app :is(.assigned-copy,.condition-main em,.positive){color:var(--forge-success)}.forge-app :is(.warning-copy,.solve-history em){color:var(--forge-warning)}.forge-app .negative{color:var(--forge-error)}.forge-app .timing-grid span{border-color:#344739;background:#111a14;font-size:9px;gap:5px;flex-wrap:wrap}.forge-app .result-tabs{border-color:var(--line)}.forge-app .solve-visibility button.hidden{background:var(--panel)}.forge-app .lambda-value{color:var(--blue2)}.forge-app :is(.reference-table th,.reference-table td){border-color:var(--line);padding:7px 5px}.forge-app .reference-table{font-size:10px}.forge-app .reference-table th{color:var(--muted);font-weight:500}.forge-app .family-table tbody tr:hover{background:var(--forge-hover)}.forge-app .iteration-chart{border-color:#625144}.forge-app .iteration-chart i{background:var(--blue)}.forge-app .iteration-chart span{color:var(--forge-error);border-color:var(--forge-error)}.forge-app :is(.manufacturing-stages summary,.validation-requirements details summary,.validation-formula code){color:var(--blue2)}.forge-app summary{padding:5px 0;cursor:pointer}.forge-app .manufacturing-stages{padding:8px 10px;border:1px solid var(--line);margin-top:12px}.forge-app .manufacturing-stages ol{padding-left:18px;margin-bottom:4px}.forge-app .manufacturing-stages li{padding:4px 0;color:var(--muted);font-size:10px}.forge-app .manufacturing-stages li b{display:block;font-size:9px;font-weight:500}.forge-app .manufacturing-stages li.current{color:var(--blue2)}.forge-app .manufacturing-direction-legend{border-color:#50425c;background:#1b1521;color:#d2bde8;border-radius:4px}.forge-app .validation-formula{border-color:#625144}.forge-app .export-grid{gap:8px}.forge-app .export-grid a{display:flex;align-items:center;justify-content:center;overflow-wrap:anywhere}.forge-app .badge{background:#27221e;color:#d1c6bd;font-size:10px}.forge-app :is(.badge.ready,.badge.valid,.badge.workflow-complete){background:#1b3022;color:var(--forge-success)}.forge-app :is(.badge.failed,.badge.invalid){background:#3a201c;color:var(--forge-error)}.forge-app :is(.badge.processing,.badge.queued,.badge.workflow-current){background:var(--forge-selected);color:var(--blue2)}.forge-app :is(.badge.workflow-needs_attention,.badge.workflow-outdated){background:#302515;color:var(--forge-warning)}.forge-app :is(.mesh-job,.solve-job){border-color:#625144;background:#1b1611;border-radius:4px}.forge-app :is(.solution-summary,.complete-message,.condition-preview){border-color:#344e3c;background:#101c14;color:var(--forge-success);border-radius:4px}.forge-app .solution-summary h3{color:var(--forge-success)}.forge-app :is(.warning-text,.validation,.phase-notice,.optimization-rebase,.dependency-banner){border-color:#635033;background:#231c12;color:var(--forge-warning);border-radius:4px}.forge-app .dependency-banner{border-radius:0;flex-shrink:0;flex-wrap:wrap}.forge-app .dependency-banner span{color:#c6af8b}.forge-app :is(.error,.condition-preview.invalid,.mesh-job.failed,.mesh-job.timed_out,.solve-job.failed,.solve-job.timed_out){border-color:#75443d;background:#291714;color:var(--forge-error);border-radius:4px}.forge-app :is(.mesh-history.active,.solve-history.active,.optimization-history.active){border-left-color:var(--forge-success)}.forge-app .mesh-outdated{background:#302515!important;color:var(--forge-warning)!important}.forge-app .exit-isolate{border-color:#635033!important;background:#231c12!important;color:var(--forge-warning)}.forge-app .progress{background:#302820}.forge-app .progress span{background:var(--blue)}.forge-app .panel-scroll .progress{width:100%;margin:12px 0}.forge-app .panel-scroll .progress span{animation:none}.forge-app progress{accent-color:var(--blue)}.forge-app progress::-webkit-progress-bar{background:#302820;border-radius:4px}.forge-app progress::-webkit-progress-value{background:var(--blue);border-radius:4px}.forge-app progress::-moz-progress-bar{background:var(--blue);border-radius:4px}.forge-context-state section{background:var(--panel);border-color:var(--line);border-radius:4px}.forge-context-state h1{font-weight:400}.forge-context-state p{color:var(--muted)}@media (max-width:1250px){.forge-app .workspace{grid-template-columns:200px minmax(280px,1fr) 350px}.forge-app .forge-header{grid-template-columns:190px minmax(140px,1fr) auto auto;gap:12px}.forge-app .forge-command-bar{display:none}.forge-app aside section{padding:15px}}@media (max-width:900px){.forge-app{height:auto;min-height:100dvh}.forge-app .forge-header{display:flex;flex-wrap:wrap}.forge-app .forge-project-identity{flex:1 1}.forge-app .workspace{flex:auto;grid-template-columns:190px minmax(0,1fr)}.forge-app .left-panel{grid-row:1/3}.forge-app .viewport{height:420px}.forge-app .right-panel{grid-column:2;overflow:visible}}@media (max-width:600px){.forge-app .forge-header{padding:12px;gap:12px}.forge-app .forge-project-identity{flex-basis:45%}.forge-app .workspace{display:flex;flex-direction:column}.forge-app .left-panel{border-right:0;overflow:visible}.forge-app .workflow-nav>ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:4px;gap:4px}.forge-app .workflow-nav>ol>li:has(.optimization-submenu){grid-column:1/-1}.forge-app .workflow-nav .optimization-submenu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-left:0;padding-left:0;border-left:0;grid-gap:4px;gap:4px}.forge-app .workflow-nav button{gap:6px;padding:8px 5px}.forge-app .right-panel{border-left:0;border-top:1px solid var(--line)}.forge-app .viewport{flex:0 0 360px}.forge-app .viewer-tools{position:relative;top:10px;left:10px;gap:4px}.forge-app .viewer-tools button{font-size:10px}.forge-app .selection-mode{top:auto;bottom:10px;right:10px}.forge-app .error{font-size:11px;gap:8px}}@media (prefers-reduced-motion:reduce){.forge-app a,.forge-app button{transition:none}.forge-app .progress span,.forge-app .save-state i.saving{animation:none}}.public-eyebrow{display:block;color:var(--disc-blue);font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.public-logo{display:flex;align-items:center;gap:11px;font-size:15px;font-weight:850;letter-spacing:.04em;white-space:nowrap}.public-logo b{font-weight:450;color:#5e6978}.public-logo-mark{display:grid;grid-template-columns:repeat(3,5px);grid-gap:3px;gap:3px;width:23px;height:25px;align-items:end;transform:skewY(-24deg)}.public-logo-mark i{display:block;background:var(--disc-blue)}.public-logo-mark i:first-child{height:13px}.public-logo-mark i:nth-child(2){height:22px;background:var(--disc-cyan)}.public-logo-mark i:nth-child(3){height:17px}.public-button span{transition:transform .2s}.public-button:hover span{transform:translateX(3px)}.public-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-width:178px;padding:14px 17px;background:var(--disc-blue);border:1px solid var(--disc-blue);color:#fff!important;text-decoration:none;font-size:12px;font-weight:800;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.public-button:hover{background:var(--disc-blue-dark);border-color:var(--disc-blue-dark)}.auth-page{--auth-paper:#f5f8fc;--auth-ink:#0a1320;--auth-muted:#657184;--auth-line:#dce4ee;--auth-copper:#1557ff;display:grid;grid-template-columns:minmax(240px,.62fr) minmax(520px,1.38fr);grid-template-rows:1fr auto;min-width:0;min-height:100vh;background:var(--auth-paper);color:var(--auth-ink);font-family:Arial,Helvetica Neue,sans-serif}.auth-brand{padding:52px clamp(28px,5vw,76px);display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--auth-line)}.auth-brand>a{text-decoration:none}.auth-brand>span{color:var(--auth-muted);font-size:10px;text-transform:uppercase;letter-spacing:.15em}.auth-panel{width:min(680px,100%);align-self:center;padding:100px clamp(28px,8vw,130px)}.auth-heading h1{margin:22px 0 20px;font-size:clamp(52px,6vw,82px);line-height:.95;letter-spacing:-.055em}.auth-heading>p{max-width:530px;margin:0;color:var(--auth-muted);font-size:15px;line-height:1.7}.auth-form{align-items:stretch;gap:22px;margin-top:48px}.auth-form,.auth-form label{display:flex;flex-direction:column}.auth-form label{gap:9px;color:var(--auth-muted);font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.auth-form input{width:100%;padding:13px 1px;border:0;border-bottom:1px solid #9cabbc;border-radius:0;background:transparent;color:var(--auth-ink);font-size:16px;letter-spacing:normal;text-transform:none}.auth-form input:focus{outline:0;border-color:var(--auth-copper)}.auth-form label small{font-size:10px;font-weight:400;line-height:1.5;letter-spacing:normal;text-transform:none}.auth-form>.public-button{width:100%;margin-top:8px}.auth-form>a:not(.public-button){align-self:flex-start;color:var(--auth-ink);font-size:12px;text-underline-offset:4px}.auth-message,.auth-message.error{position:static;display:block;margin:0;padding:14px;border:1px solid #afbed0;background:#eaf1fb;color:#46566a;font-size:12px;line-height:1.6}.auth-message.error{border-color:#e8987c;background:#fff0ea;color:#713819}.auth-footer{grid-column:2;margin:0;padding:0 clamp(28px,8vw,130px) 34px;color:#7d8a9a;font-size:9px;text-transform:uppercase;letter-spacing:.13em}@media(max-width:760px){.public-logo{font-size:13px}.public-button{width:100%}.auth-page{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.auth-brand{min-height:110px;padding:28px 20px;gap:30px;border-right:0;border-bottom:1px solid var(--auth-line)}.auth-panel{padding:75px 20px}.auth-heading h1{font-size:54px}.auth-footer{grid-column:1;padding:0 20px 25px}}.customer-app{--c-ink:#17201c;--c-muted:#657069;--c-line:#d9ddd7;--c-paper:#f3f5f1;--c-card:#fff;--c-green:#1e5c45;--c-copper:#a94f24;display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100vh;background:var(--c-paper);color:var(--c-ink);font-family:Arial,Helvetica Neue,sans-serif}.customer-app *{box-sizing:border-box}.customer-sidebar{position:-webkit-sticky;position:sticky;top:0;display:flex;flex-direction:column;height:100vh;padding:29px 22px;background:#17201c;color:#f8f7f2}.customer-wordmark{display:flex;gap:6px;align-items:center;color:inherit;text-decoration:none;font-size:13px;letter-spacing:.06em}.customer-wordmark span{margin-right:5px;color:var(--c-copper);font-size:11px}.customer-sidebar nav{display:flex;flex-direction:column;gap:4px;margin-top:70px}.customer-sidebar nav a{padding:12px;border-left:2px solid transparent;color:#b7c0ba;text-decoration:none;font-size:13px}.customer-sidebar nav a:hover,.customer-sidebar nav a[aria-current=page]{border-left-color:#ca6b3d;background:#ffffff0a;color:#fff}.customer-identity{margin-top:auto;padding-top:20px;border-top:1px solid #354039}.customer-identity>span,.customer-identity>strong{display:block;font-size:11px}.customer-identity>span{margin-top:5px;color:#98a49c}.customer-identity .public-button{width:100%;min-width:0;margin-top:16px;padding:9px;background:transparent;border-color:#59635d;font-size:10px}.customer-main{min-width:0;padding:48px clamp(25px,5vw,72px) 80px}.customer-header{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:34px}.customer-header h1{margin:7px 0 0;font-size:clamp(34px,4vw,56px);line-height:1;letter-spacing:-.045em}.customer-copy,.customer-header p{max-width:640px;margin:11px 0 0;color:var(--c-muted);font-size:13px;line-height:1.6}.customer-kicker{color:var(--c-copper);font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.customer-link-button,.customer-primary,.customer-secondary{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border:1px solid var(--c-ink);background:var(--c-ink);color:#fff;text-decoration:none;font:700 11px Arial;cursor:pointer}.customer-primary:hover{background:var(--c-green);border-color:var(--c-green)}.customer-secondary{background:transparent;color:var(--c-ink)}.customer-secondary:hover{border-color:var(--c-copper);color:var(--c-copper)}.customer-primary:disabled,.customer-secondary:disabled{cursor:not-allowed;opacity:.45}.customer-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--c-line);background:var(--c-card)}.customer-stat{padding:20px;border-right:1px solid var(--c-line)}.customer-stat:last-child{border:0}.customer-stat span{color:var(--c-muted);font-size:9px;text-transform:uppercase;letter-spacing:.09em}.customer-stat strong{display:block;font-size:32px;font-weight:500}.customer-section{margin-top:45px}.customer-section h2{font-size:19px}.customer-table-wrap{overflow:auto;border:1px solid var(--c-line);background:var(--c-card)}.customer-table{width:100%;min-width:680px;border-collapse:collapse}.customer-table th{padding:11px 15px;border-bottom:1px solid var(--c-line);color:var(--c-muted);font-size:8px;text-align:left;letter-spacing:.12em;text-transform:uppercase}.customer-table td{padding:17px 15px;border-bottom:1px solid #e7e9e5;font-size:12px}.customer-table tr:last-child td{border:0}.customer-table a{color:var(--c-ink);font-weight:700;text-decoration:none}.customer-status{display:inline-block;padding:6px 8px;background:#e6ebe7;color:#345245;font-size:8px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.customer-status.information-required{background:#f5ded3;color:#823917}.customer-status.draft{background:#eceae4;color:#626158}.customer-status.complete,.customer-status.results-ready{background:#dceadb;color:#315d35}.customer-empty,.customer-error,.customer-loading{padding:35px;border:1px solid var(--c-line);background:var(--c-card);color:var(--c-muted);font-size:13px;line-height:1.6}.customer-error{border-color:#d9a08a;color:#823917}.customer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:20px;gap:20px}.customer-card{padding:24px;border:1px solid var(--c-line);background:var(--c-card)}.customer-card h2,.customer-card h3{margin:0 0 15px;font-size:18px}.customer-card h3{font-size:14px}.customer-card .customer-primary,.customer-card .customer-secondary{margin-top:18px}.customer-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.customer-field{display:flex;flex-direction:column;gap:7px;color:var(--c-muted);font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.customer-field.full{grid-column:1/-1}.customer-field input,.customer-field select,.customer-field textarea{width:100%;padding:11px;border:1px solid #bec6bf;background:#fff;color:var(--c-ink);font:13px Arial;letter-spacing:normal;text-transform:none}.customer-field textarea{min-height:95px;resize:vertical}.customer-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.customer-message{margin:15px 0;padding:12px;border-left:3px solid var(--c-green);background:#e8f0ea;color:#355345;font-size:12px}.customer-message.error{border-color:var(--c-copper);background:#f8e8df;color:#7d3a1d}.customer-files{list-style:none;margin:15px 0 0;padding:0}.customer-files li{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--c-line);font-size:12px}.customer-file-upload{display:flex;gap:10px;align-items:center;margin-top:20px}.customer-file-upload input{font-size:11px}.customer-info-request{margin-top:15px;padding:17px;border-left:3px solid var(--c-copper);background:#fff7f1}.customer-info-request ul{font-size:12px}.customer-back{color:var(--c-muted);font-size:11px;text-decoration:none}.customer-commercial-value{font-size:20px}.customer-note{color:var(--c-muted);font-size:11px;line-height:1.5}.customer-badge{display:inline-block;padding:5px 7px;background:#e3ece6;color:var(--c-green);font-size:8px;font-weight:800;text-transform:uppercase}.customer-disabled-reason{margin-top:12px;color:var(--c-muted);font-size:11px}.customer-account .auth-shell{min-height:auto}.customer-account .auth-card{max-width:none}.customer-account .auth-split{display:block}.customer-account .auth-brand-panel{display:none}@media(max-width:900px){.customer-stats{grid-template-columns:1fr 1fr}.customer-stat:nth-child(2){border-right:0}.customer-stat:nth-child(n+3){border-top:1px solid var(--c-line)}.customer-grid{grid-template-columns:1fr}}@media(max-width:680px){.customer-app{grid-template-columns:1fr}.customer-sidebar{position:static;height:auto}.customer-sidebar nav{flex-direction:row;margin-top:25px}.customer-identity{display:none}.customer-main{padding:30px 17px 55px}.customer-header{align-items:stretch;flex-direction:column}.customer-form-grid{grid-template-columns:1fr}.customer-field.full{grid-column:auto}}.customer-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:0 0 34px;padding:30px 32px;border:1px solid var(--c-line);background:var(--c-card)}.customer-page-heading{max-width:760px}.customer-page-header h1{margin:8px 0 0;font-size:clamp(36px,4.3vw,58px);font-weight:600;line-height:1;letter-spacing:-.045em}.customer-page-header p{max-width:660px;margin:14px 0 0;color:var(--c-muted);font-size:15px;line-height:1.65}.customer-page-action{flex:none}.customer-kicker{font-size:10px;letter-spacing:.16em}.customer-primary,.customer-secondary{min-height:42px;padding:12px 18px;font-size:12px}.customer-stats-five{grid-template-columns:repeat(5,minmax(0,1fr))}.customer-stat{min-height:116px;padding:22px}.customer-stat span{font-size:10px;font-weight:700}.customer-stat strong{margin-top:24px;font-size:36px}.customer-stat.attention strong{color:var(--c-copper)}.customer-section{margin-top:52px}.customer-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:17px}.customer-section-title h2{margin:7px 0 0;font-size:25px;letter-spacing:-.02em}.customer-section-title a{color:var(--c-green);font-size:13px;font-weight:700;text-decoration:none}.customer-segmented{display:inline-flex;max-width:100%;margin-bottom:24px;padding:4px;overflow:auto;border:1px solid var(--c-line);background:#e9ece7}.customer-segmented button{min-height:38px;padding:9px 15px;border:0;background:transparent;color:var(--c-muted);font:700 11px Arial;white-space:nowrap;cursor:pointer}.customer-segmented button[aria-pressed=true],.customer-segmented button[aria-selected=true]{background:#fff;color:var(--c-copper);box-shadow:inset 0 -2px var(--c-copper),0 1px 4px #1d2b2217}.customer-table-wrap{border-radius:2px}.customer-table th{padding:13px 18px;font-size:9px}.customer-table td{padding:20px 18px;font-size:13px;vertical-align:middle}.customer-table tbody tr:hover{background:#f8faf7}.customer-project-title{display:block;font-size:15px!important;font-weight:800!important}.customer-project-reference{display:block;margin-top:6px;color:var(--c-muted);font-size:10px;letter-spacing:.05em}.customer-next-action{display:block;font-size:12px}.customer-row-detail{display:block;max-width:360px;margin-top:5px;color:var(--c-muted);font-size:11px;line-height:1.45}.customer-row-open{white-space:nowrap;color:var(--c-green)!important;font-size:12px}.customer-status{padding:7px 9px;font-size:9px}.customer-status.stage-estimate{background:#dfeae3;color:#265841}.customer-status.stage-rfq{background:#f3e7da;color:#7a431f}.customer-status.stage-order{background:#e4e1ef;color:#50427d}.customer-status.stage-delivered{background:#dceadb;color:#315d35}.customer-empty-feature{text-align:center;padding:56px 32px}.customer-empty-feature>span{display:grid;width:44px;height:44px;margin:0 auto 17px;border:1px solid #bdc9c0;border-radius:50%;place-items:center;color:var(--c-green);font-size:20px}.customer-empty-feature h2,.customer-empty-feature h3{margin:0;color:var(--c-ink);font-size:21px}.customer-empty-feature p{margin:10px auto 0;max-width:520px}.customer-empty-feature .customer-primary{margin-top:22px}.customer-empty-feature small{display:block;margin-top:12px}.customer-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.customer-action-list{display:grid;grid-gap:12px;gap:12px}.customer-action-list article{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;border:1px solid var(--c-line);background:var(--c-card)}.customer-action-list h3{margin:7px 0 4px;font-size:18px}.customer-action-list p{margin:0;font-size:13px;font-weight:700}.customer-action-list small{display:block;margin-top:5px;color:var(--c-muted);font-size:11px}.customer-stage-label{color:var(--c-copper);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.customer-card{padding:28px}.customer-card h2{font-size:22px}.customer-card p{font-size:13px;line-height:1.65}.customer-requirement-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:0;gap:0;margin:0}.customer-requirement-summary>div{padding:15px 0;border-bottom:1px solid var(--c-line)}.customer-requirement-summary>div:nth-child(odd){padding-right:24px}.customer-requirement-summary dt{color:var(--c-muted);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.customer-requirement-summary dd{margin:7px 0 0;font-size:13px;line-height:1.5;white-space:pre-wrap}.customer-file-group+.customer-file-group,.customer-file-upload+.customer-file-group{margin-top:20px}.customer-files li{align-items:center;padding:15px 0;font-size:13px}.customer-files li small{display:block;margin-top:5px;color:var(--c-muted);font-size:10px}.customer-files a{color:var(--c-green);font-size:12px;font-weight:700}.customer-account-card{display:flex;align-items:flex-start;gap:24px;max-width:760px}.customer-account-avatar{display:grid;flex:0 0 58px;width:58px;height:58px;border-radius:50%;background:var(--c-green);color:#fff;font-size:20px;font-weight:800;place-items:center}.customer-account-details{display:grid;flex:1 1;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:22px 30px;gap:22px 30px}.customer-account-details dt{display:block;color:var(--c-muted);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.customer-account-details dd{display:block;margin:7px 0 0;font-size:14px;font-weight:700}.customer-note{font-size:12px}.customer-commercial-value{font-size:23px!important;font-weight:600}.customer-back{display:inline-block;margin-bottom:18px;font-size:12px}@media(max-width:1100px){.customer-stats-five{grid-template-columns:repeat(3,1fr)}.customer-stat:nth-child(3){border-right:0}.customer-stat:nth-child(n+4){border-top:1px solid var(--c-line)}.customer-stat:nth-child(4){border-right:1px solid var(--c-line)}}@media(max-width:900px){.customer-page-header{align-items:flex-start;flex-direction:column}.customer-account-details,.customer-requirement-summary{grid-template-columns:1fr}.customer-requirement-summary>div:nth-child(odd){padding-right:0}}@media(max-width:680px){.customer-sidebar{padding:22px 18px}.customer-sidebar nav{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:0;gap:0;margin-top:22px}.customer-sidebar nav a{padding:10px 5px;border-left:0;border-bottom:2px solid transparent;font-size:11px;text-align:center}.customer-sidebar nav a[aria-current=page]{border-bottom-color:#ca6b3d}.customer-page-header{padding:24px 21px}.customer-page-header h1{font-size:36px}.customer-stats-five{grid-template-columns:1fr 1fr}.customer-stat:nth-child(3){border-right:1px solid var(--c-line)}.customer-stat:nth-child(2n){border-right:0}.customer-stat:nth-child(n+3){border-top:1px solid var(--c-line)}.customer-action-list article{align-items:flex-start;flex-direction:column}.customer-account-card{flex-direction:column}.customer-file-upload{align-items:flex-start;flex-direction:column}}.customer-new-project{max-width:950px}.project-overview{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-top:-18px;margin-bottom:22px}.project-overview>.project-details{max-width:680px}.project-details summary{cursor:pointer;font-size:13px;color:var(--c-copper);padding:8px 0}.project-details[open] summary{margin-bottom:16px}.project-step-content>.project-details{margin-top:24px}.project-status{font-size:13px;color:var(--c-muted);margin:0 0 30px}.project-journey{margin-bottom:28px}.project-journey ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none}.project-journey li{min-width:0;border-top:1px solid var(--c-line)}.project-journey a{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;padding:22px 5px 10px;color:var(--c-muted);text-decoration:none;font-size:12px;border-bottom:2px solid transparent}.project-journey a:hover{color:var(--c-copper);background:var(--c-card)}.project-journey a:focus-visible{outline:2px solid var(--c-copper);outline-offset:3px}.project-journey-dot{position:absolute;top:-5px;width:9px;height:9px;border:2px solid var(--c-line);border-radius:50%;background:var(--c-paper)}.project-journey li[data-current=true] .project-journey-dot{background:var(--c-copper);border-color:var(--c-copper);box-shadow:0 0 0 4px var(--c-card)}.project-journey li[data-current=true] small{color:var(--c-copper)}.project-journey small{font-size:9px;line-height:1.3}.project-journey li[data-selected=true] a{border-bottom-color:var(--c-copper);background:var(--c-card);color:var(--c-ink)}.project-step-content,.project-step-content .customer-grid>article{min-width:0}.project-estimate{max-width:820px}.project-estimate .customer-commercial-value{margin:26px 0}.project-workspace .project-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px;margin:22px 0 0}.project-workspace .project-comparison>div{min-width:0;padding:15px 0;border-top:1px solid var(--c-line)}.project-workspace .project-comparison dt{color:var(--c-muted);font-size:12px}.project-workspace .project-comparison dd{margin:8px 0 0;font-size:14px;white-space:normal;overflow:visible;text-overflow:clip}.project-workspace .project-comparison dd span{display:block;margin-top:6px}.project-workspace .project-journey a:hover{transform:none;text-decoration:none}.project-notes{white-space:pre-wrap}.project-workspace .customer-page-heading p{white-space:pre-wrap;overflow-wrap:anywhere}.project-files-panel .customer-files li>span{min-width:0;overflow-wrap:anywhere}.project-files-panel .customer-files a{flex-shrink:0}.project-files-panel{margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--c-line)}.project-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}@media(max-width:680px){.project-overview{flex-direction:column}.project-journey a{font-size:10px;padding:18px 2px 10px}.project-journey small{font-size:8px}.project-journey ol{gap:0}.project-section-heading{align-items:flex-start}}@media(max-width:480px){.project-workspace .project-comparison{grid-template-columns:minmax(0,1fr);gap:0}}