/* A quieter desk: select a tower, work on its mass, unfold precision when needed. */
.design-reference-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 18px;border-bottom:1px solid #dee5d9;background:#f1f5eb;color:#738365;font-size:10px;line-height:1.6;flex-shrink:0;pointer-events:auto}
.design-reference-caption button{color:#527447;font-size:10px;white-space:nowrap;text-decoration:underline;text-underline-offset:3px;padding:3px 0}
.design-look-group{text-align:center}.design-look-group .design-look{width:100%;padding-bottom:3px;min-height:27px}.design-look-group small{display:block;font-size:9px;line-height:1.6;color:#89997e}
@media(max-width:580px){.design-reference-caption{padding:5px 10px;font-size:9px;gap:6px}.design-reference-caption button{font-size:9px}.design-look-group small{font-size:8px}}
.design-workspace{inset:90px 24px 24px;grid-template-columns:minmax(0,1fr) 374px;gap:16px;color:#233f38}
.design-workspace [hidden]{display:none!important}
.design-stage,.design-inspector{border-color:#dce5dc;border-radius:18px;background:#f8faf7}
.design-stage-head{padding:18px 22px;min-height:91px;gap:12px}
.design-stage-title small{font-size:9px;letter-spacing:1.7px;color:#72867a;margin:0 0 7px;line-height:1}
.design-stage-title strong{font-size:23px;line-height:1.2;letter-spacing:1px;font-weight:600}
.design-stage-title>span{display:block;color:#7a8d80;font-size:11px;margin-top:6px}
.design-tabs{padding:4px;gap:4px}.design-tabs button{font-size:12px;padding:10px 13px;min-height:36px}
.design-view-tools{position:relative;top:auto;left:auto;right:auto;margin:0;padding:12px 18px;flex-shrink:0;border-bottom:1px solid #e0e7de;background:#f7faf5}
.design-segment{padding:3px;box-shadow:none;border:0;background:#eaf0e7}.design-segment button{font-size:12px;min-height:34px;padding:8px 11px}
.design-zoom button{font-size:12px;height:36px;min-width:34px;border:1px solid #dce4d7;background:#fff;border-radius:7px;box-shadow:none}.design-zoom button:nth-child(2){padding:0 12px}
.design-plan-wrap{min-height:190px;flex:1;background:#edf3e8;position:relative}
.design-plan{background:radial-gradient(ellipse at 45% 40%,#f3f7ee,#e9f0e2);cursor:grab}
.design-plan:active{cursor:grabbing}.plan-part{cursor:grab}.plan-part:hover{filter:brightness(1.035)}
.plan-boundary{stroke:#d85e54;stroke-width:1.7;stroke-dasharray:7 4;fill:#dc746309}
.plan-selected{stroke:#244f46;stroke-width:2.4;fill:none;pointer-events:none}
.plan-label{fill:#213e35;paint-order:stroke;stroke:#f2f6ec;stroke-width:.6px;pointer-events:none;font-weight:600}
.plan-handle{fill:#fff;stroke:#285747;stroke-width:2;filter:drop-shadow(0 2px 2px #36533d20);cursor:nwse-resize}
.plan-rotate{fill:#2e6553;stroke:#fff;stroke-width:2;cursor:crosshair}.plan-handle-link{stroke:#507a60;stroke-width:1.2}
.plan-zone-name{fill:#9b695d;pointer-events:none}
.plan-comparison{stroke:#876bb1;stroke-width:1.8;stroke-dasharray:7 5;fill:#947bb008;vector-effect:non-scaling-stroke;pointer-events:none}
.plan-dimension-line{stroke:#5c7c67;stroke-width:1;vector-effect:non-scaling-stroke;pointer-events:none}
.plan-dimension-label{fill:#365845;paint-order:stroke;stroke:#f2f6ec;stroke-width:4px;stroke-linejoin:round;pointer-events:none;font-weight:600}
.design-plan-note{left:16px;bottom:14px;font-size:10px;padding:10px 12px;background:#f9fcf3e8;border:1px solid #e0e7d9;border-radius:9px;box-shadow:none;line-height:1.7;max-width:250px;pointer-events:none}
.design-plan-note strong{font-size:11px;color:#4a6956;font-weight:500}.design-plan-note span{display:block;color:#82937f}
.design-compass{bottom:15px;right:20px;color:#5e7c63}.design-compass b{font-size:28px}.design-compass span{font-size:10px}
.design-overlay-tag{position:absolute;left:15px;top:14px;display:flex;align-items:center;gap:8px;border:1px solid #dbcee9;border-radius:9px;background:#fbf8ffed;padding:7px 10px;font-size:11px;color:#795a9e;max-width:calc(100% - 30px)}
.design-overlay-tag i{width:18px;border-top:2px dashed #876bb1}.design-overlay-tag span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.design-overlay-tag button{font-size:20px;width:26px;height:26px;flex-shrink:0}
.design-selection-readout{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid #dce5d6;background:#f5f8f0;min-height:44px;font-size:12px}
.design-selection-readout strong{font-size:12px;font-weight:600;color:#305745}.design-selection-readout span{font-variant-numeric:tabular-nums;color:#637b65}.design-selection-readout small{font-size:10px;color:#91a08c;margin-left:auto}
.design-live-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #e1e8dc;background:#fbfcf8;padding:12px 8px}
.design-live-metrics .design-metric{border:0;border-right:1px solid #e4e9de;padding:3px 15px;background:transparent;border-radius:0;min-height:57px}.design-live-metrics .design-metric:last-child{border:0}
.design-metric small{font-size:11px;line-height:1.4;color:#809079;display:block;margin-bottom:7px}.design-metric strong{font-family:inherit;font-size:21px;font-weight:500;letter-spacing:-.4px;color:#345b46;font-variant-numeric:tabular-nums}.design-metric span{font-size:10px;margin-left:5px;color:#82917c}
.design-stage-foot{min-height:35px;padding:9px 18px;gap:12px;border-top:1px solid #e5eadf;background:#f7f9f2}.design-legend{font-size:10px}.design-scale{font-size:10px;margin-left:auto}.design-plan-feedback{font-size:10px;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.design-plan-feedback.error{color:#ae5a43}
.design-stage.is-3d .design-view-tools,.design-stage.is-3d .design-selection-readout,.design-stage.is-3d .design-live-metrics,.design-stage.is-3d .design-stage-foot{pointer-events:auto;background:#f8faf4ed}
.design-stage.is-3d .design-selection-readout{margin-top:auto}.design-stage.is-3d .design-3d-help{bottom:165px;font-size:12px;left:20px;background:#f8faf3f0;max-width:285px;border-radius:11px;padding:14px}
.design-3d-help p{font-size:12px;line-height:1.7}.design-camera-turn button{font-size:12px;min-height:36px}
.design-inspector{display:flex;flex-direction:column;min-height:0}.design-inspector-top{padding:16px 18px 10px;border-bottom:0;background:#f8faf7;flex-shrink:0}
.design-inspector-kicker{font-size:11px;color:#839381;letter-spacing:.5px}.design-save-state{font-size:10px;color:#6c8c70}.design-save-state.error{color:#b06c49}
.design-title-row{gap:8px;margin-top:7px}.design-title-row input{font-size:17px;min-width:0;font-weight:500;height:34px;padding:0;border:0;background:transparent;color:#284f41}.design-title-row input:focus{outline:none;box-shadow:0 1px #447354}
.design-history{gap:5px}.design-history button{border:1px solid #dfe6d9;border-radius:7px;width:34px;height:34px;font-size:18px;background:#fff}
.design-tower-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:2px 18px 14px;flex-shrink:0;max-height:212px;overflow:auto}
.design-tower-card{position:relative;border:1px solid #dfe7da;border-radius:11px;background:#f1f5ed;overflow:hidden}.design-tower-card.selected{border-color:#597e63;background:#e5efdf;box-shadow:inset 0 0 0 1px #597e6318}
.design-tower-select{display:block;text-align:left;width:100%;padding:13px 12px 12px;min-height:97px}.design-tower-select strong{font-size:13px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:7px 0 5px;font-weight:600;color:#34573f}.design-tower-select small{display:block;font-size:10px;color:#86967c;font-variant-numeric:tabular-nums}
.design-tower-code{font-size:11px;font-weight:600;color:#68906e;display:block;letter-spacing:1px}.design-tower-lock{position:absolute;right:8px;top:7px;padding:5px 6px;font-size:10px;color:#7b927d;border-radius:5px;min-height:28px}.design-tower-lock:hover{background:#dce9d5}
.design-inspector-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0 18px;gap:4px;border-bottom:1px solid #dfe6d8;background:#f8faf7;flex-shrink:0}.design-inspector-tabs button{font-size:12px;min-height:42px;border-bottom:2px solid transparent;color:#91a08a}.design-inspector-tabs button.active{color:#315c42;border-bottom-color:#477951;font-weight:600}
.design-scroll{padding:0 18px 18px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cbd7c3 transparent;flex:1;min-height:0}
.design-section{padding:18px 0;border-bottom:1px solid #e2e8dc}.design-section-head{margin-bottom:12px;gap:8px}.design-section h3{font-size:13px;font-weight:600;letter-spacing:0}.design-section-head small{font-size:10px;color:#91a087}.design-section-head>button{font-size:11px;padding:4px 0;min-height:28px;color:#65806b}
.design-body-note,.design-source-note{font-size:11px;line-height:1.8;color:#87947f;margin:9px 0}.design-body-note:first-child{margin-top:0}
.design-fields{gap:12px 10px}.design-field{font-size:12px;line-height:1.5;color:#61755a;gap:6px;display:flex;flex-direction:column}.design-field.wide{grid-column:1/-1}
.design-input-wrap{height:38px;background:#fff;border:1px solid #dbe4d3;border-radius:8px;padding:0 10px;display:flex;align-items:center;gap:4px}.design-input-wrap:focus-within{border-color:#6d956c;box-shadow:0 0 0 2px #719b7015}.design-input-wrap input{height:36px;width:100%;min-width:0;background:transparent;border:0;padding:0;color:#325841;font-size:15px;font-variant-numeric:tabular-nums;outline:none}.design-input-wrap span{color:#9aa68e;font-size:11px}.design-input-wrap input:disabled{opacity:.48}.design-input-wrap input::placeholder{color:#a7b39d;font-size:12px}.design-field select{height:38px;border:1px solid #dbe4d3;border-radius:8px;background:#fff;color:#526a4c;padding:0 8px;font-size:12px}
.design-field textarea{width:100%;border:1px solid #dbe4d3;border-radius:8px;background:#fff;color:#486044;padding:10px;font-size:12px;min-height:82px;resize:vertical;line-height:1.6}.design-field textarea::placeholder{color:#a1ad98;font-size:11px}
.design-place-controls{display:grid;grid-template-columns:124px minmax(0,1fr);gap:17px;align-items:center;margin:18px 0}.design-nudge-pad{position:relative;display:grid;grid-template-columns:repeat(3,38px);grid-template-rows:repeat(3,35px);gap:3px}.design-nudge-pad button{background:#eaf1e3;border:1px solid #dce6d3;border-radius:8px;font-size:19px;color:#557a56}.design-nudge-pad button:hover{background:#dcebd3}.design-nudge-pad .north{grid-area:1/2}.design-nudge-pad .west{grid-area:2/1}.design-nudge-pad .east{grid-area:2/3}.design-nudge-pad .south{grid-area:3/2}.design-nudge-unit{grid-area:2/2;font-size:10px;color:#a3b096;display:grid;place-items:center}.design-rotate-pair{display:flex;gap:7px;margin-top:8px}.design-rotate-pair button{border:1px solid #dbe5d2;border-radius:7px;background:#f0f5e9;min-height:34px;flex:1;font-size:11px;color:#5c7d55}
.design-edit-parts-link{width:100%;background:#e9f1e3;border:1px solid #d7e3ce;border-radius:8px;font-size:12px;color:#51734a;padding:12px 8px;min-height:40px;margin:0 0 12px}
.design-tree{display:flex;flex-direction:column;gap:5px}.design-stack-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;width:100%;border:1px solid #e3e9dd;border-radius:8px;background:#f2f6ee;text-align:left;min-height:47px}.design-stack-row.active{border-color:#7e9b7b;background:#e7efdf}.design-stack-block{display:block;width:36px;background:var(--part-color);border-radius:3px;opacity:.8;border:1px solid #425e4820;transform:skewY(-4deg)}.design-stack-row span{font-size:12px;font-weight:500;line-height:1.5;color:#45623f}.design-stack-row small{font-size:10px;white-space:nowrap;color:#8a9b7f;font-variant-numeric:tabular-nums}
.design-add-parts{margin-top:10px}.design-add-parts summary{font-size:12px;color:#6e8a60;cursor:pointer;padding:9px 0;list-style:none}.design-template-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:6px}.design-template-buttons button{font-size:11px;min-height:36px;background:#edf3e5;border:1px solid #dde7d3;border-radius:7px;padding:8px 6px;color:#6c865d}
.design-lock-row{font-size:11px;line-height:1.6;gap:8px;margin:14px 0}.design-lock-row input{accent-color:#4e7d4a;width:16px;height:16px;flex-shrink:0}.design-part-summary{font-size:11px;color:#6c895e;background:#eef4e7;padding:8px 10px;border-radius:7px;margin-top:10px}
.design-advanced{margin-top:12px;border:1px solid #e2e8d9;border-radius:8px;padding:0 10px}.design-advanced>summary{padding:11px 0;font-size:11px;color:#829676;cursor:pointer}.design-advanced .design-fields{padding:3px 0 12px}
.design-mini-actions{display:flex;gap:8px;margin-top:14px}.design-mini-actions button{font-size:11px;border:1px solid #dfe6d6;min-height:34px;border-radius:7px;padding:6px 10px;background:#f4f7ee;color:#708464}.design-mini-actions button.danger{color:#a3816d;margin-left:auto;background:transparent}.design-locked-note{font-size:11px;color:#9d814d;line-height:1.7;margin-top:12px}
.design-professional,.design-checks,.design-more-actions{border-bottom:1px solid #e0e7d9}.design-professional>summary,.design-checks>summary,.design-more-actions>summary{display:flex;justify-content:space-between;align-items:center;list-style:none;padding:16px 0;font-size:12px;color:#66805b;cursor:pointer;gap:8px}.design-professional>summary:after,.design-checks>summary:after,.design-more-actions>summary:after{content:'＋';margin-left:0;color:#8c9f7e;font-size:14px}.design-professional[open]>summary:after,.design-checks[open]>summary:after,.design-more-actions[open]>summary:after{content:'−'}.design-professional summary small,.design-checks summary small{font-size:9px;color:#9eac92;flex:1;text-align:right}.design-professional-body{padding:0 0 14px}.design-professional-body>.design-field{margin-top:12px}.design-professional-body .design-lock-row{margin-top:0}.design-checks>.design-body-note{padding-bottom:10px}
.design-status-card{padding:10px 12px;background:#edf3e5;border:1px solid #e0e9d7;border-radius:8px;font-size:11px;margin-bottom:12px;line-height:1.7;color:#718666}.design-status-card.error{border-color:#e7ceba;background:#fcf2e7;color:#a5805b}.design-status-card button{font-size:11px;line-height:1.7;text-align:left;padding:6px 0;width:100%;text-decoration:underline}.design-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.design-metrics .design-metric{padding:10px;background:#f0f5e9;border:0;border-radius:8px}.design-metrics .design-metric strong{font-size:18px}.design-metrics .design-metric small{font-size:9px}.design-source-link{font-size:11px;text-decoration:underline;color:#63845c;padding:5px 0;min-height:32px}
.design-study-targets p{font-size:11px;border-radius:7px;padding:8px 10px;line-height:1.6;margin:6px 0;background:#edf3e5;color:#6a825f}.design-study-targets .target-exceeds{background:#f6eade;color:#a2784c}.design-study-targets .target-unknown{background:#f0f2eb;color:#8d967f}
.design-save-snapshot{display:block;width:100%;padding:12px;border:1px dashed #a9bd9a;background:#eef4e6;border-radius:9px;font-size:12px;color:#638455;margin:13px 0}.design-comparison-list{display:grid;gap:9px}.design-snapshot{border:1px solid #e0e7d7;background:#f4f7ef;border-radius:10px;padding:12px}.design-snapshot.active{border-color:#aa95bd;background:#f3eff8}.design-snapshot-head{display:flex;gap:8px;align-items:center}.design-snapshot-head strong{font-size:12px;flex:1;overflow-wrap:anywhere}.design-snapshot-head small{font-size:10px;color:#9aa78d}.design-snapshot-actions{display:flex;gap:8px;margin-top:10px}.design-snapshot-actions button{font-size:10px;background:#fff;border:1px solid #e2e6dc;border-radius:6px;padding:6px 8px;min-height:30px}.design-snapshot-actions button:last-child{margin-left:auto;color:#a6917b;background:transparent;border-color:transparent}
.design-comparison-empty{font-size:12px;text-align:center;padding:24px 12px;color:#a0ae94;border:1px solid #e5eadd;border-radius:8px;line-height:1.8}.design-comparison-table{overflow-x:auto;margin:15px 0}.design-comparison-table:empty{display:none}.design-comparison-table table{width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums}.design-comparison-table th{text-align:left;font-weight:400;color:#8a9b7b}.design-comparison-table th,.design-comparison-table td{padding:9px 5px;border-bottom:1px solid #e1e7d8}.design-comparison-table tr:first-child th{font-weight:600;background:#eff4e8}.design-comparison-table td{color:#56714b;white-space:nowrap}.design-reference-compare{width:100%;font-size:11px;padding:10px;border:1px solid #e1d7e9;background:#f5f1f8;border-radius:7px;color:#9b81ae}
.design-inspector-foot{padding:12px 18px;display:grid;grid-template-columns:1fr;gap:8px;border-top:1px solid #dde6d4;background:#f8faf4;flex-shrink:0}.design-primary{width:100%;background:#38634e;color:#fff;border:1px solid #38634e;border-radius:9px;font-size:12px;font-weight:500;padding:12px 10px;min-height:40px}.design-look{font-size:11px;color:#709066;padding:6px 0;min-height:30px;text-align:center}.design-file-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 15px}.design-file-actions button{font-size:11px;padding:7px 0;color:#859875}
.design-message{bottom:156px;max-width:min(560px,90%);border-radius:9px;font-size:12px;line-height:1.7;padding:12px 16px;background:#294c3ded;box-shadow:0 8px 25px #294c3d20;pointer-events:none}
.design-reference-dialog{max-height:88vh;overflow:auto;width:min(680px,calc(100vw - 32px));font-size:13px;line-height:1.8}.design-reference-dialog>p{color:#718365;margin:10px 0 18px}.design-reference-dialog h2{font-size:22px}.design-reference-dialog h3{font-size:15px}.design-reference-dialog>details summary{font-size:12px;cursor:pointer;padding:10px 0}.design-export-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.design-export-options button{display:flex;flex-direction:column;text-align:left;padding:15px;border:1px solid #dae5d2;border-radius:10px;background:#f2f7ed;gap:6px}.design-export-options strong{font-size:13px;color:#4d6f43;font-weight:500}.design-export-options span{font-size:11px;color:#94a585}.design-export-text{height:180px;font-size:11px;line-height:1.5;resize:vertical;margin:5px 0 8px}.design-copy{font-size:12px;padding:8px 0;text-decoration:underline;color:#6c895c}.design-export-status{font-size:12px;color:#6d8f5a;line-height:1.7}.design-export-options button:hover{border-color:#8ea87c;background:#eaf2e2}
.design-workspace button:focus-visible,.design-workspace summary:focus-visible,.design-reference-dialog button:focus-visible{outline:2px solid #4c8252;outline-offset:2px}.design-workspace button:disabled{opacity:.42;cursor:not-allowed}
@media(min-width:1550px){.design-workspace{grid-template-columns:minmax(0,1fr) 400px}.design-inspector-top,.design-tower-picker,.design-inspector-tabs{padding-left:22px;padding-right:22px}.design-scroll{padding-left:22px;padding-right:22px}.design-live-metrics .design-metric strong{font-size:25px}}
@media(max-width:1050px){.design-workspace{inset:83px 14px 20px;grid-template-columns:minmax(0,1fr) 340px;gap:11px}.design-stage-title>span{display:none}.design-stage-title strong{font-size:20px}.design-stage-head{min-height:83px;padding:15px}.design-stage-title small{font-size:8px}.design-tabs button{font-size:11px;padding:8px 10px}.design-live-metrics .design-metric{padding:3px 9px}.design-metric strong{font-size:18px}.design-metric small{font-size:10px}.design-selection-readout{gap:6px;padding:10px 13px}.design-selection-readout small{display:none}.design-stage-foot{padding:8px 11px}.design-plan-feedback{max-width:42%}.design-inspector-top{padding:13px 14px 9px}.design-tower-picker{padding:2px 14px 12px;gap:7px}.design-inspector-tabs{padding:0 14px}.design-scroll{padding:0 14px 14px}.design-inspector-foot{padding:10px 14px}.design-tower-select{padding:12px 10px;min-height:90px}.design-tower-select strong{font-size:12px}.design-place-controls{gap:12px}.design-stack-row{grid-template-columns:32px minmax(0,1fr) auto;gap:7px}.design-stack-block{width:30px}.design-stack-row small{font-size:9px}.design-stage.is-3d .design-3d-help{bottom:160px}}
@media(max-width:760px){.design-workspace{inset:76px 10px 18px;grid-template-columns:minmax(0,1fr) 300px;gap:8px}.design-stage-head{align-items:flex-start;flex-direction:column;gap:9px;min-height:auto;padding:12px}.design-stage-title small{display:none}.design-stage-title strong{font-size:18px}.design-tabs{width:100%}.design-tabs button{flex:1;min-height:31px;padding:7px}.design-view-tools{flex-wrap:wrap;padding:8px;gap:6px}.design-segment{flex:1}.design-segment button{font-size:10px;padding:6px;flex:1;min-height:29px}.design-zoom{width:100%;justify-content:center}.design-zoom button{height:30px}.design-plan-note{display:none}.design-live-metrics{grid-template-columns:1fr 1fr;padding:7px}.design-live-metrics .design-metric{min-height:44px;border:0;padding:5px 9px}.design-live-metrics .design-metric small{margin-bottom:3px;font-size:9px}.design-live-metrics .design-metric strong{font-size:18px}.design-stage-foot{flex-wrap:wrap;gap:6px}.design-plan-feedback{max-width:100%;width:100%;font-size:9px}.design-scale{margin-left:auto}.design-selection-readout{font-size:10px}.design-selection-readout strong{font-size:11px;width:100%}.design-selection-readout span{font-size:10px}.design-stage.is-3d .design-3d-help{bottom:220px;left:8px;padding:9px;max-width:95%}.design-3d-help p{font-size:10px}.design-camera-turn button{font-size:10px;padding:6px;min-height:30px}.design-place-controls{grid-template-columns:108px minmax(0,1fr);gap:8px}.design-nudge-pad{grid-template-columns:repeat(3,33px);grid-template-rows:repeat(3,32px)}.design-tower-picker{padding-left:10px;padding-right:10px}.design-scroll{padding-left:12px;padding-right:12px}.design-stack-row{padding:7px}.design-stack-row span{font-size:11px}.design-inspector-tabs{padding:0 10px}.design-field{font-size:11px}.design-fields{gap:10px 8px}}
@media(max-width:580px){.design-workspace{inset:65px 8px 10px;grid-template-columns:1fr;grid-template-rows:minmax(250px,43%) minmax(0,1fr);gap:8px}.design-stage,.design-inspector{border-radius:12px}.design-stage-head{flex-direction:row;align-items:center;padding:9px 12px;min-height:46px}.design-stage-title strong{font-size:16px}.design-tabs{width:auto}.design-tabs button{font-size:10px;min-height:29px;padding:7px 10px}.design-view-tools{padding:6px 9px;flex-wrap:nowrap}.design-segment{flex:0 1 auto}.design-zoom{width:auto;gap:2px}.design-zoom button{height:28px;min-width:28px;font-size:10px}.design-zoom button:nth-child(2){padding:0 6px}.design-plan-wrap{min-height:100px}.design-compass{bottom:8px;right:12px}.design-compass b{font-size:21px}.design-selection-readout{min-height:31px;padding:7px 11px;gap:8px}.design-selection-readout strong{width:auto;font-size:10px}.design-selection-readout span{font-size:9px}.design-live-metrics{grid-template-columns:repeat(4,minmax(0,1fr));padding:5px 4px}.design-live-metrics .design-metric{padding:2px 6px;min-height:39px}.design-live-metrics .design-metric small{font-size:8px;white-space:nowrap}.design-live-metrics .design-metric strong{font-size:15px}.design-live-metrics .design-metric span{font-size:8px;margin-left:2px}.design-stage-foot{min-height:25px;padding:5px 10px;flex-wrap:nowrap}.design-legend{font-size:8px}.design-plan-feedback{width:auto;max-width:42%;font-size:8px}.design-scale b{font-size:8px}.design-overlay-tag{top:7px;left:8px;padding:4px 7px;font-size:9px}.design-overlay-tag button{width:20px;height:20px;font-size:16px}.design-inspector-top{padding:9px 12px 6px}.design-inspector-kicker{font-size:9px}.design-save-state{font-size:9px}.design-title-row{margin-top:2px}.design-title-row input{font-size:14px;height:29px}.design-history button{height:28px;width:28px;font-size:16px}.design-tower-picker{padding:1px 12px 8px;gap:7px;max-height:148px}.design-tower-select{display:grid;grid-template-columns:18px minmax(0,1fr);padding:8px;min-height:54px;gap:3px}.design-tower-code{grid-row:1/3;align-self:center;font-size:12px}.design-tower-select strong{font-size:11px;margin:0;padding-right:22px}.design-tower-select small{font-size:9px;grid-column:2}.design-tower-lock{font-size:8px;padding:3px;right:4px;top:3px;min-height:24px}.design-inspector-tabs{padding:0 12px}.design-inspector-tabs button{font-size:11px;min-height:34px}.design-scroll{padding:0 12px 12px}.design-section{padding:12px 0}.design-section-head{margin-bottom:8px}.design-section h3{font-size:12px}.design-inspector-foot{padding:8px 12px;grid-template-columns:1fr 1.2fr;gap:8px;align-items:center}.design-primary{min-height:36px;font-size:10px;padding:9px 7px}.design-look{font-size:10px;min-height:32px}.design-field{font-size:12px}.design-input-wrap{height:39px}.design-input-wrap input{font-size:15px}.design-body-note{font-size:11px}.design-place-controls{grid-template-columns:118px minmax(0,1fr);max-width:330px;margin:10px auto 14px}.design-nudge-pad{grid-template-columns:repeat(3,36px);grid-template-rows:repeat(3,33px)}.design-professional>summary,.design-checks>summary,.design-more-actions>summary{padding:13px 0;font-size:12px}.design-message{bottom:95px;font-size:11px;padding:10px 12px}.design-stage.is-3d .design-3d-help{bottom:105px;max-width:220px}.design-stage.is-3d .design-3d-help p{display:none}.design-camera-turn{margin:0}.design-export-options button{padding:12px}.design-export-options strong{font-size:12px}.design-export-options span{font-size:10px}.design-reference-dialog h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){.design-workspace *{transition:none!important}}
/* Keep the dimensions above the fold; open the full stack only while assembling. */
.design-composition{padding-bottom:9px}.design-composition .design-section-head{margin-bottom:9px}
#design-part-select{width:100%;height:39px;padding:0 10px;border:1px solid #ceddc5;border-radius:8px;color:#4a6d42;background:#eef5e7;font-size:12px;text-overflow:ellipsis}
.design-stack-details>summary{font-size:11px;color:#8a9e7c;padding:11px 0 3px;cursor:pointer}.design-stack-details[open]>summary{padding-bottom:12px}
.design-stack-details .design-tree{padding-top:0}.design-stack-details .design-add-parts{margin-top:4px}
.design-align-towers{width:100%;min-height:34px;padding:7px;font-size:11px;color:#809775;border:1px solid #dfe8d5;border-radius:7px;margin:-4px 0 12px;background:#f3f7ec}
@media(max-width:580px){.design-workspace{grid-template-rows:minmax(290px,48%) minmax(0,1fr)}.design-live-metrics{display:none}.design-stage.is-3d .design-3d-help{bottom:65px}}

/* The solid model is the primary workspace. Its transparent window frames the
   live city canvas; all editing reads the same metre-based design model. */
.design-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.design-tabs svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.design-tabs button[data-view="3d"].active{background:#315f4d;color:#fff;box-shadow:0 2px 7px #21453220}
.design-3d-viewport{position:relative;flex:1;min-height:130px;pointer-events:none;outline:none}
.design-3d-viewport:focus-visible{box-shadow:inset 0 0 0 2px #426d5260;border-radius:8px}
.design-3d-badge{position:absolute;left:14px;top:12px;border:1px solid #ffffffa3;border-radius:6px;background:#f7fbf1dd;padding:6px 9px;color:#42664f;font-size:10px;letter-spacing:.5px;pointer-events:none}
.design-3d-unavailable{margin:0;padding:9px 16px;background:#f3ecd9;border-bottom:1px solid #e4dbc3;color:#8d7752;font-size:11px;line-height:1.7;flex-shrink:0}
.design-stage.is-3d .design-stage-head{min-height:75px;padding:13px 20px;flex-shrink:0}
.design-stage.is-3d .design-selection-readout{margin-top:0;min-height:38px;padding:9px 18px;flex-shrink:0}
.design-stage.is-3d .design-selection-readout small{display:none}
.design-stage.is-3d .design-live-metrics{padding:8px;flex-shrink:0}
.design-stage.is-3d .design-live-metrics .design-metric{min-height:43px;padding-top:0;padding-bottom:0}
.design-stage.is-3d .design-live-metrics .design-metric small{margin-bottom:4px}
.design-stage.is-3d .design-stage-foot{margin-top:0;flex-shrink:0}
.design-stage.is-3d .design-3d-help{position:static;left:auto;bottom:auto;max-width:none;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:8px 16px;border:0;border-top:1px solid #dce5d6;border-radius:0;background:#f8faf4ed;flex-shrink:0}
.design-stage.is-3d .design-3d-help p{font-size:10px;line-height:1.7;margin:0;color:#78917c}
.design-3d-help strong{display:block;font-size:11px;color:#41674e;font-weight:500}
.design-3d-help p span{display:block}
.design-stage.is-3d .design-camera-turn{margin:0;gap:5px;flex-shrink:0}
.design-stage.is-3d .design-camera-turn button{font-size:11px;min-height:32px;padding:6px 10px}
@media(max-width:760px){.design-stage.is-3d .design-stage-head{padding:10px 12px;min-height:0}.design-stage.is-3d .design-3d-help{padding:7px 9px;gap:6px;flex-wrap:wrap}.design-stage.is-3d .design-3d-help p span{display:none}.design-stage.is-3d .design-camera-turn button{font-size:10px;padding:5px 8px;min-height:29px}.design-stage.is-3d .design-live-metrics .design-metric{min-height:36px}.design-tabs svg{width:14px;height:14px}}
@media(max-width:580px){.design-stage.is-3d .design-stage-head{min-height:46px;padding:9px 12px}.design-3d-viewport{min-height:80px}.design-stage.is-3d .design-3d-help{flex-wrap:nowrap}.design-stage.is-3d .design-3d-help p{display:block}.design-stage.is-3d .design-selection-readout{min-height:31px;padding:7px 11px}.design-3d-badge{left:9px;top:8px;font-size:9px;padding:5px 7px}.design-tabs button{gap:4px}.design-3d-unavailable{font-size:10px;padding:7px 10px}}

/* Always-visible design recovery and drawing entry, kept outside the scrolling
   parameter panels so the map retains its height on smaller screens. */
.design-start-actions{padding:0 18px 12px;flex-shrink:0;background:#f8faf7}
.design-start-buttons{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.design-start-buttons button{display:inline-flex;align-items:center;justify-content:center;gap:4px;flex:1 1 auto;min-height:35px;padding:7px 10px;border:1px solid #cfdccb;border-radius:8px;background:#f0f5ec;color:#48694a;font-size:11px;white-space:nowrap}
.design-start-buttons button>span{font-size:16px;line-height:1}
.design-start-buttons .design-drawing-import{background:#38634e;border-color:#38634e;color:#fff}
.design-start-buttons .design-reset-undo{flex:0 1 auto;background:#fff;border-color:#e0d7c5;color:#88713f}
.design-initial-label{font-size:10px;line-height:1.6;color:#87967e;margin:6px 0 0;overflow-wrap:anywhere}
.design-start-buttons button:hover{filter:brightness(.97)}
@media(min-width:1550px){.design-start-actions{padding-left:22px;padding-right:22px}}
@media(max-width:1050px){.design-start-actions{padding-left:14px;padding-right:14px}}
@media(max-width:580px){.design-start-actions{padding:0 12px 8px}.design-start-buttons{gap:6px}.design-start-buttons button{min-height:31px;padding:5px 8px;font-size:10px}.design-initial-label{margin-top:4px;font-size:9px}}
