.mi-design-selection { display: grid; width: 100%; gap: 10px; padding-top: 12px; border-top: 1px solid var(--mi-border); }
.mi-design-selection .mi-actions .form-select { width: auto; max-width: 100%; flex: 1; min-width: 80px; }
.mi-component-design { padding: 12px 0; margin-top: 12px; border-top: 1px solid var(--mi-border); }
.mi-component-design > .mi-actions { margin-bottom: 10px; }
.mi-component[data-design-selected=true] { border-left: 3px solid #347761; padding-left: 12px; }
.mi-assembly-tabs { display: flex; gap: 4px; align-items: center; padding: 6px; background: #f4f6f5; border-bottom: 1px solid var(--mi-border); }
.mi-assembly-tabs [aria-selected=true] { background: #dcece4; border-color: #6b9d83; color: #174f36; }
.mi-assembly-stage { display: flex; flex-direction: column; min-width: 0; height: min(74svh,760px); min-height: 360px; position: relative; background: #e8edeb; }
.mi-assembly-tools { display: flex; flex-wrap: wrap; gap: 4px; padding: 6px; align-items: center; background: #f6f8f7; border-bottom: 1px solid var(--mi-border); flex-shrink: 0; }
.mi-assembly-render { position: relative; flex: 1; min-height: 160px; width: 100%; overflow: hidden; touch-action: none; }
.mi-assembly-render canvas { display: block; width: 100%; height: 100%; touch-action: none; }
.mi-assembly-status { display: block; padding: 7px 12px; font-size: 12px; color: #355844; background: #f6f8f7; }
.mi-assembly-notices { max-height: 100px; overflow: auto; padding: 0 12px; background: #fff8e8; font-size: 12px; color: #755416; }
.mi-assembly-notices:empty { display: none; }
.mi-assembly-consent { padding: 6px 12px; margin: 0; max-width: none; background: #f6f8f7; flex-shrink: 0; }
.mi-assembly-notices p { margin: 7px 0; overflow-wrap: anywhere; }
.mi-view-3d > .mi-toolbar { display: none; }
.mi-workbench:is(:fullscreen,.mi-expanded) .mi-assembly-stage { min-height: 0; height: auto; flex: 1; }
@media (any-pointer:coarse) {
  .mi-component-design .mi-icon,.mi-assembly-tools .mi-icon { width: 44px; height: 44px; flex-basis: 44px; }
  .mi-component-design :is(input,select),.mi-assembly-tabs .mi-command,.mi-assembly-tools .mi-command { min-height: 44px; font-size: 16px; }
}
@media (max-width:767px) {
  .mi-assembly-stage { height: 62svh; }
  .mi-component-design .mi-component-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
