/* Image-guided workspace: one canvas, an optional library, and contextual actions. */
/* Stock and joints are occasional construction settings. Keep the phone's
 * selected-piece bar compact so it cannot cover the very floor being edited. */
@media(max-width:760px){
  .room-assembler .a-piece-controls:not(:has(.a-piece-more[open])) .a-piece-stock,
  .room-assembler .a-piece-controls:not(:has(.a-piece-more[open])) .a-piece-joints,
  .room-assembler .a-piece-controls:not(:has(.a-piece-more[open])) .a-piece-update-joints{display:none}
  .room-assembler .a-piece-controls:not(:has(.a-piece-more[open])):before{display:none!important}
  .room-assembler .a-piece-controls>.a-selection-badge{display:none}
  .room-assembler .a-piece-more[open]>div{top:132px}
}
.room-assembler .a-body{display:block;position:relative;min-height:0}.room-assembler .a-main{height:100%;width:100%}
.room-assembler .a-library{display:none;position:absolute;inset:0 auto 0 0;width:min(310px,88vw);z-index:25;border-right:1px solid #526c70;box-shadow:12px 0 35px #0008;background:#11242b}
.room-assembler.library-open .a-library{display:flex}.room-assembler #assemblyLibraryToggle,.room-assembler #assemblyLibraryClose{display:inline-flex}
.room-assembler .a-toolbar{overflow-x:auto;min-height:48px;gap:7px;scrollbar-width:thin}.room-assembler .a-toolbar>button,.a-levels{flex:none;white-space:nowrap}
.room-assembler .a-brand small{font-size:8px;letter-spacing:1.9px;color:#a2bbbd}
.room-assembler .a-piece-controls{position:absolute;top:14px;left:16px;z-index:9;display:flex;align-items:center;gap:7px;max-width:calc(100% - 32px);padding:7px;border-radius:11px;border:1px solid #45636a;background:#10272eed;box-shadow:0 4px 20px #0004;backdrop-filter:blur(12px)}
.room-assembler .a-piece-controls input,.room-assembler .a-piece-controls select{height:33px;font-size:11px;padding:5px 8px;background:#142e35;border-color:#3c5a61}
.room-assembler .a-piece-controls{border-color:#83ddd4;box-shadow:0 0 0 1px #65b8b34d,0 4px 20px #0005}.a-selection-badge{display:inline-flex;align-items:center;gap:5px;color:#b2f2e9;font-size:10px;font-weight:600;padding:0 5px;white-space:nowrap}.a-selection-badge:before{content:'';width:6px;height:6px;border-radius:50%;background:#83e5d8;box-shadow:0 0 0 3px #83e5d81a}
.room-assembler .a-piece-controls input.a-piece-name{width:175px;max-width:22vw;background:transparent;border-color:transparent;color:#e6eee8;font-weight:600}.room-assembler .a-piece-controls input.a-piece-name:hover,.room-assembler .a-piece-controls input.a-piece-name:focus{border-color:#5c8288}
.a-piece-size{display:flex;align-items:center;gap:6px;font-size:10px;color:#9ebebf}.a-piece-dimensions{font-size:11px;color:#c4d4d1;white-space:nowrap;padding:0 5px}
.a-piece-level{display:flex;align-items:center}.room-assembler .a-piece-level button{height:33px;padding:3px 9px;border-radius:6px;color:#a6ddda}.room-assembler .a-piece-level select{border:0;background:transparent;padding:0 3px;max-width:90px}
.a-piece-more{position:relative}.a-piece-more summary{cursor:pointer;padding:4px 9px;list-style:none;letter-spacing:1px}.a-piece-more summary::-webkit-details-marker{display:none}.a-piece-more>div{position:absolute;right:0;top:36px;width:250px;padding:13px;border:1px solid #5b767b;border-radius:10px;background:#142b32;box-shadow:0 9px 30px #0008;display:flex;flex-direction:column;gap:8px}.a-piece-more label{display:flex;flex-direction:column;gap:5px;color:#a8c7c8;font-size:11px}.a-piece-more button{text-align:left}
.room-assembler .a-plan-status{top:83px;max-width:calc(100% - 35px)}.room-assembler.is-editing .stage-heading,.room-assembler.is-editing #roomAssemblyEditBar{display:none!important}
.room-assembler .a-editor-host .stage .a-piece-controls{top:14px}.room-assembler .a-editor-host .room-size-badge{display:none}
.room-assembler .rg-new-deck{display:flex;flex-direction:column;gap:9px}.room-assembler .rg-fitted-options{grid-column:1/-1;border-top:1px solid #35525a;padding-top:8px;color:#a6c4c4;font-size:11px}.rg-fitted-options summary{cursor:pointer;padding:4px}.rg-fitted-options>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:14px}
.room-assembler .a-header-actions #assemblyBackToRooms{display:none}
.room-assembler .a-piece-stock{display:flex;align-items:center;gap:6px;color:#b9cfcc;font-size:10px}
.room-assembler .a-piece-stock select{max-width:220px}
.room-assembler .a-piece-joints{display:flex;align-items:center;gap:6px;color:#b9cfcc;font-size:10px}
.room-assembler .a-piece-joints select{max-width:190px}
.room-assembler .a-piece-update-joints{font-size:10px;white-space:nowrap}
.room-assembler .a-piece-controls:has(.a-joint-note){flex-wrap:wrap}
.room-assembler .a-joint-note{order:9;flex-basis:100%;max-width:620px;font-size:10px;line-height:1.4;color:#d7c59b;padding:0 5px}
@media(min-width:761px) and (max-width:1350px){.room-assembler .a-piece-controls:has(.a-piece-joints){flex-wrap:wrap}}
@media(max-width:760px){.room-assembler .a-piece-joints{order:6;flex-basis:100%;padding:1px 3px}.room-assembler .a-piece-joints select{flex:1;max-width:none}.room-assembler .a-joint-note{display:none}}
.room-assembler .a-header-actions #assemblyReview{white-space:nowrap}
body[data-room-studio] .a-editor-host .room-stock-label{display:none!important}
@media(min-width:761px) and (max-width:1180px){.room-assembler #assemblyName{width:15vw}.room-assembler .a-header-actions{gap:5px}.room-assembler .a-header-actions button{padding:7px 9px;font-size:11px}}
@media(min-width:761px) and (max-width:980px){.room-assembler .a-piece-controls{flex-wrap:wrap}.room-assembler .a-plan-status{top:112px}}
@media(max-width:760px){.room-assembler .a-header-actions{flex-wrap:wrap}.room-assembler .a-header-actions #assemblyLayout{max-width:80px}.room-assembler .a-header-actions #assemblyReview{flex:1;font-size:10px;padding:7px 6px}.room-assembler .a-piece-stock{order:5;flex-basis:100%;padding:1px 3px}.room-assembler .a-piece-stock select{flex:1;max-width:none}.room-assembler .a-piece-controls{max-width:min(540px,calc(100% - 16px))}}
@media(max-width:760px){body[data-room-studio] .a-editor-host .floor-dock{flex-basis:35dvh!important;height:35dvh!important}body[data-room-studio] .selection-led-dock.finish-settings-open #finishEditor:not([hidden]){bottom:calc(35dvh + 6px);max-height:50dvh}body[data-room-studio] .selection-led-dock .asset-cards{align-items:flex-start}body[data-room-studio] .selection-led-dock .asset-card{height:118px;min-height:118px}.room-assembler .a-editor-host .asset-card img,.room-assembler .a-editor-host .asset-card .swatch{height:68px}}
@media(max-width:760px){.room-assembler .a-piece-controls:has(.a-piece-joints):before{content:'';order:4;flex-basis:100%;height:0}.room-assembler .a-piece-stock,.room-assembler .a-piece-joints{flex:1 1 calc(50% - 8px);min-width:0;flex-direction:column;align-items:stretch;gap:3px;padding:1px 3px}.room-assembler .a-piece-stock>span,.room-assembler .a-piece-joints>span{font-size:9px}.room-assembler .a-piece-stock select,.room-assembler .a-piece-joints select{width:100%;max-width:none;min-width:0}}
@media(max-width:760px){.room-assembler .a-piece-update-joints{order:7;flex-basis:100%;font-size:10px;min-height:30px}}
@media(max-width:760px){.room-assembler .a-main{grid-template-rows:48px minmax(150px,1fr) auto}.room-assembler .a-toolbar{padding:5px 8px}.room-assembler .a-toolbar .a-check,.room-assembler #assemblyExtent{display:none}.room-assembler .a-piece-controls{left:8px;top:8px;padding:5px;gap:4px;max-width:calc(100% - 16px);flex-wrap:wrap}.room-assembler .a-piece-controls input.a-piece-name{max-width:115px;width:115px}.room-assembler .a-piece-level button{padding:2px 6px}.room-assembler .a-piece-controls input,.room-assembler .a-piece-controls select{font-size:10px;height:30px}.room-assembler .a-piece-size{font-size:0;gap:0}.room-assembler .a-piece-more summary{padding:4px}.room-assembler .a-piece-level select{max-width:70px}.room-assembler .a-plan-status{display:none}.room-assembler .a-editor-host .stage .a-piece-controls{top:8px}.room-assembler .a-brand small{font-size:7px}.rg-fitted-options>div{grid-template-columns:1fr}.room-assembler .a-header-actions{justify-content:flex-end}.room-assembler .a-header-actions select{margin-right:auto}}
.room-assembler .a-main{grid-template-rows:auto minmax(150px,1fr) auto}
.room-assembler.is-editing .a-main{grid-template-rows:auto minmax(0,1fr)}
.a-top-controls{min-width:0}
.a-grid-notice{display:flex;align-items:center;gap:14px;padding:7px 15px;background:#352e21;border-bottom:1px solid #806f4c;color:#eed9af;font-size:12px}
.a-grid-notice[hidden]{display:none}
.a-grid-notice>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}
.a-grid-notice strong{font-size:12px}.a-grid-notice span{color:#dfcdab}
.room-assembler .a-grid-notice button{margin-left:auto;flex:none;min-height:32px;border-color:#887749;color:#f4deb3;background:#473b26;padding:5px 10px;font-size:12px}
@media(max-width:760px){.a-grid-notice{padding:6px 8px;gap:8px;font-size:11px}.a-grid-notice>div{display:block}.a-grid-notice strong,.a-grid-notice span{display:block}.room-assembler .a-grid-notice button{font-size:11px}}

/* Keep selection and interaction guidance in the workspace chrome, outside
   both the arrangement canvas and the surface editor's drawing stage. */
.room-assembler .a-top-controls{position:relative;z-index:10}
.room-assembler .a-notice{z-index:30}
.room-assembler .a-context-bar{display:flex;align-items:center;gap:12px;min-height:38px;padding:4px 15px;border-bottom:1px solid #344b53;background:#11232a}
.room-assembler .a-context-bar:has(.a-piece-controls[hidden]):has(.a-plan-status:empty){display:none}
.room-assembler .a-context-bar .a-piece-controls{position:relative;inset:auto;z-index:auto;flex:none;max-width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
.room-assembler .a-context-bar .a-piece-controls[hidden]{display:none!important}
.room-assembler .a-context-bar .a-plan-status{position:static;display:block;flex:1;min-width:0;max-width:none;margin:0;padding:0;border:0;background:transparent;color:#a7bec2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.room-assembler .a-context-bar .a-plan-status:empty{display:none}
.room-assembler .a-context-bar .a-piece-more>div{z-index:20;top:calc(100% + 7px)}
@media(max-width:1100px){.room-assembler .a-context-bar{flex-wrap:wrap;gap:3px 10px}.room-assembler .a-context-bar .a-plan-status{flex-basis:100%}}
@media(max-width:760px){.room-assembler .a-context-bar{padding:4px 8px}.room-assembler .a-context-bar .a-piece-controls{left:auto;top:auto;max-width:100%;gap:4px}.room-assembler .a-context-bar .a-plan-status{display:block;font-size:10px;white-space:normal;line-height:1.35}.room-assembler .a-context-bar .a-plan-status:empty{display:none}.room-assembler.is-inspecting .a-context-bar .a-piece-controls{display:flex!important}}

/* Piece controls live in their own dock tab; transient instructions only
   occupy a row while a tool needs them. */
.room-assembler .a-context-bar:has(.a-plan-status:empty){display:none}
.room-assembler .a-piece-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;min-height:170px;padding:15px 18px;overflow:auto}
.room-assembler .a-piece-settings[hidden]{display:none!important}
.room-assembler .a-piece-settings>section{min-width:0}
.room-assembler .a-piece-settings>section+section{border-left:1px solid #344b53;padding-left:18px}
.room-assembler .a-piece-settings label{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin:9px 0;color:#a7bec2;font-size:11px}
.room-assembler .a-piece-settings input,.room-assembler .a-piece-settings select{max-width:100%;font-size:12px}
.room-assembler .a-piece-settings .a-piece-level{gap:4px}
.room-assembler .a-piece-settings .a-piece-level select{border:1px solid #496169;background:#102229;padding:6px 9px}
.room-assembler .a-tools button[data-grid-warning="true"]{color:#f5d99f;border-color:#c49b57;background:#4a3924}
.room-assembler .a-tools button[data-grid-warning="true"]::after{content:'●';margin-left:6px;color:#f1c86e;font-size:9px}
.room-assembler .a-inline-grid-review{min-width:0;color:#e5d5b5}
.room-assembler .a-inline-grid-review .grid-check-groups{grid-template-columns:minmax(0,1fr);max-height:none}
@media(max-width:760px){.room-assembler .a-piece-settings{display:block;padding:12px}.room-assembler .a-piece-settings>section+section{border-left:0;border-top:1px solid #344b53;margin-top:12px;padding:12px 0 0}}
