/* One responsive frame for the project's engineering forms. */
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog){box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(1120px,calc(100vw - 24px));max-width:1120px;height:90dvh;max-height:90dvh;padding:28px;border:1px solid #d8e2ee;border-radius:18px;overflow-y:auto;scrollbar-gutter:stable}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog)::backdrop{background:#13284366;backdrop-filter:blur(3px)}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog)>form,
#workspaceEditorContent>form{padding:0;min-height:100%;display:flex;flex-direction:column}
#workspaceEditorContent{min-height:100%;display:flex;flex-direction:column}#workspaceEditorContent>form{flex:1}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) .dialog-heading{position:sticky;top:-28px;margin:0 0 20px;padding:16px 0;background:#fff;z-index:4;border-bottom:1px solid #e6edf5;flex-shrink:0}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) :is(.connection-actions,.dialog-footer){position:sticky;bottom:-28px;margin:auto 0 0;padding:16px 0;background:#fff;border-top:1px solid #e1e8ef;z-index:4;display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) :is(.connection-actions,.dialog-footer)>.button{height:44px;flex-shrink:0}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) :is(.connection-actions,.dialog-footer)>.primary{min-width:154px}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) :is(.connection-actions,.dialog-footer)>.secondary{min-width:84px}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) .dialog-footer>span{flex:1 1 auto;margin:0 auto 0 0}
:is(#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,.workspace-dialog.room-dialog) fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) :is(.form-grid,.project-edit-grid,.airside-branch){grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px 24px}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) .field{min-width:0;margin-top:0;line-height:1.5}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) .field :is(input:not([type=radio]):not([type=checkbox]),select){width:100%;height:44px;min-height:44px;padding:10px 12px;box-sizing:border-box}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) .field textarea{width:100%;min-width:0}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) .field>small{font-weight:400;line-height:1.5}
/* Seven room sections stay together, with status directly below them. */
.dialog-heading:has(.room-navigation-full){flex-wrap:wrap;gap:14px}
[data-space-navigation]:has(.room-navigation-full),.room-navigation-full{flex-basis:100%;width:100%;min-width:0}
.room-navigation-full .room-view-tabs{display:flex;justify-content:flex-start;flex-wrap:wrap;padding:0;gap:6px}
.room-navigation-full .room-view-tabs button{flex:1 1 auto;padding:9px 12px;text-align:center;min-height:38px}
.room-navigation-full .room-handoff-status{min-height:28px;margin:7px 0 0;max-width:none;width:100%;justify-content:flex-start}
.room-navigation-full .room-handoff-status[hidden]{display:flex!important;visibility:hidden}
.room-inspector-name{font-size:13px;color:#687e98;margin:8px 0 0;line-height:1.5}
.room-inspector-content{padding:0 0 24px}.room-results-summary:empty{display:none}
.room-child-values{white-space:normal;text-align:right;max-width:38%;line-height:1.6}
.room-child-values small{display:block;margin-top:4px}
.room-inspector .room-child-heading{padding-top:0}.room-inspector .room-child-list{gap:12px}
.room-inspector .room-child-row{min-height:84px}.room-inspector .room-child-row strong{color:#355779}
.airflow-live-dialog .dialog-footer>[data-flow-refresh]{min-width:182px}
@media(max-width:720px){
 :is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog){width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);padding:20px;border-radius:12px}
 :is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) .dialog-heading{top:-20px;padding:12px 0}
 :is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) :is(.connection-actions,.dialog-footer){bottom:-20px}
 :is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) .dialog-footer>span{display:none}
 .room-navigation-full .room-view-tabs button{flex:1 1 calc(25% - 6px);font-size:11px;padding:8px 6px}
}
@media(max-width:600px){
 :is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) :is(.form-grid,.project-edit-grid,.airside-branch){grid-template-columns:minmax(0,1fr)}
 .room-navigation-full .room-view-tabs button{flex-basis:calc(33.333% - 6px)}
 .room-child-row>span:first-child{flex-basis:70%}.room-child-values{max-width:none;text-align:left;flex-basis:100%;order:3}
 .airflow-live-dialog .dialog-footer>[data-flow-refresh]{width:100%;min-width:0}
}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) :is(.connection-actions,.dialog-footer)>.secondary{order:1}
:is(#projectDialog,#projectTextDialog,#systemEditDialog,#spaceEditDialog,#projectClimateDialog,#resultReviewDialog,#workspaceEditor,.workspace-dialog.room-dialog) :is(.connection-actions,.dialog-footer)>.primary{order:2}
.airflow-live-dialog .dialog-footer>[data-flow-refresh]{order:0}
:is(#projectTextDialog,#systemEditDialog,#spaceEditDialog) .project-edit-section>h3{margin-bottom:16px}
:is(#projectTextDialog,#systemEditDialog,#spaceEditDialog) .project-edit-section>.field{margin-bottom:18px}
:is(#projectTextDialog,#systemEditDialog,#spaceEditDialog) .project-edit-section>.project-edit-grid{margin-top:16px}
#projectClimateDialog .climate-form-season{display:grid;align-content:start;gap:18px}
#spaceEditDialog .room-navigation-full .room-handoff-status[hidden]{display:flex!important;visibility:hidden}
.room-navigation-full .room-view-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.room-navigation-full .room-view-tabs button{min-width:0}
.room-navigation-full .room-view-tabs button.active:disabled{opacity:1}
@media(max-width:900px){.room-navigation-full .room-view-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.room-navigation-full .room-view-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* Door connections are always oriented from the room currently being reviewed. */
.room-door-row{display:grid;grid-template-columns:minmax(110px,.75fr) minmax(0,1fr) 112px minmax(0,1fr) 18px;align-items:center;gap:16px;width:100%;padding:18px;border:1px solid #dce7f4;border-radius:10px;background:#fff;text-align:left;color:#58769e;min-width:0}
.room-door-row:hover{background:#f8fbff;border-color:#a7c1e5}
.room-door-row>span{min-width:0}
.room-door-reference,.room-door-node{display:grid;align-content:center;gap:6px;overflow-wrap:anywhere}
.room-door-reference>small,.room-door-node>small{font-size:10px;line-height:1.4;color:#7c91ac}
.room-door-reference>strong,.room-door-node>strong{font-size:13px;line-height:1.5;color:#355779}
.room-door-reference>span,.room-door-node>span{font-size:11px;line-height:1.5;color:#6e86a3}
.room-door-node{padding:12px;border-radius:8px;min-height:96px}
.room-door-current{background:#edf4fc;border:1px solid #dce8f7}
.room-door-current>small{color:#3b6b9e;font-weight:600}
.room-door-peer{border:1px solid transparent}
.room-door-flow{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}
.room-door-flow>strong{font-size:12px;line-height:1.5;color:#45698f;white-space:nowrap;font-variant-numeric:tabular-nums}
.room-door-flow>small{font-size:10px;line-height:1.4;color:#7a8fa9}
.room-door-flow .airflow-status{font-size:10px}
.room-door-edit .icon{width:16px;height:16px}
@media(max-width:800px){
 .room-door-row{grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr);gap:12px;padding:16px}
 .room-door-reference{grid-column:1/3;grid-row:1}
 .room-door-reference>small{display:none}
 .room-door-current{grid-column:1;grid-row:2}
 .room-door-flow{grid-column:2;grid-row:2}
 .room-door-peer{grid-column:3;grid-row:2}
 .room-door-edit{grid-column:3;grid-row:1;justify-self:end}
}
@media(max-width:480px){
 .room-door-row{grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);gap:6px;padding:12px}
 .room-door-node{padding:9px 7px;min-height:110px}
 .room-door-reference>strong,.room-door-node>strong{font-size:12px}
 .room-door-flow>strong{font-size:11px}
}

.space-scope-field{display:flex;align-items:center;gap:10px;color:var(--muted,#687887);font-size:12px;margin:0 0 12px}.space-scope-field select{font:inherit;color:inherit;background:transparent;border:1px solid #dce3e8;border-radius:6px;padding:5px 8px;max-width:100%}.space-scope-field select:focus{outline:2px solid #3e8793;outline-offset:2px}
