/* Single-record DataWindow fields nested in a wider Bootstrap grouping cell.
   v9 fits direct row children, but W/O Audit and Task Card EU render several
   adapted or native fields inside one col-md-12 (or a smaller grouping cell). At 16px the
   inner col-md-1/2 and its percentage-width editor can clip values. Keep the
   original group and field order; reserve space for each field within it.
   Search criteria, result grids, and the separately measured Defect layout
   remain outside these rules. */
body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)):has(> .emro-form-field > div[id^="dw_"][class*="col-md-"] :is(input.ui-inputfield, .ui-selectonemenu), > div[id^="dw_"][class*="col-md-"] :is(input.ui-inputfield, .ui-selectonemenu)) {
    display: flow-root;
    min-width: min(100%, 11rem);
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)):is(.col-md-1, .col-md-2):has(:where(input.ui-inputfield, .ui-selectonemenu)) {
    --emro-detail-nested-field-floor: 10rem;
    min-width: min(100%, var(--emro-detail-nested-field-floor)) !important;
    max-width: 100%;
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)):is(.col-md-1, .col-md-2):has(.ui-inputnumber) {
    --emro-detail-nested-field-floor: 7rem;
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)):is(.col-md-1, .col-md-2):has(.ui-spinner) {
    --emro-detail-nested-field-floor: 8rem;
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)):is(.col-md-1, .col-md-2):has(.ui-calendar) {
    --emro-detail-nested-field-floor: 11rem;
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)):is(.col-md-1, .col-md-2):has(.dw-calendar--datetime) {
    --emro-detail-nested-field-floor: 17rem;
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)):is(.col-md-1, .col-md-2):has(.dw-number--long) {
    --emro-detail-nested-field-floor: 12rem;
}

/* A wide nested cell can still contain a fractional-width editor. Fill the
   field cell, not its outer group; grouped controls keep separate budgets. */
body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)):not(:has(.ui-calendar, .ui-inputnumber, .ui-spinner)) > div :is(input.ui-inputfield, .ui-selectonemenu) {
    min-width: calc(100% - 2px) !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)) > div :is(.ui-calendar, .ui-inputnumber) {
    display: inline-block;
    min-width: calc(100% - 2px) !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)) > div .ui-inputnumber > input.ui-inputfield {
    min-width: calc(100% - 2px) !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)) > div .ui-calendar:has(> .ui-datepicker-trigger) {
    display: inline-flex;
    align-items: stretch;
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)) > div .ui-calendar:has(> .ui-datepicker-trigger) > input.ui-inputfield {
    flex: 1 1 0%;
    width: 0 !important;
    min-width: 0 !important;
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)) > div .ui-calendar:has(> .ui-datepicker-trigger) > .ui-datepicker-trigger {
    flex: 0 0 var(--emro-control-height);
}

body.emro-app-shell .emro-detail-field-scope
    :where(.row > div[class*="col-"] div[id^="dw_"][class*="col-md-"]:not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div, .emro-defect-form div)):has(input.ui-inputfield, .ui-selectonemenu) .ui-outputlabel {
    display: inline-block;
    max-width: 100%;
    overflow: visible !important;
    overflow-wrap: anywhere;
    white-space: normal !important;
    line-height: 1.25;
}

/* W/O Task Card EU keeps E/C, its picker, and SEQ in an authored flex row.
   The numeric field's safe width can exceed the remaining space; let these
   existing flex items wrap inside their Bootstrap grouping cell. */
body.emro-app-shell .emro-detail-field-scope
    .row:not(.emro-query-field-scope .row, .ui-datatable .row, .ui-datagrid .row, .ui-treetable .row, .ui-datalist .row)
    > div.col-md-5:has(> .col-md-8 .updateControl):has(> .emro-form-field) {
    flex-wrap: wrap !important;
    max-width: 100%;
}

/* A borderless p:panel inside a .row is only a partial-update target (W/O EU
   Site in .UpdSite, Customer in .tpw, and ~100 other names). As a box it
   shrink-wraps, so the field cell's col-md-* resolves against the panel and
   the editor collapses to a sliver. When the panel holds nothing but field
   cells, drop its boxes so those cells size against the row like their
   siblings. The element stays in the DOM, so the ajax update still finds it. */
body.emro-app-shell .emro-detail-field-scope
    .row > .ui-panel.panel-no-border:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel):not(:has(> .ui-panel-titlebar, > .ui-panel-content > :not([class*="col-"], .emro-form-field, script, input[type="hidden"]))),
body.emro-app-shell .emro-detail-field-scope
    .row > .ui-panel.panel-no-border:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel):not(:has(> .ui-panel-titlebar, > .ui-panel-content > :not([class*="col-"], .emro-form-field, script, input[type="hidden"]))) > .ui-panel-content {
    display: contents;
}

/* Engineering Effectivity and P/N hazardous-material update targets put
   editable fields directly in a panel content area, without a .row. Keep the
   named partial-update boundary while letting only its field cells fit. */
body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    > .ui-panel-content:has(> .emro-form-field > div[id^="dw_"] :is(input.ui-inputfield, .ui-selectonemenu), > div[id^="dw_"] :is(input.ui-inputfield, .ui-selectonemenu)) {
    display: flow-root;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div):is(.col-md-1, .col-md-2):has(:where(input.ui-inputfield, .ui-selectonemenu)) {
    --emro-detail-panel-field-floor: 10rem;
    min-width: min(100%, var(--emro-detail-panel-field-floor)) !important;
    max-width: 100%;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div):is(.col-md-1, .col-md-2):has(.ui-inputnumber) {
    --emro-detail-panel-field-floor: 7rem;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div):is(.col-md-1, .col-md-2):has(.ui-calendar) {
    --emro-detail-panel-field-floor: 11rem;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div):is(.col-md-1, .col-md-2):has(.dw-calendar--datetime) {
    --emro-detail-panel-field-floor: 17rem;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div):is(.col-md-1, .col-md-2):has(.dw-number--long) {
    --emro-detail-panel-field-floor: 12rem;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div):not(:has(.ui-calendar, .ui-inputnumber, .ui-spinner)) > div :is(input.ui-inputfield, .ui-selectonemenu) {
    min-width: calc(100% - 2px) !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div) > div :is(.ui-calendar, .ui-inputnumber) {
    display: inline-block;
    min-width: calc(100% - 2px) !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div) > div .ui-inputnumber > input.ui-inputfield {
    min-width: calc(100% - 2px) !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div) > div .ui-calendar:has(> .ui-datepicker-trigger) {
    display: inline-flex;
    align-items: stretch;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div) > div .ui-calendar:has(> .ui-datepicker-trigger) > input.ui-inputfield {
    flex: 1 1 0%;
    width: 0 !important;
    min-width: 0 !important;
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div) > div .ui-calendar:has(> .ui-datepicker-trigger) > .ui-datepicker-trigger {
    flex: 0 0 var(--emro-control-height);
}

body.emro-app-shell .emro-detail-field-scope
    :is(.updateScheduleAcDays, .updateScheduleRepeat, .updateActual, .updatePlan, .updateDate, .updateStatusEffecDesc, .Update_hazardous_material, .Update_health_safety, .Update_hazardous_substance).ui-panel:not(.ui-datatable .ui-panel, .ui-datagrid .ui-panel, .ui-treetable .ui-panel, .ui-datalist .ui-panel, .emro-query-field-scope .ui-panel)
    :is(.ui-panel-content > .emro-form-field > div[id^="dw_"], .ui-panel-content > div[id^="dw_"]):not(.ui-datatable div, .ui-datagrid div, .ui-treetable div, .ui-datalist div, .emro-query-field-scope div):has(input.ui-inputfield, .ui-selectonemenu) .ui-outputlabel {
    display: inline-block;
    max-width: 100%;
    overflow: visible !important;
    overflow-wrap: anywhere;
    white-space: normal !important;
    line-height: 1.25;
}

/* Engineering Control's Sub E/C uses an authored 180px inner wrapper even
   though its value can contain a 25-character control identifier. Reserve
   the width on the field cell so the following Company field wraps instead
   of sitting on top of the code. The wrapper's inline !important width wins
   the cascade, so its minimum must also follow the larger field cell. Leave
   short code fields and search/results views at their own widths. */
body.emro-app-shell .emro-detail-field-scope
    .row:not(.emro-query-field-scope .row, .ui-datatable .row, .ui-datagrid .row, .ui-treetable .row, .ui-datalist .row)
    > div[id^="dw_"][id$="_eo_sub"]:has(input.ui-inputfield) {
    float: none;
    min-width: min(100%, 15rem) !important;
    max-width: 100%;
}

body.emro-app-shell .emro-detail-field-scope
    .row:not(.emro-query-field-scope .row, .ui-datatable .row, .ui-datagrid .row, .ui-treetable .row, .ui-datalist .row)
    > div[id^="dw_"][id$="_eo_sub"] > div {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100%;
    box-sizing: border-box;
}

body.emro-app-shell .emro-detail-field-scope
    .row:not(.emro-query-field-scope .row, .ui-datatable .row, .ui-datagrid .row, .ui-treetable .row, .ui-datalist .row)
    > div[id^="dw_"][id$="_eo_sub"] > div input.ui-inputfield {
    width: calc(100% - 2px) !important;
    max-width: calc(100% - 2px) !important;
    box-sizing: border-box;
}

/* A marked native detail can use LegacyFormFrame instead of the refreshed
   workbench. Its DataWindow editors then miss the workbench's 16px/30px
   control rules. Match only single-record renderer cells, including the
   actual nested input wrapper, and leave query fields, result grids, Defect's
   measured form, buttons, and multiline editors at their existing sizes. */
body.emro-app-shell .emro-detail-field-scope
    :where(div[id^="dw_"]:not(.ui-datatable *, .ui-datagrid *, .ui-treetable *, .ui-datalist *, .emro-query-field-scope *, .emro-defect-form *))
    :is(input.ui-inputfield, .ui-selectonemenu, .ui-selectcheckboxmenu, .ui-selectonemenu-label, .ui-selectcheckboxmenu-label):not(.ui-datatable *, .ui-datagrid *, .ui-treetable *, .ui-datalist *, .emro-query-field-scope *, .emro-defect-form *) {
    font-size: 1rem !important;
    line-height: normal;
    box-sizing: border-box;
}

body.emro-app-shell .emro-detail-field-scope
    :where(div[id^="dw_"]:not(.ui-datatable *, .ui-datagrid *, .ui-treetable *, .ui-datalist *, .emro-query-field-scope *, .emro-defect-form *))
    input.ui-inputfield:not(.ui-datatable *, .ui-datagrid *, .ui-treetable *, .ui-datalist *, .emro-query-field-scope *, .emro-defect-form *) {
    min-height: 1.875rem;
    height: auto !important;
    padding-top: 4px;
    padding-bottom: 4px;
}

body.emro-app-shell .emro-detail-field-scope
    :where(div[id^="dw_"]:not(.ui-datatable *, .ui-datagrid *, .ui-treetable *, .ui-datalist *, .emro-query-field-scope *, .emro-defect-form *))
    :is(.ui-selectonemenu, .ui-selectcheckboxmenu):not(.ui-datatable *, .ui-datagrid *, .ui-treetable *, .ui-datalist *, .emro-query-field-scope *, .emro-defect-form *) {
    min-height: 1.875rem;
    height: auto !important;
    padding: 0;
}

body.emro-app-shell .emro-detail-field-scope
    :where(div[id^="dw_"]:not(.ui-datatable *, .ui-datagrid *, .ui-treetable *, .ui-datalist *, .emro-query-field-scope *, .emro-defect-form *))
    .ui-selectonemenu-label:not(.ui-datatable *, .ui-datagrid *, .ui-treetable *, .ui-datalist *, .emro-query-field-scope *, .emro-defect-form *) {
    min-height: 0;
    height: auto;
    padding: 4px 2.5rem 4px 0.5rem;
    border: 0;
}

body.emro-app-shell .emro-detail-field-scope
    :where(div[id^="dw_"]:not(.ui-datatable *, .ui-datagrid *, .ui-treetable *, .ui-datalist *, .emro-query-field-scope *, .emro-defect-form *))
    .ui-selectcheckboxmenu-label-container:not(.ui-datatable *, .ui-datagrid *, .ui-treetable *, .ui-datalist *, .emro-query-field-scope *, .emro-defect-form *) {
    padding: 4px 0.5rem;
    line-height: normal;
}

/* Defect's computed reporter name sits beside Reported By and the date. It
   must have its own flexible cell; the authored inline offset and fixed height
   are removed from the Facelet so a two-line name contributes to row height. */
body.emro-app-shell .emro-defect-form .emro-defect-row > .emro-defect-reporter-name {
    float: none;
    flex: 0 1 18rem;
    width: auto !important;
    min-width: min(100%, 14rem);
    max-width: 100%;
    align-self: flex-end;
    padding-inline: 0;
}

body.emro-app-shell .emro-defect-form .emro-defect-reporter-name > .emro-form-field > div[id^="dw_"] {
    float: none;
    width: 100% !important;
    max-width: 100%;
    padding-inline: 0;
}

body.emro-app-shell .emro-defect-form .emro-defect-reporter-name .ui-outputlabel {
    display: block;
    max-width: 100%;
    overflow: visible !important;
    overflow-wrap: anywhere;
    white-space: normal !important;
    line-height: 1.25;
}

/* The two CADOR checkboxes have authored 180px widget widths inside narrow
   Bootstrap cells. Size the pair as one flex item, then let each label use
   its natural width with a real gap between them. */
body.emro-app-shell .emro-defect-form .emro-defect-row > div:has(> .emro-form-field > div[id$="_cador_warranty"]):has(> .emro-form-field > div[id$="_cador_damage"]) {
    display: flex;
    flex: 0 1 15rem;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 0.25rem 0.75rem;
    float: none;
    width: auto !important;
    min-width: min(100%, 15rem);
    max-width: 100%;
}

body.emro-app-shell .emro-defect-form .emro-defect-row > div:has(> .emro-form-field > div[id$="_cador_warranty"]):has(> .emro-form-field > div[id$="_cador_damage"]) > .emro-form-field {
    flex: 0 0 auto;
}

body.emro-app-shell .emro-defect-form .emro-defect-row :is(div[id$="_cador_warranty"], div[id$="_cador_damage"]) {
    float: none;
    width: auto !important;
    max-width: 100%;
    padding-inline: 0;
}

body.emro-app-shell .emro-defect-form .emro-defect-row :is(div[id$="_cador_warranty"], div[id$="_cador_damage"]) .ui-selectbooleancheckbox.ui-chkbox {
    display: inline-flex;
    align-items: center;
    width: auto !important;
    max-width: 100%;
}

body.emro-app-shell .emro-defect-form .emro-defect-row :is(div[id$="_cador_warranty"], div[id$="_cador_damage"]) .ui-chkbox-label {
    margin-left: 0.5rem;
    white-space: nowrap;
}

/* CI, ETOPS and CDCCL need room for two complete Yes/No options. The
   renderer's col-md-2 is a percentage of a narrow flex child, so reserve
   width at the direct row child and lay out its options as atomic pairs. */
body.emro-app-shell .emro-defect-form .emro-defect-row > .emro-form-field:has(> :is(div[id$="_critical_task"], div[id$="_etops"], div[id$="_cdccl"])) {
    display: block;
    flex: 0 1 10rem;
    min-width: min(100%, 10rem);
    max-width: 100%;
}

body.emro-app-shell .emro-defect-form .emro-defect-row > .emro-form-field > :is(div[id$="_critical_task"], div[id$="_etops"], div[id$="_cdccl"]) {
    float: none;
    width: 100% !important;
    max-width: 100%;
    padding-inline: 0;
}

body.emro-app-shell .emro-defect-form .emro-defect-row :is(div[id$="_critical_task"], div[id$="_etops"], div[id$="_cdccl"]) .ui-selectoneradio.layout-line-direction {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem 0.75rem;
    width: auto !important;
    max-width: 100%;
}

body.emro-app-shell .emro-defect-form .emro-defect-row :is(div[id$="_critical_task"], div[id$="_etops"], div[id$="_cdccl"]) .ui-selectoneradio.layout-line-direction > div {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    width: auto !important;
    white-space: nowrap;
}
