/* Swift project workspaces: navy, graphite, warm paper and restrained brass. */
.project-workflow{max-width:1700px;margin:0 auto 22px;display:flex;border-bottom:1px solid #cbd1c8;gap:6px;overflow-x:auto;scrollbar-width:thin;padding:4px 0 13px}.workflow-stage{flex:1;min-width:max-content;background:none;color:#5a675e;border:1px solid transparent;border-radius:6px;padding:13px 15px;font-size:11px;font-weight:600;min-height:44px;white-space:nowrap}.workflow-stage[aria-current="step"]{background:#001c31;color:#fff;border-color:#001c31;box-shadow:0 4px 10px #00132112}.workflow-stage:hover{border-color:#aeb9aa}.workflow-intro h3{font-size:17px;margin:0 0 12px}.workflow-intro p{font-size:11px;line-height:1.8;color:#63715f;margin:0 0 23px}.project-stage-actions{max-width:1700px;margin:22px auto 0;display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}.library-stage-actions{position:sticky;bottom:0;background:#fff;padding:15px 20px;border-top:1px solid #dde3d8;z-index:4}.equipment-shortcuts{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 20px}.equipment-shortcuts button{border:1px solid #d6ded1;border-radius:4px;background:#f0f3eb;font-size:10px;padding:10px;color:#001c31;min-height:38px}.service-question{padding:20px 0;border-top:1px solid #dfe4db}.service-question h3{font-size:15px;margin:0 0 10px}.service-selected{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;background:#f1f5ed;padding:12px;margin:10px 0}.service-selected img{width:34px;height:40px;object-fit:contain}.service-selected strong{font-size:10px;overflow-wrap:anywhere}.service-selected button{grid-column:2}.accessory-editor-group>select{width:100%;min-height:44px;font:inherit;font-size:12px;background:#fafbf7;border:1px solid #d1dacb;padding:11px;border-radius:5px;color:#001c31;margin:0 0 10px}
@media(max-width:760px){.project-workflow{margin:0 -16px 15px;padding:0 16px 12px;gap:6px;scroll-padding-inline:16px}.workflow-stage{flex:none;padding:12px 15px;font-size:11px}.project-stage-actions{margin-top:18px}.project-stage-actions>button{width:100%}.workflow-intro p{font-size:12px}.library-stage-actions{position:static;padding:16px}.accessory-editor-group>select{font-size:16px}.equipment-shortcuts button{font-size:11px;min-height:42px}}
@media print{.project-workflow,.project-stage-actions,.library-stage-actions{display:none!important}}
.project-main{--ink:#001c31;--paper:#f6f4ee;--line:#daddd7;--muted:#5b6465;--brass:#b39a73;background:var(--paper);color:var(--ink);padding:0 28px 40px;font-family:Manrope,Arial,sans-serif}
.equipment-preview{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:30px}.equipment-preview img{width:28%;height:125px;object-fit:contain;background:#f6f6ee;border-radius:6px;opacity:1;filter:none;padding:13px;box-shadow:0 8px 22px #0002;margin:0}
.project-main h1,.project-main h2,.project-main h3,.home-project-builders h2{font-family:Manrope,Arial,sans-serif;text-transform:none;letter-spacing:-.045em}
.project-main button,.project-main input,.project-main select,.project-main textarea{font-family:inherit}
.project-main button{cursor:pointer}.project-main [hidden]{display:none!important}
.project-main button:disabled{opacity:.4;cursor:not-allowed}.project-main :focus-visible{outline:3px solid #a88855;outline-offset:3px}
.project-heading{max-width:1700px;margin:auto;padding:44px 0 30px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.project-back{font-size:11px;display:inline-block;margin-bottom:14px;color:#626b6c;border-bottom:1px solid #bbc0bc;padding-bottom:3px}
.project-heading h1{font-size:clamp(32px,3.25vw,51px);font-weight:550;line-height:1.1;margin:0 0 12px}
.project-heading p{font-size:13px;color:#626b6c;margin:0}
.project-switch{display:flex;gap:4px;border:1px solid #d5d8d2;padding:4px;border-radius:40px;white-space:nowrap;background:#eaeae3;font-size:11px}
.project-switch a{padding:11px 17px;border-radius:30px}.project-switch a[aria-current]{background:#fff;box-shadow:0 2px 5px #0013210d;font-weight:700}
.project-toolbar{max-width:1700px;margin:0 auto 22px;display:flex;align-items:center;gap:20px;border-top:1px solid #d5d8d2;border-bottom:1px solid #d5d8d2;padding:15px 0}
.project-name-label{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#69716f;display:grid;gap:5px;min-width:230px;max-width:400px;flex:1}
.project-name-label input{font-size:14px;font-weight:650;color:var(--ink);background:none;border:0;outline-offset:2px;width:100%;padding:0}
#project-save-status{font-size:10px;color:#65716b;max-width:250px}
.project-file-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-left:auto}.project-file-actions button,.project-import-label{min-height:38px;border:1px solid #d3d7d1;border-radius:5px;padding:9px 12px;background:#fff;font-size:10px;font-weight:600;cursor:pointer}
.project-import-label{position:relative;overflow:hidden;display:inline-flex;align-items:center}.project-import-label input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}
.project-workspace{display:grid;grid-template-columns:290px minmax(0,1fr) 300px;gap:18px;max-width:1700px;margin:auto;align-items:start}
.project-pane{border:1px solid #d6dbd4;background:#fff;border-radius:13px;box-shadow:0 7px 18px #00132104;min-width:0;overflow:clip}
.builder-library,.builder-review{position:sticky;top:calc(var(--header-height) + 14px);max-height:calc(100svh - var(--header-height) - 30px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c6cbc4 transparent}
.pane-title{display:flex;align-items:center;justify-content:space-between;padding:21px 20px;border-bottom:1px solid #e5e7e1;position:sticky;top:0;background:#fff;z-index:3}
.pane-title h2{font-size:17px;font-weight:650;margin:0}.pane-icon{font-size:20px;font-weight:400;color:#7a827e}
#library-content,#review-content{padding:20px}.builder-field{display:grid;gap:8px;margin-bottom:17px;font-size:11px;font-weight:650;letter-spacing:-.01em}.builder-field input,.builder-field select,.builder-field textarea{width:100%;border:1px solid #d5dbd5;padding:11px 10px;border-radius:5px;background:#fafbf8;color:var(--ink);min-height:42px;font-size:12px;font-weight:450;min-width:0}
.builder-field small{font-size:10px;font-weight:400;color:#68716c;line-height:1.6;letter-spacing:0}
.builder-field select:disabled{opacity:.5}.builder-form-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.builder-form-triple{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.builder-form-pair .builder-field,.builder-form-triple .builder-field{min-width:0}
.builder-select-label{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#6c7470;margin:22px 0 10px}
.builder-search-results{display:grid;gap:4px;margin:-9px 0 17px}.builder-search-results button{display:grid;text-align:left;gap:5px;background:#f1f2ed;border:0;padding:12px;border-radius:4px;font-size:11px}.builder-search-results small{font-size:10px;color:#69716c;line-height:1.4}
.builder-product-preview{margin:24px -20px 0;border-top:1px solid #e5e7e1;background:#f5f6f1;padding:22px 20px}.builder-product-preview img{display:block;width:100%;height:135px;object-fit:contain;mix-blend-mode:multiply;margin:0 auto 20px}.builder-product-preview .builder-manufacturer{height:20px;max-width:85px;margin:0 0 14px;object-position:left}
.builder-product-preview h3{font-size:15px;letter-spacing:-.02em;margin:0 0 10px;overflow-wrap:anywhere}.builder-product-preview p{font-size:11px;line-height:1.7;color:#596660;margin:0 0 15px}.builder-product-preview .builder-field{margin-bottom:12px}
.project-primary,.project-secondary{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;border:1px solid var(--ink,#001c31);border-radius:5px;padding:12px 16px;font-size:11px;font-weight:650;text-align:center}
.project-primary{background:#001c31;color:white}.project-primary:hover{background:#001321}.project-secondary{background:white;color:#001c31;border-color:#cbd1ca}.project-primary.wide,.project-secondary.wide{width:100%}
.builder-text-button{border:0;background:none;padding:5px 0;font-size:10px;color:#455955;text-decoration:underline;text-underline-offset:4px;min-height:32px}
.builder-empty-choice{font-size:12px;line-height:1.8;color:#6e7971;padding:20px 0}.builder-result-choices{display:grid;gap:6px}.builder-result-choices button{border:1px solid #d7ddd5;background:white;padding:11px;text-align:left;border-radius:4px;font-size:10px}
.canvas-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:19px 22px;border-bottom:1px solid #dde1da;flex-wrap:wrap}.canvas-toolbar h2{font-size:16px;margin:0;white-space:nowrap}.canvas-toolbar>div{display:flex;gap:5px;flex-wrap:wrap}.canvas-toolbar button{font-size:10px;padding:8px 11px;background:#f1f3ed;border:1px solid #d8ded6;border-radius:4px;min-height:34px}.canvas-toolbar button[aria-pressed="true"]{background:#001c31;border-color:#001c31;color:white}
.project-canvas{background:#192426;background-image:radial-gradient(#ffffff16 .7px,transparent .7px);background-size:18px 18px;min-height:480px;position:relative;padding:28px 18px;overflow:auto;display:grid;place-items:center;isolation:isolate}
.project-canvas>svg{display:block;max-width:100%;height:520px;width:100%;overflow:visible;touch-action:pan-y}.project-canvas.is-zoomed{display:block}.project-canvas.is-zoomed>svg{max-width:none;width:150%;height:760px}.project-canvas>svg [data-place]{cursor:grab;outline:none}.project-canvas>svg [data-place]:focus-visible .device-border{stroke:#8c562e;stroke-width:3}.project-canvas>svg [data-place].is-selected .device-border{stroke:#9a6f37;stroke-width:3}.project-canvas>svg [data-place].is-dragging{cursor:grabbing;opacity:.85}.project-canvas .device-border{fill:#f7f7f3;stroke:#aeb7af;stroke-width:.8}.project-canvas .device-clearance{fill:none;stroke:#8b9c90;stroke-width:.7;stroke-dasharray:3 3}.project-canvas .device-label{font-family:Arial,sans-serif;fill:#172824;pointer-events:none}
.canvas-empty{max-width:410px;color:#ecece3;text-align:center;padding:45px 15px}.canvas-empty h3{font-size:25px;font-weight:500;line-height:1.2;margin:0 0 16px}.canvas-empty p{font-size:12px;color:#b6bfba;line-height:1.8}.canvas-empty img{max-height:140px;max-width:200px;object-fit:contain;opacity:.5;filter:grayscale(1);margin:0 auto 25px}.canvas-empty .project-secondary{margin-top:18px;background:#f2f1e8}
.canvas-legend{font-size:10px;color:#69746c;display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:13px 20px;border-bottom:1px solid #e3e7df;line-height:1.6}.legend-dot{width:8px;height:8px;background:#a8b8a9;display:inline-block;margin-right:5px;border-radius:50%}
.project-components{padding:22px}.component-list-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 15px}.component-list-title h3{font-size:15px;margin:0}.component-list-title span{font-size:10px;color:#69766e}
.project-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:13px;align-items:center;border-top:1px solid #e3e7df;padding:15px 0}.project-item img{width:44px;height:48px;object-fit:contain;mix-blend-mode:multiply}.project-item h4{font-size:11px;margin:0 0 5px;overflow-wrap:anywhere;letter-spacing:-.01em}.project-item p{font-size:10px;color:#657067;line-height:1.5;margin:0}.project-item .item-action-group{display:flex;align-items:center;gap:6px}.project-item button{background:#f2f4ef;border:1px solid #d8ded5;border-radius:4px;padding:9px;font-size:10px;min-height:36px}.item-quantity{font-size:11px;white-space:nowrap;font-weight:700}.item-needs-data{display:inline-block;margin-top:4px;color:#8b552e!important}
.review-section{border-bottom:1px solid #e2e6df;padding:0 0 21px;margin:0 0 21px}.review-section:last-child{border:0;margin:0}.review-section h3{font-size:14px;margin:0 0 13px}.review-section p{font-size:11px;line-height:1.8;color:#5f6b63;margin:9px 0}.review-section .review-footnote{font-size:10px;color:#778078;line-height:1.7}.review-big{font-size:27px!important;font-weight:550;letter-spacing:-.05em;color:#001c31!important;line-height:1.2!important}.review-size{font-size:11px!important;color:#526359!important}.review-state{font-size:10px;font-weight:650;padding:7px 10px;border-radius:4px;display:inline-flex;line-height:1.4;background:#edf3ea;color:#396444}.review-state.needs-review{background:#f5eee0;color:#805e29}.review-state.problem{background:#f5e9e2;color:#8c452f}.review-metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:17px 0}.review-metrics div{border-left:2px solid #c8b18c;padding-left:11px}.review-metrics dt{font-size:9px;color:#7a827c;margin-bottom:7px}.review-metrics dd{font-size:18px;font-weight:600;letter-spacing:-.04em;margin:0}.review-meter{height:5px;background:#e8ece4;border-radius:4px;margin:14px 0;overflow:hidden}.review-meter span{height:100%;display:block;background:#536b58;max-width:100%}.review-meter.is-over span{background:#9c6139}
.review-alert{background:#f7f2e8;color:#795a30;font-size:10px;line-height:1.7;padding:11px 12px;border-left:2px solid #b3976d;margin:10px 0}.review-alert.is-error{background:#f8ece6;color:#8d4933;border-color:#b26b4d}.review-source{font-size:10px!important;text-decoration:underline;text-underline-offset:3px;display:inline-block;margin-top:9px;color:#49624f}
.enclosure-choice{display:grid;grid-template-columns:50px minmax(0,1fr);align-items:center;gap:12px;text-align:left;border:1px solid #d8ded5;border-radius:6px;background:#fff;padding:12px;margin:9px 0;width:100%;color:#001c31}.enclosure-choice img{width:50px;height:53px;object-fit:contain}.enclosure-choice strong{font-size:12px;display:block;margin-bottom:4px}.enclosure-choice small{font-size:10px;line-height:1.5;color:#68776b;display:block}.enclosure-choice:hover{border-color:#71836f;background:#f5f7f1}.selected-enclosure{display:flex;gap:12px;align-items:center;margin:12px 0 17px}.selected-enclosure img{width:58px;height:65px;object-fit:contain}.selected-enclosure p{margin:0!important}
.builder-details{border-top:1px solid #e0e5dc;margin-top:15px;padding-top:13px}.builder-details>summary{font-size:11px;font-weight:650;cursor:pointer;padding:6px 0 12px}.builder-details>div{padding-top:10px}.builder-check{display:flex;align-items:center;gap:9px;font-size:11px;line-height:1.6;margin-bottom:12px}.builder-check input{width:16px;height:16px;accent-color:#001c31}.builder-hint{font-size:10px;line-height:1.7;color:#6c776d}.builder-check small{display:block;font-weight:400;color:#6a776b}
.bom-lines{width:100%;border-collapse:collapse;font-size:10px}.bom-lines th{text-align:left;font-size:9px;color:#788279;font-weight:500;padding:8px 0;border-bottom:1px solid #d7dfd4}.bom-lines td{padding:10px 0;border-bottom:1px solid #e8ece4;vertical-align:top;overflow-wrap:anywhere}.bom-lines td:last-child{text-align:right;font-weight:650;white-space:nowrap;padding-left:10px}.bom-lines td small{display:block;color:#73806f;font-size:9px;line-height:1.5;margin-top:4px}
.project-bottom-bar{max-width:1700px;margin:24px auto 0;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#001c31;color:#fff;padding:19px 22px;border-radius:9px;box-shadow:0 8px 22px #00132112}.project-bottom-bar>p{font-size:12px;margin:0;max-width:400px;line-height:1.7}.project-bottom-bar>div{display:flex;gap:8px;flex-wrap:wrap}.project-bottom-bar .project-secondary{background:none;color:#fff;border-color:#ffffff50}.project-bottom-bar .project-primary{background:#eee9df;color:#001c31;border-color:#eee9df}#project-feedback{position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);width:max-content;max-width:calc(100vw - 32px);background:#fff;color:#001c31;padding:14px 20px;box-shadow:0 12px 48px #00132140;border:1px solid #b5c0b3;border-radius:8px;font-size:12px;z-index:150;opacity:0;pointer-events:none;transition:transform .2s,opacity .2s}#project-feedback.is-visible{transform:translate(-50%,0);opacity:1}
.project-editor,.project-confirm{border:1px solid #d5ddcf;border-radius:14px;box-shadow:0 25px 100px #00132145;padding:30px;width:min(780px,calc(100vw - 30px));max-height:90svh;color:#001c31;background:#fafbf6}.project-editor::backdrop,.project-confirm::backdrop{background:#001321b8;backdrop-filter:blur(4px)}.editor-close-form{position:sticky;top:0;text-align:right;z-index:5;margin:-12px -10px 0 0;pointer-events:none}.editor-close-form button{pointer-events:auto;border:1px solid #cad3c5;border-radius:50%;width:38px;height:38px;background:white;font-size:23px;cursor:pointer}.project-editor h2,.project-confirm h2{font-size:25px;font-family:Manrope,Arial,sans-serif;letter-spacing:-.04em;line-height:1.2;margin:0 0 15px}.editor-product-head{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:22px;margin:0 0 24px}.editor-product-head img{width:90px;height:105px;object-fit:contain}.editor-product-head p{font-size:12px;color:#63705f;line-height:1.7}.editor-section{padding:20px 0;border-top:1px solid #d9e1d1}.editor-section h3{font-size:15px;margin:0 0 14px}.editor-actions{display:flex;justify-content:space-between;gap:12px;position:sticky;bottom:-30px;background:#fafbf6;padding:15px 0 0;border-top:1px solid #d8dfd2}.accessory-editor-group{margin:0 0 20px}.accessory-editor-group h4{font-size:11px;margin:0 0 10px;color:#667460;letter-spacing:0}.accessory-editor-choice{display:grid;grid-template-columns:18px 40px minmax(0,1fr) 65px;gap:10px;align-items:center;border:1px solid #d7dfd0;padding:11px;border-radius:5px;margin:6px 0;background:white}.accessory-editor-choice>input[type=checkbox]{width:16px;height:16px;accent-color:#001c31}.accessory-editor-choice img{width:40px;height:45px;object-fit:contain}.accessory-editor-choice strong{font-size:10px;display:block}.accessory-editor-choice p{font-size:10px;line-height:1.5;color:#697860;margin:5px 0}.accessory-editor-choice input[type=number]{width:60px;padding:8px 5px;border:1px solid #d3ddcb;border-radius:3px;min-height:36px;font:inherit;font-size:11px}.accessory-editor-choice>label{cursor:pointer}.project-confirm{max-width:460px}.project-confirm p{font-size:13px;line-height:1.8}.project-confirm>div{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
.run-card{padding:14px;border:1px solid #dbe1d5;border-radius:6px;margin:11px 0;background:#f8faf4}.run-card-header{display:flex;justify-content:space-between;align-items:center;margin:0 0 12px}.run-card-header strong{font-size:11px}.run-card-header button{background:none;border:0;color:#7e6452;font-size:11px;min-width:30px;min-height:30px}.run-card .builder-field{margin-bottom:9px}.run-card .builder-field input,.run-card .builder-field select{font-size:11px;min-height:37px;padding:8px}.run-card .builder-form-pair{gap:8px}.route-metric-label{font-size:10px;fill:#e9ece2;font-family:Arial,sans-serif}.route-line{stroke:#cbd2c8;stroke-width:14;fill:none;stroke-linecap:square}.route-centre{stroke:#758678;stroke-width:1;fill:none;stroke-dasharray:3 5}.route-point{fill:#b89d73;stroke:#001c31;stroke-width:2}.route-run-label{fill:#fff;font-size:11px;font-family:Manrope,Arial,sans-serif}.route-support{stroke:#a4b5a1;stroke-width:2}.cut-plan{display:grid;gap:10px;margin:15px 0}.cut-stock{height:21px;border-radius:3px;background:#dfe5d9;display:flex;overflow:hidden}.cut-piece{display:flex;align-items:center;justify-content:center;background:#465e4b;border-right:2px solid white;color:#fff;font:9px Arial,sans-serif;min-width:3px}.cut-stock:nth-child(even) .cut-piece{background:#758571}.cut-label{font-size:9px;color:#697661;display:block;margin:0 0 4px}.route-cable-row{border-top:1px solid #dde4d5;padding:14px 0}.route-cable-row h4{font-size:11px;margin:0 0 6px;overflow-wrap:anywhere}.route-cable-row p{font-size:10px;line-height:1.6;color:#6b7862;margin:0 0 10px}.route-cable-row>button{font-size:10px;border:1px solid #d0d8c7;border-radius:3px;background:white;padding:7px 10px}.requirement-choice{font-size:10px;margin:10px 0;border:1px solid #dcccae;background:#fbf7ee;padding:12px;border-radius:5px}.requirement-choice p{font-size:10px;line-height:1.6;margin:5px 0 10px}.requirement-choice select{width:100%;padding:10px;border:1px solid #ded2bc;background:white;font:inherit}.project-mobile-tabs{display:none}
.project-hub{padding-block:70px 90px}.project-kicker{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:#746d5f;margin:0 0 20px}.project-hub h1{font-size:clamp(45px,5.2vw,76px);font-weight:500;line-height:1.03;letter-spacing:-.06em;max-width:900px;margin:0 0 26px}.project-hub-intro{font-size:15px;line-height:1.8;max-width:630px;color:#637063;margin:0 0 50px}.project-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.project-entry{background:#fff;border:1px solid #d8ddd3;border-radius:15px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 30px #00132106;color:#001c31}.project-entry-art{height:270px;background:#192426;overflow:hidden;position:relative;isolation:isolate}.project-entry-art:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#10191c90,transparent 50%)}.entry-backplate{position:absolute;top:40px;left:15%;width:70%;height:310px;background:linear-gradient(110deg,#c5cbc6,#8b9990);transform:perspective(800px) rotateX(15deg) rotateY(-10deg) rotateZ(-8deg);box-shadow:20px 25px 0 #ffffff07,0 35px 45px #00000050;border:13px solid #6e7e74;display:flex;align-items:flex-start;justify-content:center;gap:18px;padding:40px 15px}.entry-backplate i{position:absolute;left:5px;right:5px;height:17px;top:80px;background:linear-gradient(#d2d5cb,#7f8d84,#e1e4d8);box-shadow:0 3px 7px #00132130}.entry-backplate i:nth-child(2){top:180px}.entry-backplate i:nth-child(3){top:265px}.entry-backplate img{position:relative;z-index:1;width:30%;height:95px;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(2px 4px 2px #00132130)}.entry-backplate img:last-child{width:15%}.route-art svg{width:100%;height:100%;object-fit:cover;transform:perspective(800px) rotateX(10deg) rotateZ(-6deg) scale(1.07)}.project-entry-copy{padding:32px 36px 29px}.project-entry-label{font-size:10px;color:#7c7566;display:block;margin:0 0 15px}.project-entry h2{font-size:38px;font-weight:500;line-height:1.07;margin:0 0 21px}.project-entry p{font-size:12px;line-height:1.8;color:#65705f;max-width:400px;margin:0 0 27px}.project-entry strong{display:flex;align-items:center;justify-content:space-between;font-size:12px;border-top:1px solid #dce2d5;padding-top:20px}.project-entry strong span{font-size:22px;font-weight:400}.project-entry:hover{border-color:#82917b;box-shadow:0 20px 45px #00132112}.project-entry:hover .entry-backplate{transform:perspective(800px) rotateX(10deg) rotateY(-5deg) rotateZ(-5deg)}.entry-backplate{transition:transform .6s ease}.home-project-builders{padding-block:70px 85px}.home-project-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin:0 0 35px}.home-project-heading h2{font-size:clamp(35px,4.2vw,58px);font-weight:500;line-height:1;margin:0}.home-project-heading p{font-size:13px;color:#5b695e;max-width:230px;line-height:1.7;margin:0}.home-project-builders .project-entry{flex-direction:row}.home-project-builders .project-entry-art{width:40%;height:auto;min-height:290px;flex-shrink:0}.home-project-builders .project-entry-copy{padding:28px}.home-project-builders .project-entry h2{font-size:29px}.home-project-builders .project-entry-art .entry-backplate{width:180%;left:-35%;top:80px;height:300px}.home-project-builders .route-art svg{width:200%;max-width:none;transform:translateX(-20%) rotate(-10deg);height:100%}
@media(min-width:1650px){.project-workspace{grid-template-columns:320px minmax(0,1fr) 330px}.project-canvas>svg{height:620px}.project-canvas{min-height:650px}}
@media(max-width:1200px){.project-main{padding-inline:18px}.project-workspace{grid-template-columns:260px minmax(0,1fr);gap:15px}.builder-review{position:static;max-height:none;grid-column:1/-1}.builder-review #review-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.builder-review .review-section{border:0;margin:0;padding:0}.project-bottom-bar{align-items:flex-start}.project-bottom-bar>div{max-width:440px;justify-content:flex-end}.project-file-actions button,.project-import-label{font-size:9px;padding-inline:10px}.home-project-builders .project-entry{flex-direction:column}.home-project-builders .project-entry-art{width:100%;height:220px;min-height:0}.home-project-builders .project-entry-art .entry-backplate{width:70%;left:15%;top:35px}.home-project-builders .route-art svg{width:100%;transform:rotate(-6deg) scale(1.05)}}
@media(max-width:760px){.project-main{padding:0 16px 28px}.project-heading{padding:30px 0 21px;display:block}.project-heading h1{font-size:34px;max-width:330px;letter-spacing:-.055em}.project-heading p{font-size:12px;line-height:1.7;max-width:330px}.project-back{font-size:10px;margin-bottom:14px}.project-switch{width:max-content;font-size:10px;margin-top:24px}.project-switch a{padding:9px 14px}.project-toolbar{display:grid;grid-template-columns:1fr auto;gap:12px;margin-bottom:17px;padding-block:15px}.project-name-label{min-width:0}.project-name-label input{font-size:16px}.project-file-actions{grid-column:1/-1;margin:0;gap:5px;justify-content:space-between}.project-file-actions button,.project-import-label{font-size:10px;min-height:37px;padding:8px 10px}#project-save-status{font-size:9px;max-width:95px;text-align:right;line-height:1.5;margin:0}.project-mobile-tabs{display:flex;position:sticky;top:var(--header-bar-height,78px);z-index:45;padding:7px;background:#e6e9df;border:1px solid #d4dcd0;border-radius:8px;margin:0 0 15px;gap:4px}.project-mobile-tabs>button{flex:1;border:0;background:none;border-radius:5px;font-size:11px;padding:12px 5px;min-height:42px;font-weight:600;color:#586b55}.project-mobile-tabs>button[aria-selected="true"]{background:#fff;color:#001c31;box-shadow:0 2px 6px #00132110}.project-mobile-tabs span{margin-left:3px;font-size:9px}.project-workspace{display:block}.project-workspace[data-active-tab="products"] .project-pane:not(.builder-library),.project-workspace[data-active-tab="layout"] .project-pane:not(.builder-canvas-panel),.project-workspace[data-active-tab="review"] .project-pane:not(.builder-review){display:none}.builder-library,.builder-review{position:static;max-height:none;overflow:clip}.builder-review #review-content{display:block}.builder-review .review-section{border-bottom:1px solid #e2e6df;padding-bottom:23px;margin-bottom:23px}.pane-title{padding:18px 20px;position:static}.pane-title h2{font-size:19px}.builder-field{font-size:12px}.builder-field input,.builder-field select,.builder-field textarea{font-size:16px;min-height:46px}.builder-product-preview img{height:175px}.builder-product-preview .builder-manufacturer{height:24px}.builder-product-preview h3{font-size:17px}.builder-product-preview p{font-size:12px}.builder-form-pair .builder-field input,.builder-form-pair .builder-field select,.builder-form-triple .builder-field input{font-size:16px}.project-primary,.project-secondary{font-size:12px;min-height:46px}.project-bottom-bar{display:block;padding:19px 17px;margin-top:18px;border-radius:8px}.project-bottom-bar>p{font-size:11px;margin-bottom:15px}.project-bottom-bar>div{display:grid;grid-template-columns:1fr 1fr;max-width:none;gap:8px}.project-bottom-bar .project-primary{grid-column:1/-1;grid-row:1;font-size:12px}.project-bottom-bar .project-secondary{font-size:10px;padding:10px 8px}.canvas-toolbar{padding:16px;gap:12px}.canvas-toolbar h2{font-size:15px}.canvas-toolbar button{font-size:10px;padding:8px;min-height:35px}.project-canvas{padding:24px 9px;min-height:350px}.project-canvas>svg{height:430px}.project-canvas.is-zoomed>svg{height:650px;width:170%}.canvas-legend{font-size:9px;padding:12px 16px}.project-components{padding:18px 16px}.project-item{grid-template-columns:36px minmax(0,1fr);gap:11px}.project-item img{width:36px;height:42px}.project-item .item-action-group{grid-column:2;justify-content:flex-start;margin-top:-2px}.project-item h4{font-size:12px}.project-item p{font-size:11px}.project-item button{font-size:11px;padding:8px 12px}.project-editor{padding:23px 18px;max-height:93svh;border-radius:11px}.editor-product-head{grid-template-columns:65px 1fr;gap:16px}.editor-product-head img{width:65px;height:85px}.editor-product-head h2{font-size:19px}.editor-product-head p{font-size:11px}.editor-actions{bottom:-23px;padding-bottom:4px}.accessory-editor-choice{grid-template-columns:16px 32px minmax(0,1fr) 50px;gap:8px;padding:10px 8px}.accessory-editor-choice img{width:32px;height:36px}.accessory-editor-choice strong{font-size:10px}.accessory-editor-choice input[type=number]{width:48px;font-size:16px;padding-inline:3px}.accessory-editor-choice p{font-size:9px}.run-card .builder-field input,.run-card .builder-field select{font-size:16px;min-height:43px}.project-hub{padding-block:40px 60px}.project-hub h1{font-size:45px}.project-hub-intro{font-size:13px;margin-bottom:30px}.project-entry-grid{grid-template-columns:1fr;gap:24px}.project-entry-art{height:220px}.project-entry-copy{padding:27px}.project-entry h2{font-size:34px}.project-entry p{font-size:12px}.home-project-builders{padding-block:45px 55px}.home-project-heading{display:block;margin-bottom:25px}.home-project-heading h2{font-size:38px;line-height:1.1}.home-project-heading p{margin-top:15px;max-width:none;font-size:12px}.home-project-builders .project-entry-art{height:190px}.home-project-builders .project-entry h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.entry-backplate,#project-feedback{transition:none}.project-entry:hover .entry-backplate{transform:perspective(800px) rotateX(15deg) rotateY(-10deg) rotateZ(-8deg)}}
@media print{.site-header,.site-footer,.skip-link,.project-file-actions,.project-switch,.project-mobile-tabs,.builder-library,.project-bottom-bar,.project-editor,.project-confirm,#project-feedback,.canvas-toolbar button,.item-action-group{display:none!important}.project-main{padding:0;background:white}.project-heading{padding:15px 0}.project-heading h1{font-size:25px}.project-toolbar{padding:10px 0}.project-workspace{display:block}.project-workspace .project-pane{display:block!important;position:static;max-height:none;border:0;box-shadow:none}.builder-review #review-content{display:block}.project-canvas{print-color-adjust:exact;-webkit-print-color-adjust:exact;break-inside:avoid;min-height:0}.project-canvas>svg{height:450px}.project-components{break-before:page}.review-section{break-inside:avoid}.builder-field{break-inside:avoid}.project-name-label input{border:0}.project-item{break-inside:avoid}}

/* Keep specifications readable at narrow desktop and phone widths. */
.project-item h4,.service-selected strong,.accessory-editor-choice strong,.editor-product-head h2{overflow-wrap:anywhere}.project-editor{overflow-y:auto}.builder-library .review-section{margin-bottom:24px}.builder-library .review-section h3{font-size:16px}.builder-hint{color:#586459}.project-pane{scroll-margin-top:calc(var(--header-height,90px) + 20px)}
@media(min-width:761px) and (max-width:960px){.builder-review #review-content{grid-template-columns:1fr 1fr}.builder-review .review-section:last-child{grid-column:1/-1}}
@media(max-width:760px){.builder-hint,.builder-field small{font-size:11px}.accessory-editor-choice p{font-size:11px}.project-editor .builder-form-triple{gap:8px}.project-editor .builder-field>span{font-size:11px}.builder-product-preview p{overflow-wrap:anywhere}.bom-lines{font-size:11px}.bom-lines td small{font-size:10px}.review-section>p{font-size:12px}.project-name-label{max-width:none}}

.accessory-lookup-image{display:block;width:130px;height:145px;object-fit:contain;margin:12px 0 20px}.accessory-pending{border-left:3px solid #a88855;padding:3px 0 8px 13px;margin-bottom:20px}.accessory-pending p{margin-top:0}.accessory-editor-group .builder-field{margin-top:10px}
/* Direct placement tools: every physical copy has its own position. */
.project-canvas .device-border{fill:transparent;stroke:transparent;pointer-events:all}.project-canvas .device-clearance{opacity:0;pointer-events:none}.project-canvas [data-place]:hover .device-border{stroke:#816d4b;stroke-width:1.3}.project-canvas [data-place].is-selected .device-clearance,.project-canvas [data-place].is-dragging .device-clearance{opacity:1}.project-canvas [data-place].has-conflict .device-border{stroke:#a34332;stroke-width:2.5}.panel-front-art{pointer-events:none;filter:drop-shadow(0 1px 1px #001c3130)}.project-canvas [data-place][aria-pressed=true]{outline:none}.placement-inspector{padding:17px 20px;background:#f6f4ed;border-bottom:1px solid #daddd1;color:#001c31}.placement-inspector>.builder-hint{margin:0}.placement-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.placement-heading>strong{font-size:13px;overflow-wrap:anywhere}.placement-heading>span{font-size:10px;color:#626e62}.placement-heading>button{margin-left:auto;font-size:10px;min-height:36px}.placement-fields{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:12px;align-items:end}.placement-fields .builder-field{margin:0}.placement-fields input,.placement-fields select{min-height:40px;font-size:12px;padding:9px}.placement-snap{display:flex;align-items:center;gap:8px;font-size:10px;min-height:36px;grid-column:1/-1}.placement-snap input{width:17px;height:17px;min-height:17px;accent-color:#001c31}.placement-status{font-size:10px;color:#4c624d;line-height:1.65;margin:10px 0 0}.placement-status.has-conflict{color:#9c3e2c}.canvas-toolbar button[aria-pressed=true]{background:#001c31;color:#fff;border-color:#001c31}.project-canvas>svg [data-rail]{cursor:pointer}.project-canvas>svg [data-rail]:focus-visible{outline:none;stroke:#9a6f37;stroke-width:3}
@media(max-width:760px){.placement-inspector{padding:16px}.placement-heading{gap:6px}.placement-heading>button{width:100%;text-align:left;margin:0}.placement-fields{grid-template-columns:1fr 1fr;gap:10px}.placement-fields>.builder-field:nth-child(3){grid-column:1/-1}.placement-fields input,.placement-fields select{font-size:16px;min-height:45px}.placement-status{font-size:11px}.canvas-toolbar>div{gap:5px}.canvas-toolbar button{min-height:40px}.placement-snap{font-size:11px}}
@media print{.placement-inspector{display:none!important}.project-canvas .device-border,.project-canvas .device-clearance{stroke:none!important}}
/* A single product-design workspace, with a task-focused cooling stage. */
.project-workflow{gap:5px;background:#f6f4ee}.workflow-stage{font-size:12px;display:flex;align-items:center;justify-content:center;gap:7px;letter-spacing:-.015em}.stage-count{display:inline-flex;min-width:19px;height:19px;align-items:center;justify-content:center;border-radius:50%;background:#ffffff24;font-size:10px}.workflow-stage:not([aria-current=step]) .stage-count{background:#e2e6dc;color:#425342}.project-workspace{grid-template-columns:320px minmax(0,1fr) 280px;gap:16px}.project-workspace[data-stage=cooling]{grid-template-columns:minmax(360px,440px) minmax(0,1fr)}.project-workspace[data-stage=cooling]>.builder-review{display:none}.project-pane{border-radius:9px;border-color:#d6dcd8;box-shadow:0 9px 30px #001c3106}.pane-title{padding:20px 22px}.pane-title h2{font-size:19px}.builder-field{font-size:12px}.builder-field input,.builder-field select,.builder-field textarea{font-size:14px;min-height:46px;border-radius:4px;background:#fff;padding:12px}.builder-field small{font-size:11px}.workflow-intro p,.builder-hint,.builder-product-preview p{font-size:12px;line-height:1.75}.builder-product-preview h3{font-size:18px}.builder-product-preview{background:#f3f4ef;padding:22px}.builder-product-preview img{height:150px}.project-primary,.project-secondary{font-size:12px;min-height:46px}.builder-group-nav{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 22px}.builder-group-nav button{flex:1 1 110px;border:1px solid #d6dcd7;background:#fff;font-size:11px;padding:10px;min-height:42px;border-radius:4px;text-align:left;color:#001c31}.builder-group-nav button[aria-pressed=true]{border-color:#001c31;background:#001c31;color:white}.builder-group-select{display:none}.builder-field:has(>.builder-group-select){display:none}.equipment-shortcuts{display:none}.canvas-toolbar{padding:16px 20px;gap:10px}.canvas-toolbar h2{font-size:18px}.canvas-toolbar>div{align-items:center}.canvas-toolbar button{font-size:11px;min-height:38px}.canvas-toolbar .builder-details{padding:0;margin:0;border:0;position:relative;overflow:visible}.canvas-toolbar summary{list-style:none;padding:10px 12px;border:1px solid #d5ddd6;background:#fff;font-size:11px;cursor:pointer;border-radius:4px}.canvas-toolbar summary:after{content:'⌄';margin-left:8px}.canvas-tool-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:25;width:210px;display:grid;gap:5px;background:#fff;padding:10px;border:1px solid #d4dcd7;border-radius:6px;box-shadow:0 10px 30px #001c3125}.canvas-tool-menu button,.canvas-tool-menu select{width:100%;text-align:left;min-height:42px;padding:10px;font:inherit;font-size:12px;border:1px solid #d5dcd7;background:#f5f6f2;border-radius:3px;color:#001c31}.project-canvas{background-color:#17242a;background-image:radial-gradient(#ffffff12 .65px,transparent .65px);background-size:22px 22px;padding:30px 18px}.project-canvas>svg{height:clamp(500px,63vh,750px)}.project-canvas .fitted-product-photo,.project-canvas .fitted-product-photo image{mix-blend-mode:multiply}.technical-device>rect{fill:#f3f3e940;stroke:#344b4e;stroke-width:.6}.technical-device path{stroke:#667877;stroke-width:.4}.technical-device text{fill:#001c31;font-family:Arial,sans-serif}.new-rail-preview rect{fill:#dbbb7540;stroke:#bd9a4e;stroke-width:1.3;stroke-dasharray:5 3}.new-rail-preview text{fill:#4c411d;font-family:Arial,sans-serif;font-weight:600}.new-rail-preview.has-conflict rect{fill:#b5413135;stroke:#a44232}.new-rail-preview.has-conflict text{fill:#8d3527}.selection-tools{display:flex;gap:7px;flex-wrap:wrap;align-items:end;border-top:1px solid #dce1d8;padding-top:12px;margin:0 0 15px}.selection-tools>button{font-size:11px;min-height:38px;border:1px solid #ced7cb;border-radius:4px;background:#fff;padding:9px 12px;color:#001c31}.selection-tools>.builder-field{margin:0;flex:1;min-width:130px;max-width:210px;font-size:10px}.selection-tools input{min-height:38px}.enclosure-size-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.enclosure-size-controls .builder-field select{font-size:13px;padding:11px 6px}.enclosure-preview .project-secondary{margin-top:8px}.cooling-intro h3{font-size:25px;letter-spacing:-.045em;margin:0 0 12px}.cooling-intro p{font-size:13px;line-height:1.8;color:#5b6862;margin:0 0 20px}.cooling-prerequisites{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 25px}.cooling-prerequisites .review-state{margin:0}.cooling-loss-source{border-top:1px solid #dce2d9;padding-top:23px}.cooling-conditions{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;margin-top:23px}.loss-data-row{padding:14px 0;border-top:1px solid #dbe0d8;display:grid;grid-template-columns:1fr 100px;gap:8px 12px}.loss-data-row>strong{font-size:12px;align-self:end}.loss-data-row>small{font-size:11px;line-height:1.6;grid-column:1;grid-row:2}.loss-data-row>.builder-field{grid-column:2;grid-row:1/3;font-size:10px;margin:0}.loss-data-row>a{font-size:11px}.cooling-result{margin-top:24px;padding:22px;border:1px solid #d3dcd0;background:#f1f4ed;border-radius:6px}.cooling-result h3{font-size:21px;margin:0 0 18px}.recommended-fan>img{width:130px;height:140px;object-fit:contain;mix-blend-mode:multiply;margin:4px 0 18px}.recommended-fan>strong{display:block;font-size:24px;margin-bottom:10px}.recommended-fan>p{font-size:12px;line-height:1.75}.recommended-fan .builder-check{margin:18px 0}.cooling-selected{font-size:12px;font-weight:650}.review-alert{font-size:12px;line-height:1.7}.project-item h4{font-size:13px}.project-item p{font-size:12px}.item-action-group{flex-wrap:wrap}.project-item .item-action-group button{font-size:10px;min-height:34px;padding:7px 9px}
@media(min-width:1650px){.project-workspace{grid-template-columns:350px minmax(0,1fr) 300px}.project-workspace[data-stage=cooling]{grid-template-columns:440px minmax(0,1fr)}.project-canvas>svg{height:690px}}
@media(min-width:761px) and (max-width:1250px){.project-workspace{grid-template-columns:300px minmax(0,1fr)}.builder-review{grid-column:1/-1;position:static;max-height:none}.builder-review #review-content{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.project-workspace[data-stage=cooling]{grid-template-columns:360px minmax(0,1fr)}}
@media(max-width:760px){.project-workspace,.project-workspace[data-stage=cooling]{display:block}.project-workspace[data-stage=cooling]>.builder-review{display:none}.workflow-stage{font-size:11px}.builder-group-nav{gap:6px}.builder-group-nav button{font-size:12px;min-height:45px;flex-basis:44%}.builder-field input,.builder-field select{font-size:16px}.enclosure-size-controls{gap:7px}.enclosure-size-controls .builder-field select{font-size:16px;min-height:48px;padding:10px 4px}.project-canvas>svg{height:490px}.canvas-toolbar{padding:15px}.canvas-toolbar>div{gap:5px}.canvas-toolbar button{font-size:10px;padding:9px}.canvas-tool-menu{width:200px}.selection-tools>button{flex:1;min-height:42px}.selection-tools>.builder-field{max-width:none;font-size:11px}.cooling-intro h3{font-size:26px}.cooling-conditions{gap:0 10px}.cooling-conditions .builder-field{font-size:11px}.cooling-result{padding:18px}.loss-data-row{grid-template-columns:1fr 90px}.loss-data-row input{font-size:16px}.cooling-result .review-metrics{font-size:12px}.project-item .item-action-group{gap:5px}.project-item .item-action-group button{font-size:11px;min-height:38px}.project-mobile-tabs{top:var(--header-bar-height,78px)}}
@media print{.canvas-tool-menu,.builder-group-nav,.selection-tools,.cooling-designer{display:none!important}}
.panel-zoom-controls{display:flex;gap:0!important;border:1px solid #cdd6cf;border-radius:4px;overflow:hidden}.panel-zoom-controls>button{border:0!important;border-right:1px solid #d5dcd5!important;border-radius:0!important;min-width:35px;background:#fff}.panel-zoom-controls>button:last-child{border-right:0!important}.project-canvas{display:block;height:clamp(480px,67vh,760px);min-height:0;scrollbar-width:thin;scrollbar-color:#899d95 #17242a}.project-canvas>svg,.project-canvas.is-zoomed>svg{max-width:none;display:block;margin:0 auto;overflow:visible}.placement-heading>button{margin-left:0}.placement-heading>button:first-of-type{margin-left:auto}.canvas-toolbar .canvas-tool-menu{font-family:Manrope,Arial,sans-serif}.recommended-fan .review-state{white-space:normal}.cooling-result .review-state{display:block;line-height:1.6;white-space:normal}
@media(max-width:760px){.project-canvas{height:500px;min-height:0;padding:20px 10px}.panel-zoom-controls>button{min-width:34px}.placement-heading>button{width:auto;flex:1}.placement-heading>button:first-of-type{margin:0}.canvas-toolbar h2{font-size:16px}.canvas-toolbar>div{gap:4px}}
@media print{.project-canvas{height:auto!important;overflow:visible}.project-canvas>svg{height:650px!important;width:100%!important}.panel-zoom-controls{display:none!important}}

/* DIN rails stay discoverable, with a clear magnetic drop target. */
.canvas-toolbar .add-din-rail{background:#001c31;color:#fff;border-color:#001c31;font-weight:650;padding-inline:14px;min-height:42px}.project-canvas [data-rail].is-drop-target .din-rail-body{stroke:#a77e34;stroke-width:4;filter:drop-shadow(0 0 5px #c8ad6b)}.project-canvas .rail-hit-area{pointer-events:all}.project-canvas [data-rail]:focus-visible .din-rail-body{stroke:#a77e34;stroke-width:3}

.row-slot-preview rect{fill:#be9a4230;stroke:#aa8034;stroke-width:2;stroke-dasharray:4 2;vector-effect:non-scaling-stroke}.row-slot-preview.has-conflict rect{fill:#ad3e2e20;stroke:#ad3e2e}.backplate-row path{fill:none;stroke:#64756f;stroke-width:1;stroke-dasharray:5 4}.backplate-row text{fill:#40554f;font-family:Arial,sans-serif}.backplate-row.is-drop-target path{stroke:#a77e34;stroke-width:3;stroke-dasharray:none}

.manufacturer-front image{mix-blend-mode:normal;pointer-events:none}.front-envelope rect{fill:#d9ddda;stroke:#586b66;stroke-width:.8}.front-envelope path{fill:none;stroke:#91a09a;stroke-width:.5}.front-envelope text{fill:#344d47;font-family:Arial,sans-serif}.manufacturer-front,.front-envelope{pointer-events:none}
