/* One compact strip; overflow scrolls horizontally instead of adding rows. */
#view-toolbar{z-index:12;box-sizing:border-box;display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;width:max-content;max-width:calc(100% - 16px);padding:5px;gap:4px}
.view-tools-header{display:flex;flex:0 0 auto}
#view-toolbar .view-tools-handle{width:25px;min-width:25px;padding:7px 3px!important;cursor:grab;touch-action:none;user-select:none;background:#eef3f9}
#view-toolbar .view-tools-handle:active{cursor:grabbing}
#view-toolbar .view-tools-content{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:7px;min-width:0;overflow-x:auto;scrollbar-width:thin}
#view-toolbar .view-tools-content[hidden]{display:none!important}
#view-toolbar .view-buttons,#view-toolbar .measurement-actions{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;flex:0 0 auto;gap:4px;width:auto}
#view-toolbar .measurement-actions{padding-left:7px;border-left:1px solid #dce4ef}
#view-toolbar .measurement-actions>button{flex:0 0 auto;width:auto!important}
#view-toolbar button{font-size:11px!important;padding:7px 8px!important;white-space:nowrap;flex-shrink:0}
#view-toolbar>button{width:27px;padding:7px 3px!important;font-size:17px!important;line-height:17px}
.view-tools-more{flex:0 0 auto}.view-tools-more>summary{list-style:none;cursor:pointer;font-weight:bold;font-size:19px;padding:1px 7px;color:#37506c;line-height:30px}.view-tools-more>summary::-webkit-details-marker{display:none}
.view-tools-options{position:absolute;right:0;bottom:calc(100% + 8px);max-width:calc(100vw - 32px);width:max-content;min-width:190px;padding:10px;box-sizing:border-box;background:#fff;border:1px solid #cbd7e6;border-radius:8px;box-shadow:0 4px 18px #22334c25;font-size:12px}
.view-tools-options>label{display:block;padding:8px 0}.view-tools-options>button{width:100%;text-align:left}
#view-toolbar .direct-length-controls{position:absolute;left:0;bottom:calc(100% + 8px);width:260px;max-width:calc(100vw - 30px);box-sizing:border-box;box-shadow:0 4px 18px #22334c25}
#view-toolbar button:focus-visible,.view-tools-more>summary:focus-visible{outline:2px solid #235dc4;outline-offset:2px}
#view-toolbar.tools-collapsed{width:max-content}
.decor-control-group{border:1px solid #d8e1ec;border-radius:9px;margin:0 0 14px;padding:12px;background:#fff}
#property-panel .decor-control-group>h4{margin:0 0 12px;padding:0 0 8px;font-size:15px;color:#243b55}
.decor-control-group p{font-size:12px;line-height:1.65;color:#60738e}
.wall-global-settings{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #d8e1ec}
.wall-global-settings>strong,.wall-selected-settings>strong{display:block;font-size:13px;margin-bottom:10px}
#decorPanel #wallDoorEditor,#decorPanel #wallWindowPanel{border:0;margin:0;padding:0}
#decorPanel #wallDoorEditor>strong,#decorPanel #wallWindowPanel>strong{display:none}
#decorPanel #wallSpacingPanel{padding:10px!important}
#decorPanel .structure-selection{margin-top:12px}
#decorPanel .structure-selection .rotation-block{margin-bottom:12px}


.space-prop-controls{padding:12px;margin:14px 0;background:#eef5ff;border:1px solid #cadcf5;border-radius:8px}.space-prop-controls[hidden]{display:none!important}.space-prop-controls strong{display:block;font-size:14px}.space-prop-controls p,.space-prop-controls small{display:block;font-size:12px;line-height:1.6;color:#5c6f89}.space-prop-dims{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.space-prop-dims label{min-width:0;font-size:11px}.space-prop-dims input{width:100%;box-sizing:border-box;margin-top:5px;padding:7px 4px;border:1px solid #bdcde1;border-radius:5px}.space-prop-controls>label{display:block;margin-top:12px;font-size:12px}
#quickGapInput{position:fixed;z-index:60;width:218px!important;box-sizing:border-box;padding:10px!important;border:1px solid #b8ccea;border-radius:9px;background:#fff;box-shadow:0 4px 16px #1e385027;pointer-events:auto}#quickGapInput strong{font-size:12px!important;margin-bottom:4px!important}#quickGapInput span,#quickGapInput small{font-size:11px!important;line-height:1.5;margin-bottom:6px!important}#quickGapInput input{width:132px!important;padding:7px!important}#quickGapInput button{width:100%;padding:7px;font-size:12px}#quickGapInput[hidden]{display:none!important}

/* CAD cursor input: outside the toolbar's clipping/scrolling area. */
.cad-cursor-input{position:fixed;z-index:10040;width:180px;padding:10px;background:white;border:1px solid #8caee5;border-radius:8px;box-shadow:0 5px 18px #18365425;display:grid;gap:6px;color:#183654}
.cad-cursor-input[hidden]{display:none!important}.cad-cursor-input strong{font-size:13px}.cad-cursor-input input{box-sizing:border-box;width:100%;font-size:17px;padding:7px;border:1px solid #8caee5;border-radius:4px}.cad-cursor-input small{font-size:11px;color:#61738c}
#directLengthControls.cad-measure-input{position:fixed!important;bottom:auto!important;right:auto!important;z-index:10040;margin:0!important;max-width:240px}
#directLengthControls.cad-measure-input{display:flex;flex-direction:column;gap:5px;width:220px;box-sizing:border-box;padding:10px;background:#fff;border:1px solid #8caee5;border-radius:8px;box-shadow:0 5px 18px #18365425;font-size:12px;color:#183654}
#directLengthControls.cad-measure-input[hidden]{display:none!important}
#directLengthControls.cad-measure-input input{box-sizing:border-box;width:100%;padding:7px;border:1px solid #8caee5;border-radius:4px;font-size:17px}
.plan-underlay-controls{padding:12px;margin-bottom:14px;border:1px solid #cbdcf3;border-radius:9px;background:#f1f6ff;display:grid;gap:9px}.plan-underlay-controls>strong{font-size:15px;color:#183654}.plan-underlay-controls button{padding:9px!important;white-space:normal!important}.plan-underlay-controls .plan-import{background:#245ed1;color:#fff;border:0;border-radius:6px}.plan-underlay-controls small{font-size:12px;line-height:1.6;color:#60738e}.plan-saved{display:grid;gap:10px}.plan-saved[hidden],.plan-underlay-controls input[hidden]{display:none!important}.plan-name{font-size:12px;overflow-wrap:anywhere;margin:0}.plan-saved label{font-size:12px}.plan-saved .plan-visible{width:auto!important}.plan-saved .plan-opacity{width:100%}.plan-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.plan-actions .plan-wall{background:#245ed1;color:#fff;border:0;border-radius:6px}
.plan-calibration .modal-box{width:min(1000px,94vw);max-width:1000px;max-height:92vh;overflow:auto;padding:20px;box-sizing:border-box}.plan-calibration[hidden]{display:none!important}.plan-calibration p{font-size:14px;line-height:1.65}.plan-stage{position:relative;width:fit-content;max-width:100%;margin:0 auto;background:#fff;border:1px solid #d7e1ed}.plan-stage img{display:block;width:auto;max-width:100%;max-height:48vh;cursor:crosshair;user-select:none}.plan-stage svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.plan-step{color:#245ed1;font-weight:600}.plan-error{color:#b42318}.plan-calibration-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.plan-calibration-fields label{display:grid;gap:7px;font-size:13px}.plan-calibration-fields input,.plan-calibration-fields select{width:100%;box-sizing:border-box;padding:9px;font-size:15px}.plan-calibration .modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.plan-calibration .modal-actions button{padding:10px 14px}
.plan-position-bar{position:absolute;left:50%;top:45px;transform:translateX(-50%);z-index:40;max-width:85%;padding:12px 16px;background:#173c6c;color:white;border-radius:8px;box-shadow:0 4px 16px #18365430;font-size:14px;pointer-events:none}.plan-position-bar[hidden]{display:none!important}@media(max-width:600px){.plan-calibration-fields{grid-template-columns:1fr}.plan-calibration .modal-box{padding:14px}.plan-stage img{max-height:40vh}}
/* Override the legacy global 460px !important modal width. Keep apply visible. */
.plan-calibration.modal .modal-box{width:min(1280px,96vw)!important;max-width:1280px;max-height:96vh;height:94vh;display:flex;flex-direction:column;overflow:hidden;padding:18px;gap:8px}
.plan-calibration .modal-box>h3,.plan-calibration .modal-box>p{margin:0;flex:0 0 auto}.plan-calibration .modal-box>p{font-size:13px;line-height:1.45}.plan-zoom-tools{display:flex;align-items:center;gap:8px;flex:0 0 auto}.plan-zoom-tools button{padding:6px 12px}.plan-zoom-label{font-size:12px;color:#61738c}
.plan-image-viewport{flex:1 1 auto;min-height:140px;overflow:auto;background:#eaf0f6;border:1px solid #ccd8e6;padding:8px;box-sizing:border-box;overscroll-behavior:contain}.plan-image-viewport .plan-stage{max-width:none;position:relative;flex:none;margin:0 auto}.plan-image-viewport .plan-stage img{width:100%;height:100%;max-width:none;max-height:none;display:block}.plan-calibration-fields{flex:0 0 auto;gap:12px}.plan-calibration .modal-actions{flex:0 0 auto;margin-top:0!important}.plan-calibration-fields label{gap:4px}.plan-calibration-fields input,.plan-calibration-fields select{padding:7px}
@media(max-width:600px){.plan-calibration.modal .modal-box{padding:12px;gap:6px}.plan-calibration-fields{grid-template-columns:1fr 1fr;gap:8px}.plan-calibration-fields label{font-size:11px}.plan-calibration-fields input,.plan-calibration-fields select{font-size:13px}.plan-calibration .modal-actions button{font-size:12px;padding:8px}.plan-image-viewport{min-height:120px}}
.plan-calibration .modal-box{position:relative}.plan-ruler-loupe{position:absolute;right:24px;top:110px;width:180px;height:180px;background:#fff;border:2px solid #2563eb;border-radius:8px;box-shadow:0 4px 18px #163a6050;pointer-events:none;z-index:5}.plan-ruler-loupe[hidden]{display:none!important}.plan-stage svg .ruler-handle{pointer-events:all;cursor:grab}.plan-stage svg .ruler-bar{pointer-events:stroke;cursor:move;stroke-opacity:.5}.plan-stage svg:focus{outline:2px solid #f59e0b;outline-offset:2px}
.room-draft-actions{display:grid;gap:7px;margin-bottom:12px}.room-draft-actions button:first-child{background:#235dc8;color:#fff;border:0;border-radius:6px;padding:11px}.outline-draw-panel{position:absolute;right:12px;top:50px;z-index:45;width:250px;max-width:calc(100% - 24px);box-sizing:border-box;padding:12px;background:white;border:1px solid #bdd0e8;border-radius:9px;box-shadow:0 4px 18px #18365428;font-size:12px;display:grid;gap:8px}.outline-draw-panel[hidden]{display:none!important}.outline-draw-panel p{margin:0;font-size:12px;line-height:1.6;color:#58718f}.outline-draw-panel button{padding:8px;font-size:12px}.outline-draw-panel label{display:grid;gap:4px}.outline-draw-panel input{width:100%;box-sizing:border-box;padding:7px;border:1px solid #bdd0e8;border-radius:4px}
