/* Editor: one panel with steps, full-width lists and the selected element form. */
.model-workspace .viewer-side>h2{font-size:20px;margin-bottom:5px}.model-workspace .viewer-side>p{font-size:11px;margin-bottom:13px}.model-workspace [data-model-panel]>label{font-size:10px;gap:5px}.model-workspace [data-model-panel]>label select{min-height:34px;padding:6px 9px;font-size:11px}.model-workspace [data-model-panel] .margin-top{margin-top:12px}.model-workspace [data-model-panel] .actions>button,.model-workspace [data-model-panel] .stack>button{min-height:32px;font-size:11px;padding:6px 9px}.model-workspace [data-model-panel] h3{font-size:13px}.compact-selection{display:grid;grid-template-columns:47px minmax(0,1fr) 31px;align-items:center;gap:9px;border:1px solid #dfe8f3;background:linear-gradient(135deg,#fff,#eef5ff);border-radius:10px;padding:10px;margin-top:13px}.compact-selection .swatch{width:47px;height:51px;border-radius:7px}.compact-selection strong{font-size:12px;display:block}.compact-selection small{font-size:9px;display:block;margin:3px 0;color:#7488a2}.compact-selection span{font-size:10px;color:#3b526d}.compact-selection button{min-height:30px;padding:5px;color:#247fe2;border-color:#cde1f9}.compact-selection svg{width:18px;height:18px}.compact-selection-icon{display:grid;place-items:center}.model-selection-prompt{display:flex;align-items:center;gap:9px;padding:12px;margin:12px 0;font-size:11px;background:#edf4fd;border-radius:9px}.model-selection-prompt svg{flex:none}.furniture-gizmo-spatial button:hover,.furniture-gizmo-spatial button:focus-visible{background:linear-gradient(145deg,#619adb,#2d65a0)!important;color:white;box-shadow:0 0 0 4px #91caff45,0 4px 16px #07182950}
.viewer-top .floating [data-action=interior]{display:inline-flex;gap:5px;align-items:center;font-size:10px}.viewer-top .floating [data-action=interior] svg{width:17px;height:17px}.viewer-top .floating button:hover,.viewer-tools.floating button:hover{background:#294762;color:#fff;border-color:#698bad}
.furniture-gizmo.furniture-gizmo-spatial{display:block;pointer-events:none;min-width:85px;min-height:75px}.furniture-gizmo-spatial button{position:absolute;width:39px;height:39px;display:grid;place-items:center;transform:translate(-50%,-50%);background:linear-gradient(145deg,#497aaee8,#224b77e8);border:1px solid #a9d9ff;box-shadow:0 0 0 4px #83bbf51a,0 4px 16px #07182950;color:#fff}.furniture-gizmo-spatial button svg{width:22px;height:22px}.furniture-gizmo-spatial [data-action=up]{left:50%;top:0}.furniture-gizmo-spatial [data-action=up] svg{transform:rotate(-90deg)}.furniture-gizmo-spatial [data-action=down]{left:50%;top:100%}.furniture-gizmo-spatial [data-action=down] svg{transform:rotate(90deg)}.furniture-gizmo-spatial [data-action=left]{left:0;top:50%}.furniture-gizmo-spatial [data-action=left] svg{transform:rotate(180deg)}.furniture-gizmo-spatial [data-action=right]{left:100%;top:50%}.furniture-gizmo-spatial [data-action=turn]{left:0;top:100%}.furniture-gizmo-spatial [data-action=custom]{left:100%;top:100%;background:#213647ed}
.editor-calculated label{max-width:135px!important}.editor-calculated select{width:55px;min-width:45px;padding:2px!important;background:transparent!important;border:0!important;font-weight:600}.editor-calculated label input{max-width:65px}.editor-inspector .editor-hint{font-size:9px!important;line-height:1.4}
.editor-workspace{grid-template-columns:minmax(0,1fr) minmax(465px,35%)}
.editor-workspace .viewer-side{display:flex;flex-direction:column;padding:18px 17px 0;overflow:hidden;border:1px solid #dce4ed;border-right:0;box-shadow:-8px 0 35px #0a17201a;background:#fafcff}
.editor-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:10px}.editor-heading h2{font-size:20px;letter-spacing:-.6px;margin:4px 0}.editor-heading p{font-size:11px;margin:0;color:#78859b}.editor-kicker{font-size:8px;letter-spacing:1.8px;color:#718196;font-weight:700}.editor-access{display:inline-flex;align-items:center;gap:4px;font-size:9px;border:1px solid #f1d7c8;border-radius:7px;padding:6px;background:#fff4ec;color:#ab654a}.editor-access svg{width:13px;height:13px}
.editor-actions{display:flex;flex-wrap:wrap;gap:6px;padding:0 0 11px;border-bottom:1px solid #e2e9f1}.editor-actions button{font-size:10px;padding:6px 9px;min-height:29px;border-color:#dee7f2;color:#52637d;background:white;display:flex;gap:5px;align-items:center}.editor-actions svg{width:14px;height:14px}
.editor-tree{padding-right:9px;border-right:1px solid #e5eaf2;overflow:auto;scrollbar-width:thin}.editor-search{display:flex;position:relative;align-items:center}.editor-search svg{position:absolute;left:8px;width:13px;color:#7186a4}.editor-search input{padding:6px 6px 6px 26px;min-height:30px;font-size:10px;border-radius:6px}.editor-tree button{width:100%;border:0;background:transparent;display:flex;gap:5px;align-items:center;text-align:left;font-size:10px;min-height:28px;padding:6px 4px;border-radius:5px}.editor-tree button>span:not(.dot){overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.editor-tree button.active{color:#1072e8;background:#ddebff}.editor-tree button:hover{background:#e8f2ff}
.editor-inspector{min-width:0;overflow:auto;padding:0 3px 16px 0;scrollbar-width:thin}.editor-inspector .empty{padding:25px 10px;border:0;background:linear-gradient(145deg,#f4f8ff,transparent)}.editor-inspector .empty h2{font-size:16px}.editor-inspector .empty p{font-size:12px}.editor-inspector .inspector-form{gap:10px}.editor-inspector .inspector-form label{font-size:10px;color:#394a66;gap:4px}.editor-inspector .inspector-form input,.editor-inspector .inspector-form select{min-height:29px;padding:5px 7px;font-size:11px;border-radius:6px}.editor-identity{display:grid;gap:7px}.editor-identity>label{display:grid;grid-template-columns:74px minmax(0,1fr);align-items:center}
.editor-section-title{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:6px}.editor-section-title h3{font-size:12px;margin:0!important;line-height:1.4}.editor-section-title h3 small{font-size:9px;display:inline-block;font-weight:normal;color:#7787a0}.editor-section-title button{font-size:9px;padding:4px 6px;min-height:25px;color:#2781f5;border-color:#cce2fc;white-space:nowrap}.editor-dimensions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.editor-dimensions>label:last-child:nth-child(3){grid-column:1/-1}.editor-calculated{background:#edf2f8;border-radius:8px;display:flex;align-items:center;padding:10px 8px;gap:8px;color:#6c7e96}.editor-calculated>svg{width:16px;height:16px;flex:none}.editor-calculated>span{font-size:11px;color:#43546c;flex:1}.editor-calculated small{font-size:8px;display:block;margin-top:4px;max-width:130px;color:#8190a4}.editor-calculated label{display:flex;align-items:center!important;gap:3px;max-width:107px;color:#162a4b!important;font-weight:700}.editor-calculated input{width:78px!important;background:transparent!important;border:0!important;font-size:12px!important;padding:0!important;text-align:right;min-width:0;appearance:textfield}.editor-calculated input::-webkit-inner-spin-button{appearance:none}.editor-calculated b{white-space:nowrap;font-size:11px}.editor-hint{font-size:10px!important;line-height:1.5;margin:0!important;color:#7a8ca5!important}.editor-face{display:grid;grid-template-columns:17px minmax(0,1fr);gap:7px;padding:7px 0;border-bottom:1px solid #e7ecf4}.editor-face.current{border-radius:6px;background:#edf6ff;box-shadow:inset 2px 0 #3186ef;padding-left:5px}.editor-face>input{accent-color:#187bff;width:14px;height:14px;min-height:14px!important;margin:7px 0 0}.editor-face-name{display:flex;gap:5px}.editor-face-name input{width:100%;min-width:0;background:transparent}.editor-face-name button{padding:3px 6px;min-height:27px;background:transparent;color:#3b5476}.editor-face-name button svg{width:14px;height:14px}.editor-face-material{display:flex;align-items:center;gap:6px;margin-top:5px}.editor-face-material button{padding:5px 7px;min-height:27px;font-size:10px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;background:#fff}.editor-face-material small{font-size:9px;color:#6f809b;white-space:nowrap}.editor-inactive-faces{margin-top:8px;border-radius:6px;background:#edf2f8}.editor-inactive-faces>summary{font-size:10px;padding:8px;cursor:pointer;color:#526683}.editor-inactive-faces>.editor-face{padding:8px}.editor-face.inactive .editor-face-content{opacity:.7}.editor-face-total{display:flex;justify-content:space-between;font-size:11px;color:#233b5c;padding:6px 0}.editor-inspector textarea{min-height:58px;font-size:11px;padding:8px;resize:vertical;border-radius:6px}.editor-global-footer{background:#fafcff;padding:13px 0 10px;border-top:1px solid #e3eaf2;margin-top:8px}.editor-global-footer .actions{display:flex;gap:8px}.editor-global-footer button{flex:1;display:flex;justify-content:center;align-items:center;gap:7px;min-height:36px;font-size:11px}.editor-global-footer svg{width:16px;height:16px}.editor-global-footer>small{font-size:9px;display:block;text-align:center;margin-top:7px;color:#7c8ba3}.editor-global-footer [data-editor-save-state]{font-size:9px;color:#34876e;display:block;text-align:center;margin-top:4px}.editor-group-intro{display:flex;align-items:center;gap:8px;font-size:10px;color:#467fc1;padding:8px;border-radius:8px;background:#e8f3ff}.editor-group-members{display:grid;max-height:200px;overflow:auto;gap:5px;font-size:11px;margin:12px 0}.editor-group-picker{max-height:300px;overflow:auto;border:1px solid #dfe8f3;border-radius:10px;padding:6px;margin:12px 0}.editor-group-picker label{display:flex;align-items:center;gap:8px;padding:6px;font-size:12px}.editor-group-picker input{width:15px;min-height:15px}.editor-group-picker small{margin-left:auto;color:#899ab0}.editor-group-picker label:hover{background:#edf6ff}
.selection-status{display:flex;gap:5px;align-items:center;margin:5px 0 0 14px;color:#e0e9f6;font-size:10px}.selection-status i{width:7px;height:7px;border-radius:50%}.measure-target{width:20px;height:20px;position:absolute;z-index:20;border:2px solid #ffc960;border-radius:50%;box-shadow:0 0 0 4px #1e293b90;transform:translate(-50%,-50%);pointer-events:none}.measure-target:after{content:'';position:absolute;inset:5px;border-radius:50%;background:#fff}.measure-label,.measure-live{position:absolute;z-index:19;pointer-events:none;background:#152c3deb;color:#a8eaff;padding:5px 8px;border:1px solid #62badb88;border-radius:6px;font-size:11px;transform:translate(-50%,-120%);white-space:nowrap}.measure-live{color:#ffe2a7;border-color:#e8b65e99}.model-canvas.measuring{cursor:crosshair}.environment-preview{height:210px;background:radial-gradient(at 40% 30%,#526278,#182633);border-radius:12px;overflow:hidden;margin:12px 0;display:grid;place-items:center;color:#dae5f3}.environment-preview img{width:100%;height:100%;object-fit:cover}
.cut-overlay{position:absolute;inset:0;z-index:10;pointer-events:none}.cut-overlay>*{pointer-events:auto}.cut-caption{position:absolute;top:88px;left:18px;display:flex;align-items:center;gap:13px;padding:9px 12px}.cut-caption strong,.cut-caption label{display:flex;align-items:center;gap:6px;font-size:11px}.cut-caption input{width:14px;min-height:14px;accent-color:#2c94ff}.cut-caption button{padding:3px;min-height:26px}.cut-caption svg{width:17px;height:17px}.cut-overlay input[type=range]{accent-color:#208afa;background:transparent;cursor:grab;min-height:28px;padding:0}.cut-height{position:absolute;right:26px;top:165px;bottom:235px;display:flex;align-items:center;gap:7px;color:#d4eaff;min-height:130px;font-size:10px}.cut-height>span{writing-mode:vertical-rl;transform:rotate(180deg)}.cut-height input{writing-mode:vertical-lr;direction:rtl;height:100%;width:22px}.cut-width{position:absolute;left:50%;bottom:220px;transform:translateX(-50%);width:min(420px,calc(100% - 110px));background:#132940ee;border:1px solid #568bba;border-radius:11px;padding:12px 14px;color:#d9edff;box-shadow:0 8px 32px #071b2f3d}.cut-width>div{display:flex;align-items:center;gap:12px;font-size:11px}.cut-width select{background:#1c3854;color:#e8f4ff;border-color:#42688c;font-size:10px;min-height:29px;padding:4px}.cut-width label{display:flex;align-items:center;gap:5px;font-size:10px}.cut-width input[type=checkbox]{width:13px;min-height:13px;accent-color:#218aff}.cut-width b{margin-left:auto;font-size:11px}.cut-width>input{width:100%;margin:8px 0 3px}.cut-width>button{display:block;margin:auto;border:0;background:transparent;color:#b2d6ff;min-height:25px;font-size:10px}.measure-context{position:absolute;z-index:21;top:87px;left:18px;max-width:calc(100% - 36px);width:330px;padding:12px 14px}.measure-heading{display:flex;justify-content:space-between;align-items:center}.measure-heading strong{display:flex;align-items:center;gap:7px;font-size:12px}.measure-heading button{min-height:24px;padding:2px 5px}.measure-context svg{width:16px;height:16px}.measure-modes{display:flex;gap:5px;margin:8px 0}.measure-modes button{min-height:28px;font-size:11px;padding:4px 8px}.measure-context p{font-size:11px;color:#cfe7ff;line-height:1.45;margin:6px 0}.measure-context small{font-size:9px;color:#93aec9}.measure-target{border-color:#58b4ff;box-shadow:0 0 0 4px #1e293b90,0 0 20px #42a9ff60}.measure-live{color:#d6f0ff;border-color:#74bcf388;white-space:normal;min-width:180px;max-width:290px}.measure-live small{display:block;margin-top:3px;font-size:9px}.model-canvas.measure-invalid{cursor:not-allowed}.walk-height button{display:grid;place-items:center}.walk-height svg{width:22px;height:22px}.editor-physical-material{background:#eef5fb;border-radius:8px;padding:9px;display:grid;gap:6px}.editor-physical-material>small{font-size:10px;font-weight:700;color:#344d6d}.editor-physical-material button{font-size:11px;min-height:31px;text-align:left;padding:6px}.render-stage{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 45%,#334252,#17212b);color:#d3e5f7}.render-stage>img{width:100%;height:100%;object-fit:contain}.render-stage>div{text-align:center;max-width:340px;padding:30px}.render-stage svg{width:56px;height:56px;color:#7ca2c3;margin-bottom:16px}.render-stage h3{color:#e7f1ff}.render-stage p{font-size:12px;color:#b3c9dd}
@media(max-width:760px){.cut-caption{top:65px;left:10px;right:10px;justify-content:space-between;gap:4px;padding:7px}.cut-caption strong,.cut-caption label{font-size:10px}.cut-height{right:12px;top:126px;bottom:175px}.cut-width{bottom:95px;width:calc(100% - 46px);padding:8px 10px}.cut-width>div{gap:6px}.cut-width>button{font-size:9px}.cut-width select{max-width:125px}.measure-context{top:64px;left:10px;max-width:calc(100% - 20px);padding:9px 12px}.measure-context small{font-size:8px}.measure-live{min-width:145px;max-width:215px;font-size:10px}}
.furniture-heading{display:flex;align-items:center;gap:12px;margin-bottom:15px}.furniture-heading .swatch{width:72px;height:76px;flex:none;display:grid;place-items:center;background-size:contain;background-repeat:no-repeat;background-color:#eef2f5}.furniture-heading .swatch svg{width:34px;height:34px;color:#7a8ba0}.furniture-heading h2{font-size:19px;margin:0 0 5px}.furniture-heading p{font-size:11px;margin:0}.furniture-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.furniture-options button{font-size:11px;min-height:40px;padding:8px}.furniture-options [data-action=remove]{grid-column:1/-1;min-height:32px}.model-bottom-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.model-bottom-actions button{min-height:36px;font-size:10px;padding:7px;display:flex;align-items:center;justify-content:center;gap:5px}.model-bottom-actions button svg{width:15px;height:15px}.model-bottom-actions [data-action=save-proposal]{grid-column:1/-1}.model-workspace [data-model-panel]>.total-bar~small{font-size:10px;line-height:1.4;display:block}
@media(max-width:760px){.viewer-top{gap:7px}.viewer-top>.floating{display:flex;align-items:center;gap:2px;min-width:0}.viewer-top [data-view-context]{flex-wrap:nowrap}.viewer-top [data-view-context] button{font-size:10px;padding:5px 7px;white-space:nowrap}.viewer-top>.floating:last-child{flex-shrink:0}.viewer-top .floating [data-action=interior]{font-size:9px;padding:5px 3px}.viewer-top .floating [data-action=interior] svg{width:14px;height:14px}.viewer-top .floating [data-action=fit]{padding:5px;min-width:28px}.viewer-top [data-action=fit] svg{width:18px;height:18px}}
@media(min-width:1700px){.editor-workspace{grid-template-columns:minmax(0,1fr) 520px}}
@media(max-width:1150px) and (min-width:761px){.editor-workspace{grid-template-columns:minmax(0,1fr) 440px}.editor-workspace .viewer-side{padding-left:12px;padding-right:10px}.editor-access{display:none}}
@media(max-width:760px){.editor-workspace{display:flex;height:auto}.editor-workspace .model-area{height:54dvh;min-height:330px}.editor-workspace .viewer-side{overflow:visible;display:block;padding:16px 13px;border-radius:16px 16px 0 0;margin:0}.editor-inspector{max-height:68dvh}.editor-global-footer{position:sticky;bottom:0;z-index:6;padding-bottom:12px}.editor-identity>label,.editor-face-material{flex-wrap:wrap}.editor-face-material small{margin-left:auto}.editor-heading h2{font-size:19px}.editor-calculated{gap:4px;padding:8px 5px}.editor-calculated>svg{display:none}.editor-calculated input{width:58px!important}}
.model-area:has(.cut-overlay) .viewer-samples{visibility:hidden;pointer-events:none}

/* Editor workflow: one working surface at a time, preserving the project shell. */
.editor-workspace .viewer-side.editor-flow{display:flex;flex-direction:column;overflow:hidden;padding:18px 18px 0;min-height:0}
.editor-flow [hidden]{display:none!important}
.editor-flow .editor-heading{flex:none;padding-bottom:12px}.editor-flow .editor-heading h2{font-size:20px}.editor-flow .editor-heading p{font-size:12px}
.editor-flow-steps{display:grid;grid-template-columns:1fr 1fr;gap:6px;flex:none;padding-bottom:12px;border-bottom:1px solid #dfe7ef}
.editor-flow-steps button{display:flex;align-items:center;gap:8px;text-align:left;min-height:44px;padding:8px;font-size:12px;line-height:1.3;border-radius:9px;background:#fff;border:1px solid #dfe7ef;color:#415570}
.editor-flow-steps button>span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#edf2f7;flex:none;font-size:12px}
.editor-flow-steps button[aria-current=step]{color:#1269d7;background:#edf5ff;border-color:#8abaff}.editor-flow-steps button[aria-current=step]>span{background:#176ee2;color:#fff}
.editor-flow-body{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;padding:16px 3px 12px 0;overscroll-behavior:contain}
.editor-flow-body h3{font-size:16px;line-height:1.4;margin:0 0 10px}.editor-flow-body h4{font-size:14px;margin:20px 0 8px}
.editor-flow .flow-intro{font-size:13px;line-height:1.6;color:#61748c;margin:10px 0 16px}.editor-flow .flow-note{font-size:12px;line-height:1.6;color:#526a82;padding:12px;border-radius:9px;background:#eef4f9;margin:14px 0}
.editor-flow .flow-checklist{font-size:13px;line-height:1.7;padding-left:22px;color:#415970}.editor-flow .flow-checklist li{margin:8px 0}
.editor-flow .editor-actions{border:0;gap:10px}.editor-flow .editor-actions button,.editor-flow .flow-tools button{font-size:13px;min-height:40px;padding:9px 12px}
.editor-flow .flow-tools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.editor-flow .flow-page-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.editor-flow .flow-page-title h3{font-size:15px}.editor-flow .flow-page-title .flow-tools{flex:none;margin:0}.editor-flow .flow-bulk .flow-tools{padding:0 12px 10px;margin:0}
.editor-flow .flow-switch{display:flex;gap:5px;padding:4px;background:#edf2f7;border-radius:10px;margin:12px 0 16px}.editor-flow .flow-switch button{flex:1;min-width:0;min-height:40px;padding:8px;font-size:12px;border:0;background:transparent;color:#506580;border-radius:8px}.editor-flow .flow-switch button[aria-pressed=true]{background:#fff;color:#1269d7;box-shadow:0 2px 6px #182d4512}
.editor-flow .editor-tree{overflow:visible;border:0;padding:0;max-height:none}.editor-flow .editor-search{position:sticky;top:0;background:#fafcff;z-index:2;padding-bottom:8px}.editor-flow .editor-search input{font-size:14px;min-height:44px;padding:10px 12px 10px 32px}.editor-flow .editor-search svg{width:17px;left:10px}.editor-flow .editor-tree button{font-size:13px;min-height:40px;padding:9px 12px;gap:8px}.editor-flow .editor-tree button>span:not(.dot){white-space:normal;overflow-wrap:anywhere}.editor-flow .editor-inspector{overflow:visible;max-height:none;padding:0}.editor-flow .editor-inspector .inspector-form{display:block}.editor-flow [data-flow-fields]{display:grid;gap:12px}.editor-flow .editor-identity{gap:12px}.editor-flow .editor-identity>label,.editor-flow .editor-inspector .inspector-form label{font-size:13px}.editor-flow .editor-inspector .inspector-form input,.editor-flow .editor-inspector .inspector-form select{font-size:14px;min-height:40px;padding:8px 10px}.editor-flow .editor-inspector textarea{font-size:14px;min-height:80px}.editor-flow .editor-inspector .editor-hint{font-size:12px!important;line-height:1.6}.editor-flow .editor-section-title h3{font-size:14px}.editor-flow .editor-face-material button{font-size:13px;min-height:40px}.editor-flow .editor-calculated small{font-size:11px;max-width:none}.editor-flow .editor-calculated>span{font-size:13px}.editor-flow .editor-calculated label{max-width:160px!important}.editor-flow .editor-calculated input{max-width:90px;width:90px!important}.editor-flow .editor-face-total{font-size:13px;gap:8px}.editor-flow .editor-face-focus{margin:0}.editor-flow .editor-face>input{min-height:18px!important;width:18px;height:18px}.editor-flow .flow-selection{font-size:14px;font-weight:600;overflow-wrap:anywhere;margin:12px 0}.editor-flow .flow-pick{font-size:12px;min-height:38px}
.editor-flow .flow-bulk,.editor-flow .flow-recovery{border:1px solid #dae5ef;border-radius:9px;margin:12px 0}.editor-flow .flow-bulk>summary,.editor-flow .flow-recovery>summary{font-size:13px;padding:12px;min-height:44px;cursor:pointer}.editor-flow .editor-recovery{padding:12px;flex-wrap:wrap}.editor-flow .bulk-toolbar{margin:0;border-radius:0 0 9px 9px}.editor-flow .bulk-toolbar .actions{flex-wrap:wrap}.editor-flow .bulk-toolbar button{font-size:12px;min-height:38px}.editor-flow .editor-recovery button{font-size:12px;min-height:38px}
.editor-flow .flow-review{margin:16px 0}.editor-flow .flow-review>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e3eaf1;font-size:13px}.editor-flow .flow-review dt{color:#52677f}.editor-flow .flow-review dd{font-size:17px;font-weight:600;margin:0}.editor-flow .editor-progress-reference{margin:18px 0}.editor-flow .editor-progress-reference label{font-size:13px}
.editor-flow .editor-global-footer{flex:none;margin-top:0;padding:10px 0 12px}.editor-flow .flow-paging{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.editor-flow .flow-paging button{flex:none;min-height:36px;padding:7px 11px;font-size:12px}.editor-flow .flow-paging span{font-size:11px;color:#718298}.editor-flow .editor-global-footer>.actions button{font-size:13px;min-height:42px}.editor-flow .editor-global-footer>small,.editor-flow .editor-global-footer [data-editor-save-state]{font-size:11px;line-height:1.4}
@media(max-width:760px){.editor-workspace .viewer-side.editor-flow{padding:14px 12px 0;min-height:630px;height:80dvh}.editor-flow .editor-heading h2{font-size:18px}.editor-flow .editor-heading p{font-size:11px}.editor-flow .editor-global-footer{position:static}.editor-flow .editor-inspector .inspector-form input,.editor-flow .editor-inspector .inspector-form select,.editor-flow .editor-search input{font-size:16px}.editor-flow .editor-tree button{min-height:44px}.editor-flow .editor-flow-body{min-height:280px}.editor-flow .editor-face-material{flex-wrap:wrap}.editor-flow .editor-face-material button{white-space:normal}.editor-flow .editor-flow-steps button{font-size:12px}.editor-flow .editor-inspector .editor-hint{font-size:12px!important}}
.editor-face-material .face-quantity{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:94px;max-width:120px}.editor-face-material .face-quantity input{width:100%;height:34px;text-align:right;font-size:13px}.face-quantity small{font-size:10px;white-space:nowrap}.face-quantity strong,.face-warning{color:#995515;font-size:12px}.face-warning{display:block;padding:8px 0}.editor-face-material{align-items:center}
.face-price-note{display:block;color:#73839a;font-size:10px;margin:5px 0 1px}
.editor-flow [data-editor-loading]{padding:10px;background:#eef5ff;border-radius:8px;font-size:12px}

.editor-face-focus{padding:12px;border:1px solid #bcd9fc;border-radius:10px;background:#f5f9ff;margin-bottom:14px}.editor-face-focus .editor-section-title{margin:0 0 8px;flex-wrap:wrap}.editor-face-focus .editor-section-title small{font-size:11px;color:#587798}.editor-face-focus .editor-face.current{padding:10px 4px;box-shadow:none;background:transparent;border:0}.editor-face-focus .editor-face-name input{font-weight:700;font-size:14px;min-height:40px}.editor-face-focus .editor-face-name button{min-width:36px;min-height:40px}.editor-other-faces{border-top:1px solid #d6e5f6;margin:8px 0}.editor-other-faces>summary{padding:12px 0;cursor:pointer;font-size:11px;color:#316ba7;min-height:44px}.editor-other-faces>.editor-face{padding:10px 2px}.editor-face-focus>.button,.editor-face-focus>button{margin:8px 0;min-height:36px}.selection-face-name{display:block;font-size:11px;font-weight:500;margin-top:4px;color:#b9ddff}.editor-face-focus .editor-face-total{gap:8px;flex-wrap:wrap}@media(max-width:760px){.editor-face-focus{padding:9px}.editor-face-focus .editor-face{grid-template-columns:22px minmax(0,1fr)}.editor-face-focus .editor-face>.ico-help-input-wrap{flex-wrap:wrap}.editor-face-focus .editor-face-name input{font-size:12px}.editor-face-focus .editor-face-material button{white-space:normal;min-height:40px}.editor-face-focus .face-quantity{min-width:0;width:100%;max-width:none}}

/* Unified layer directory: a single list or element form, with one scrolling body. */
.editor-flow .layer-scope>.actions{flex-wrap:nowrap;gap:8px}.editor-flow .layer-scope>.actions button{width:auto;flex:none}.editor-flow .layer-scope>.actions [data-action=layer-menu]{margin-left:auto;justify-content:center;width:36px;font-size:20px}.editor-flow .layer-scope>h3{margin:4px 0 6px}.editor-flow .layer-scope>.layer-permission{padding:7px 0;margin:5px 0}.editor-flow .layer-scope>[data-action=create-child]{width:auto;padding:5px 0}.editor-flow .layer-main-tools>button.primary,.editor-flow .layer-selection .actions>button.primary{background:var(--accent);color:white}.editor-flow .layer-selection-tools>button,.editor-flow .layer-history>button{width:auto}.editor-flow .layer-selection .actions{flex-wrap:wrap}.editor-flow .layer-selection .actions>button{width:auto;flex-basis:auto}.editor-flow .layer-element>button{padding:10px 4px}.editor-flow .layer-history button:disabled{display:none}
.editor-flow-steps{grid-template-columns:.75fr 1.2fr 1.25fr;gap:5px}.editor-flow-steps button{justify-content:center;text-align:center;padding:9px 5px}.editor-flow .editor-heading p{display:none}.editor-flow .editor-heading{padding-bottom:10px}.editor-flow .editor-global-footer>.actions{display:flex;gap:7px}.editor-flow .editor-global-footer button{flex:1;white-space:normal}.editor-flow .editor-global-footer>small{display:block;margin-top:6px}
.editor-flow .layer-main-tools,.editor-flow .layer-selection-tools,.editor-flow .layer-history{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 14px}.editor-flow .layer-main-tools button{flex:1;justify-content:center}.editor-flow .layer-row{display:flex;gap:5px;align-items:center;min-height:48px;border-bottom:1px solid #e7edf2}.editor-flow .layer-row input[type=checkbox]{width:18px;min-width:18px;height:18px;margin:0 4px;accent-color:#1475e8}.editor-flow .layer-row .layer-name{flex:1;min-width:0;justify-content:space-between;padding:9px 3px;text-align:left;background:transparent;border:0;font-weight:600}.editor-flow .layer-name small{font-size:11px;font-weight:400;color:#6a8195}.editor-flow .layer-row .layer-menu,.editor-flow .layer-row .layer-expand{width:30px;min-width:30px;padding:4px;justify-content:center;border:0;background:transparent;font-size:21px}.editor-flow .layer-spacer{width:12px;flex:none}.editor-flow .layer-children{margin-left:13px;padding-left:10px;border-left:1px solid #d9e5ef}.editor-flow .layer-row button:hover{background:#edf5ff}.editor-flow .layer-element{display:flex;gap:9px;align-items:center;border-bottom:1px solid #e2eaf2;min-height:58px}.editor-flow .layer-element>input{flex:none;width:18px;height:18px}.editor-flow .layer-element>button{display:flex;align-items:center;flex:1;min-width:0;border:0;background:transparent;text-align:left}.editor-flow .layer-element button>span{flex:1}.editor-flow .layer-element small{display:block;font-size:11px;color:#6f8295;margin-top:4px}.editor-flow .layer-element svg{width:15px;flex:none}.editor-flow .layer-history{border-top:1px solid #e0e8ef;padding-top:12px;margin-top:20px}.editor-flow .layer-history button{font-size:11px;min-height:36px}
.editor-flow .layer-scope{padding:14px;border:1px solid #cadef4;background:#f2f7ff;border-radius:12px;margin:8px 0 12px}.editor-flow .layer-scope h3{margin-top:12px;overflow-wrap:anywhere}.editor-flow .layer-scope>small{font-size:12px;color:#60788f}.editor-flow .layer-scope>.actions{display:flex;justify-content:space-between}.editor-flow .layer-scope>.actions button{background:transparent;border:0;padding:3px;font-size:12px}.editor-flow .layer-permission{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;font-size:13px;padding:12px 0;margin:6px 0}.editor-flow .layer-permission input[type=checkbox]{width:21px;height:21px;min-width:21px;margin:0;accent-color:#126ee5}.editor-flow .layer-permission>span{flex:1}.editor-flow .layer-selection{position:sticky;top:0;z-index:3;background:#e9f3ff;border:1px solid #aacdf5;border-radius:12px;padding:13px;margin:5px 0 12px}.editor-flow .layer-selection>strong,.editor-flow .layer-selection>small{display:block;margin-bottom:7px}.editor-flow .layer-selection .actions{display:flex;gap:8px}.editor-flow .layer-selection .actions button{flex:1;justify-content:center}.editor-flow .layer-selection .layer-permission{margin-bottom:0;padding-bottom:0}.editor-flow .layer-empty{font-size:13px;line-height:1.6;color:#657e91;padding:18px 4px}.editor-flow .flow-piece-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:15px}.editor-flow .flow-piece-heading strong{font-size:15px;overflow-wrap:anywhere}.editor-flow .flow-piece-heading button{font-size:11px;min-width:100px;min-height:40px}.editor-flow .layer-search-results>button{width:100%;margin-bottom:6px;text-align:left}
.viewer-layer-branch{margin:8px 0}.viewer-layer-branch summary{cursor:pointer;font-size:13px;padding:10px 2px}.viewer-layer-branch summary small{float:right;color:#90aabe}.viewer-layer-children{margin-left:12px;padding-left:9px;border-left:1px solid #607585}.layer-overlay .layer-list label{font-size:12px;min-height:40px;overflow-wrap:anywhere}.layer-overlay .layer-list label span{flex:1}
@media(max-width:760px){.editor-workspace .model-area{height:34dvh;min-height:240px}.editor-workspace .viewer-side.editor-flow{height:75dvh;min-height:540px}.editor-flow .editor-flow-body{min-height:0}.editor-flow .layer-row .layer-menu,.editor-flow .layer-row .layer-expand{width:36px;min-width:36px;min-height:44px}.editor-flow .layer-children{margin-left:6px;padding-left:6px}.editor-flow .flow-piece-heading{flex-wrap:wrap}.editor-flow .flow-switch button{font-size:11px;padding:6px}}
