/* Structune Hub V17.7.4.481 — Site Setout lifecycle and workspace cleanup. */

html.site-setout-first-paint,
html.site-setout-first-paint body,
html body.v17-ar-site-setout-constrained{
  width:100%;
  height:100%;
  overflow:hidden!important;
  background:#0B1723!important;
}

/* Keep direct-route and active-route ownership deterministic. Detached tools
   and portals belong to other Hub pages and must never flash over Site Setout. */
html.site-setout-first-paint #content>.view:not(#view-ar-site-setout),
html.site-setout-first-paint #arToolsFab,
html.site-setout-first-paint #arToolsDock,
html.site-setout-first-paint #arToolMessage,
html.site-setout-first-paint #labelsPrintModal,
html.site-setout-first-paint #labelsPrintStage,
html.site-setout-first-paint #arMarkerModal,
html.site-setout-first-paint #productionPasteModal,
html.site-setout-first-paint #productionConfirmModal,
body.v17-ar-site-setout-constrained #content>.view:not(#view-ar-site-setout),
body.v17-ar-site-setout-constrained #arToolsFab,
body.v17-ar-site-setout-constrained #arToolsDock,
body.v17-ar-site-setout-constrained #arToolMessage,
body.v17-ar-site-setout-constrained #labelsPrintModal,
body.v17-ar-site-setout-constrained #labelsPrintStage,
body.v17-ar-site-setout-constrained #arMarkerModal,
body.v17-ar-site-setout-constrained #productionPasteModal,
body.v17-ar-site-setout-constrained #productionConfirmModal{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* The title-free shell keeps the IFC source state as the first useful control.
   It is authored directly now instead of relying on post-load DOM rewriting. */
body.v17-ar-site-setout-constrained #view-ar-site-setout>.setout-source-strip{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  width:100%!important;
  min-width:0!important;
  margin:0 0 10px!important;
  padding:0!important;
  background:#0B1723!important;
}
body.v17-ar-site-setout-constrained .setout-source-pill{
  max-width:100%!important;
  color:#9db5c7;
  background:#102333!important;
}

/* Preserve the established four-boundary workspace. Only the route surface,
   its drawer and explicitly scrollable inner regions may scroll. */
html[data-structune-shell="v432"] body.v432-shell-geometry.v17-ar-site-setout-constrained #view-ar-site-setout{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  background:#0B1723!important;
}
html[data-structune-shell="v432"] body.v432-shell-geometry.v17-ar-site-setout-constrained :is(.setout-layout,.setout-main){
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  background:#0B1723!important;
}
html[data-structune-shell="v432"] body.v432-shell-geometry.v17-ar-site-setout-constrained .setout-context,
html[data-structune-shell="v432"] body.v432-shell-geometry.v17-ar-site-setout-constrained .setout-context section,
html[data-structune-shell="v432"] body.v432-shell-geometry.v17-ar-site-setout-constrained .setout-context-fields{
  background:#0B1723!important;
}
html[data-structune-shell="v432"] body.v432-shell-geometry.v17-ar-site-setout-constrained .setout-context{
  top:var(--v432-header-h,48px)!important;
  bottom:var(--v432-footer-h,48px)!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
}
html[data-structune-shell="v432"] body.v432-shell-geometry.v17-ar-site-setout-constrained .setout-points-table-wrap{
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior:contain!important;
}

/* Tablet AR is an inner Site Setout mode; keep its camera/model stage inside
   the same shell area and leave its lifecycle controls reachable. */
body.v17-ar-site-setout-constrained.setout-ar-active #view-ar-site-setout{
  overflow:hidden!important;
}
body.v17-ar-site-setout-constrained.setout-ar-active .setout-tablet-panel,
body.v17-ar-site-setout-constrained.setout-ar-active .setout-ar-stage{
  max-width:100%!important;
  max-height:100%!important;
  box-sizing:border-box!important;
}

@media screen and (min-width:1201px){
  html[data-structune-shell="v432"] body.v432-shell-geometry.v17-ar-site-setout-constrained .setout-context{
    width:264.207px!important;
    min-width:264.207px!important;
    max-width:264.207px!important;
  }
}
