/* Industrial Choice planner workspace. Views share one saved project model. */
.planner-page{background:#eef2f7}.planner-intro{padding:27px 3vw 22px}.planner-intro h1{font-size:45px}.planner-steps{background:#fafbfd}.sizing-spotlight{padding:17px 3vw}.sizing-spotlight h2{font-size:23px}.sizing-spotlight .sizing-spotlight-button{padding:14px 22px}
.workspace{grid-template-columns:250px minmax(0,1fr);gap:20px;padding:24px 24px 40px;max-width:2050px}.settings{border:1px solid #d6dfeb;border-radius:12px;padding:20px;background:#fff;max-height:965px;overflow:auto;scrollbar-width:thin}.settings .panel-heading h2{font-size:22px}.settings details{border-color:#e5eaf1}.settings .field select,.settings .field input,.settings .field textarea{border-color:#c9d3df;border-radius:6px}.settings .help{color:#66758b}
.drawing-area{position:relative;min-width:0;background:#fff;border:1px solid #d6dfeb;border-radius:12px;box-shadow:0 10px 35px #18295007;align-self:start;overflow:hidden}.layout-bar{border:0;border-bottom:1px solid #e1e7ef;padding:14px 16px;gap:6px}.layout-bar>button[data-template]{background:#f1f4f8;border-radius:5px;padding:8px 10px;font-size:11px}.layout-bar>button[data-template]:hover{background:#e4eaf3}.layout-bar .canvas-sizing-button{font-size:12px;padding:10px 14px;background:#eee7c9;color:#182950;border-color:#e4d9aa;margin-left:auto}.layout-bar .canvas-sizing-button:hover{background:#e2d5a1;color:#182950}.view-toggle{padding:3px;border-radius:7px;gap:3px;background:#eef2f8}.view-toggle button{font-size:12px;padding:8px 12px;border-radius:5px;font-weight:600}.view-toggle button.active{background:#182950;box-shadow:0 2px 7px #18295022}
.tool-bar{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;background:white;border:0;border-bottom:1px solid #e1e7ef;padding:10px 14px}.tool-bar button{display:flex;gap:8px;align-items:center;justify-content:center;padding:9px 5px;border-radius:6px;background:#f7f9fc;color:#50617c;min-height:39px;border:1px solid transparent;line-height:1.2}.tool-bar button svg{width:19px;height:19px;flex:0 0 19px}.tool-bar button span{font-size:11px;font-weight:600;white-space:nowrap}.tool-bar button.active{background:#244391;border-color:#244391;color:#fff;box-shadow:0 3px 9px #24439120}.tool-bar button:hover{background:#e9eff8;color:#244391}.tool-bar button.active:hover{background:#182950;color:#fff}
.canvas-wrap{border:0}.canvas-meta{background:#fbfcfe;border:0;border-bottom:1px solid #e1e7ef;padding:13px 17px;font-size:10px;align-items:center;gap:12px;color:#65758c}.canvas-mode{color:#244391;font-weight:700;letter-spacing:.12em;font-size:9px;border-right:1px solid #d1dbe9;padding-right:13px}.canvas-meta #example-label{margin-right:auto}.viewport-shell{position:relative;height:clamp(530px,63vh,760px);min-height:530px;overflow:hidden;background:#f3f6fa}.viewport-shell #drawing{width:100%;height:100%;max-height:none;min-height:0;display:block;cursor:crosshair}.viewport-shell #drawing[hidden]{display:none}.viewport-shell #drawing.is-panning{cursor:grabbing}.hide-labels .svg-label{display:none}.model-3d{position:absolute;inset:0;overflow:hidden;touch-action:none}.model-3d[hidden],.model-presets[hidden],.model-loading[hidden]{display:none}.model-3d canvas{display:block;width:100%;height:100%;touch-action:none}.model-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.model-label{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;color:#33496a;font:600 10px var(--body);background:#ffffffed;border:1px solid #d5dfed;border-radius:4px;padding:4px 7px;box-shadow:0 2px 6px #18295009;line-height:1.2;max-width:180px;overflow:hidden;text-overflow:ellipsis}.model-label[hidden]{display:none}.model-labels button{pointer-events:auto;cursor:pointer}.model-label.run-label{font-size:10px;color:#526985;font-weight:500}.model-label.component-label{font-size:10px;color:#244391;border-color:#a9bddb}.model-label.dimension-label{background:transparent;border:0;box-shadow:none;color:#6a7e98;font-size:10px}.model-label.equipment-label{color:#182950;background:#f8fbff}.model-label.selected{background:#244391;border-color:#244391;color:white;box-shadow:0 3px 10px #24439125}.model-labels button:hover{background:#eaf1ff;border-color:#244391}.model-labels button.selected:hover{background:#182950;color:#fff}
.canvas-navigation,.canvas-layers,.model-presets{position:absolute;display:flex;align-items:center;gap:3px;z-index:6;padding:5px;background:#ffffffef;border:1px solid #d7e0ed;border-radius:8px;box-shadow:0 4px 16px #1829500a;backdrop-filter:blur(10px)}.canvas-navigation{left:15px;top:15px}.canvas-layers{right:15px;top:15px}.canvas-navigation button,.canvas-layers button,.model-presets button{font-size:11px;font-weight:600;padding:7px 9px;border:0;background:transparent;color:#52647f;min-height:31px;border-radius:4px;line-height:1.2}.canvas-navigation button:hover,.canvas-layers button:hover,.model-presets button:hover{color:#182950;background:#edf2fa}.canvas-navigation button[aria-pressed=true],.canvas-layers button[aria-pressed=true]{background:#e8effa;color:#244391}.canvas-navigation #view-zoom-in,.canvas-navigation #view-zoom-out{font-size:19px;padding:2px 9px}.canvas-navigation output{font-size:10px;min-width:36px;text-align:center;color:#65758e}.canvas-layers button[hidden]{display:none}.model-presets{bottom:51px;left:50%;transform:translateX(-50%);white-space:nowrap}.model-presets button:first-child{color:#244391}.model-presets #view-capture{border-left:1px solid #d9e2ef;margin-left:4px;padding-left:12px}.canvas-hint{position:absolute;bottom:12px;left:16px;right:16px;z-index:5;display:flex;gap:12px;justify-content:space-between;pointer-events:none;color:#667a96;font-size:10px}.canvas-hint output{font-variant-numeric:tabular-nums}.schematic-label{position:absolute;bottom:33px;right:17px;font-size:8px;letter-spacing:.09em;color:#8b9ab0;pointer-events:none}.model-loading{position:absolute;inset:0;display:grid;place-items:center;background:#edf2f9e8;z-index:7;color:#244391;font-size:15px;font-weight:600}
.canvas-bottom{border-color:#e2e8f0;background:#fbfcfe;font-size:10px;padding:10px 16px;gap:15px}.canvas-bottom button{font-size:11px;padding:6px 8px}.drawing-area>.preview-note{padding:8px 16px;font-size:10px;margin:0;border-top:1px solid #e8edf4;color:#7a879c}.instruction{border:0;border-top:1px solid #e1e7ef;border-bottom:1px solid #e1e7ef;background:#eef4fb;color:#355375;padding:13px 17px;font-size:12px;line-height:1.5}.mobile-note{margin:12px 16px}.route-details{margin:16px;border:1px solid #e1e7ef;border-radius:7px;padding:15px}.planner-guide-route{margin-top:0}
.selection-panel{position:absolute;right:18px;top:165px;width:285px;max-height:min(570px,68vh);overflow:auto;scrollbar-width:thin;padding:18px;border:1px solid #c9d7ea;border-radius:10px;background:#fffffffa;backdrop-filter:blur(12px);box-shadow:0 12px 45px #18295022;z-index:12;margin:0}.selection-panel.is-empty{display:none}.selection-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.selection-heading h3{font-size:19px;margin:5px 0 0;line-height:1.2}.selection-heading .small-label{font-size:8px;color:#74839b;letter-spacing:.1em}.selection-heading button{border:0;background:#edf2f9;border-radius:5px;color:#344b6e;font-size:21px;line-height:1;padding:4px 8px}.selection-utilities{display:flex;gap:8px;margin-bottom:17px;padding-bottom:12px;border-bottom:1px solid #e1e8f1}.selection-utilities button{font-size:11px;border:0;background:#eef3fa;color:#244391;padding:7px 10px;border-radius:4px}.selection-panel form{grid-template-columns:1fr 1fr;gap:13px 11px}.selection-panel .field label{font-size:11px;line-height:1.35}.selection-panel .field input,.selection-panel .field select{border-radius:5px;border-color:#c4d0e0;font-size:13px;padding:9px}.selection-panel .selection-actions{flex-wrap:wrap}.selection-panel .selection-actions .button{flex:1;justify-content:center}.selection-panel .selection-actions .delete{font-size:11px}.selection-panel .field.wide{grid-column:1/-1}
.takeoff{grid-column:1/-1;border-radius:12px;border-color:#d6dfeb;display:grid;grid-template-columns:240px minmax(0,1fr) 290px;gap:16px 30px;padding:26px}.takeoff .panel-heading{grid-column:1/-1;margin-bottom:0}.takeoff .sizing-summary{grid-column:1;grid-row:2;margin:0;border-radius:6px}.takeoff .takeoff-total{grid-column:1;grid-row:3;border-bottom:0;margin:0;padding:0}.takeoff>dl{grid-column:2;grid-row:2/4;margin:0;align-content:start;font-size:12px;gap:10px 20px}.takeoff>#warnings{grid-column:2;grid-row:4}.takeoff>.help{grid-column:2;grid-row:5;font-size:11px}.takeoff .takeoff-actions{grid-column:3;grid-row:2/4;margin:0}.takeoff>.help:last-child{grid-column:3;grid-row:4/6}.takeoff .sizing-summary h3{font-size:19px}.takeoff .takeoff-total>span{font-size:54px}.takeoff .small-label{font-size:9px}
.drawing-area:fullscreen{width:100vw;height:100dvh;border-radius:0;display:flex;flex-direction:column;overflow:hidden;background:#fff}.drawing-area:fullscreen .canvas-wrap{flex:1;min-height:0;display:flex;flex-direction:column}.drawing-area:fullscreen .viewport-shell{flex:1;height:auto;min-height:0}.drawing-area:fullscreen>.preview-note,.drawing-area:fullscreen>.route-details,.drawing-area:fullscreen>.mobile-note{display:none}.drawing-area:fullscreen .tool-bar{grid-template-columns:repeat(12,minmax(0,1fr))}.drawing-area:fullscreen .tool-bar button{flex-direction:column;gap:5px}.drawing-area:fullscreen .instruction{min-height:38px;padding:9px 17px}.drawing-area:fullscreen .selection-panel{top:150px;max-height:calc(100dvh - 200px)}
@media(min-width:1750px){.workspace{grid-template-columns:280px minmax(0,1fr);padding:26px 3vw 45px}.tool-bar{grid-template-columns:repeat(12,minmax(0,1fr))}.tool-bar button{flex-direction:column;gap:6px}.viewport-shell{height:700px}.selection-panel{top:165px}}
@media(max-width:1200px){.workspace{grid-template-columns:235px minmax(0,1fr);gap:15px;padding:18px}.layout-bar .canvas-sizing-button{order:0;width:auto;margin:0 0 0 auto}.layout-bar .view-toggle{margin-left:4px}.tool-bar button{gap:5px}.tool-bar button span{font-size:10px}.canvas-layers{top:61px;left:15px;right:auto}.selection-panel{top:170px;width:270px}.takeoff{grid-template-columns:220px minmax(0,1fr) 245px;gap:16px 22px}}
@media(max-width:900px){.workspace{grid-template-columns:215px minmax(0,1fr);padding:14px;gap:12px}.settings{padding:17px}.tool-bar{grid-template-columns:repeat(4,minmax(0,1fr))}.layout-bar>span{display:none}.layout-bar .view-toggle{margin-left:auto}.layout-bar .canvas-sizing-button{width:100%;order:2;justify-content:space-between;margin:4px 0 0}.viewport-shell{height:560px}.selection-panel{top:240px;width:260px;max-height:55vh}.takeoff{display:block}.takeoff .sizing-summary{margin:20px 0}.takeoff>dl{margin:20px 0}.takeoff .takeoff-actions{margin-top:22px}.takeoff .takeoff-total{padding:12px 0}.takeoff>.help{font-size:12px}}
@media(max-width:800px){.workspace{grid-template-columns:1fr;padding:14px;gap:18px}.settings{max-height:none}.settings .field label{font-size:12px}.settings .field input,.settings .field select{font-size:16px}.planner-intro h1{font-size:39px}.sizing-spotlight h2{font-size:21px}.tool-bar{grid-template-columns:repeat(6,minmax(0,1fr));padding:10px 8px;gap:4px}.tool-bar button{flex-direction:column;gap:5px;padding:9px 3px;min-height:57px}.tool-bar button span{font-size:9px}.tool-bar button svg{width:20px;height:20px}.layout-bar{padding:12px}.layout-bar>button[data-template]{font-size:10px;padding:7px 8px}.layout-bar .view-toggle button{padding:8px;font-size:11px}.canvas-meta{font-size:9px;padding:12px;gap:8px}.canvas-mode{font-size:8px;padding-right:9px}.viewport-shell{height:580px;min-height:480px}.canvas-navigation{left:10px;top:11px;right:10px;justify-content:center;padding:4px}.canvas-navigation button{padding:7px 9px;font-size:11px}.canvas-layers{left:10px;top:59px;right:auto;padding:4px}.model-presets{bottom:60px;padding:4px;max-width:calc(100% - 20px);gap:0}.model-presets button{padding:7px 8px;font-size:10px}.model-presets #view-capture{padding-left:8px;margin-left:2px;font-size:9px}.canvas-hint{font-size:9px;bottom:10px;left:12px;right:12px;flex-direction:column;gap:4px}.schematic-label{bottom:39px;font-size:7px;right:12px}.model-label{font-size:9px;max-width:130px;padding:4px 5px}.model-label.run-label,.model-label.component-label{font-size:9px}.canvas-bottom{gap:8px;padding:10px 12px;font-size:9px}.selection-panel{position:fixed;top:auto;bottom:12px;left:12px;right:12px;width:auto;max-height:48dvh;z-index:85;padding:17px}.selection-panel .field input,.selection-panel .field select{font-size:16px}.selection-panel form{grid-template-columns:1fr 1fr}.selection-heading h3{font-size:20px}.selection-panel .selection-actions .button{font-size:13px}.drawing-area:fullscreen .tool-bar{grid-template-columns:repeat(6,minmax(0,1fr))}.drawing-area:fullscreen .selection-panel{top:auto;bottom:12px;max-height:48dvh}.drawing-area:fullscreen .layout-bar>button[data-template],.drawing-area:fullscreen .canvas-sizing-button{display:none}}
@media(prefers-reduced-motion:reduce){.drawing-area *{scroll-behavior:auto!important;transition:none!important}}

.settings-toggle{display:none}
@media(max-width:800px){.settings{padding:0}.settings-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:18px;border:0;background:#fff;border-radius:12px;color:#182950;font:600 14px var(--body);text-align:left}.settings-toggle span:last-child{font-size:21px;color:#244391}.settings:not(.is-expanded) #shop-settings-body{display:none}#shop-settings-body{padding:0 18px 18px}.settings.is-expanded .settings-toggle{border-bottom:1px solid #e5ebf4;margin-bottom:18px}}
.model-3d:not([data-tool="select"]) .model-labels button{pointer-events:none}

.route-search-label{display:block;font-size:11px;color:#60728d;margin:14px 0 7px}#route-search{width:100%;border:1px solid #cbd7e7;border-radius:5px;padding:11px;font:13px var(--body);color:#182950;background:#f9fbfe}#route-list button[hidden],#route-search-empty[hidden]{display:none}#route-search-empty{font-size:12px;color:#64748b}
