/* Only real modal interiors and explicitly owned portals. Public foundation
   components retain their own author CSS; adapters below target legacy nodes. */
.gaip-modal-controls, .gaip-modal-popup {
  --mc-brand: var(--gaip-modal-brand); --mc-active: var(--gaip-form-focus); --mc-soft: rgba(36,212,201,.08);
  --mc-selection: #025b52; --mc-selection-soft: rgba(2,91,82,.1); --mc-option-hover: rgba(2,91,82,.06);
  --mc-radio-size: 16px; --mc-radio-dot-size: 6px;
  --mc-text: var(--gaip-modal-text); --mc-muted: var(--gaip-modal-muted); --mc-placeholder: var(--gaip-modal-placeholder);
  --mc-line: var(--gaip-modal-border); --mc-disabled: #f5f6f5; --mc-error: var(--gaip-modal-error);
  --mc-height: 40px; --mc-radius: var(--gaip-radius-control, 4px); --mc-ring: none;
  --mc-down: url('../../shared/assets/icons/forms/filter-bar/select-down.svg'); --mc-up: url('../../shared/assets/icons/forms/filter-bar/select-up.svg');
  --mc-search: url('../../shared/assets/icons/forms/filter-bar/search.svg');
  --mc-clear: url('../../shared/assets/icons/forms/shared/modal-clear.svg');
  --mc-filter-clear: url('../../shared/assets/icons/forms/filter-bar/clear.svg');
  --mc-calendar: url('../../shared/assets/icons/forms/filter-bar/calendar.svg'); --mc-clock: url('../../shared/assets/icons/forms/filter-bar/clock.svg');
}
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-selector, .ant-picker, .ant-input-number, .gaip-native-trigger, .gaip-native-date) { box-sizing: border-box; min-height: var(--mc-height) !important; border: 1px solid var(--mc-line) !important; border-radius: var(--mc-radius) !important; background-color: #fff !important; color: var(--mc-text) !important; box-shadow: none !important; font-family: var(--gaip-global-font) !important; font-size: var(--gaip-modal-body-size) !important; line-height: var(--gaip-modal-body-line) !important; transition: border-color .16s; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-single, .ant-picker, .ant-input-number, .gaip-native-date) { height: var(--mc-height) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-selector, .ant-picker, .gaip-native-date) { padding-inline: 12px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-multiple .ant-select-selector { height: auto !important; padding-block: 4px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-selection-item, .ant-select-selection-placeholder, .ant-picker-input > input, .ant-input-number-input) { font-size: var(--gaip-modal-body-size) !important; line-height: var(--gaip-modal-body-line) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-single .ant-select-selector { display: flex; align-items: center; height: 100% !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-single :is(.ant-select-selection-item, .ant-select-selection-placeholder) { line-height: calc(var(--mc-height) - 2px) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-single .ant-select-selection-search { inset-block: 0; display: flex; align-items: center; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-single .ant-select-selection-search-input { height: 100% !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-input-number-input { height: calc(var(--mc-height) - 2px) !important; padding-inline: 12px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-selection-placeholder { color: var(--mc-placeholder) !important; opacity: 1; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-picker-input > input, .ant-select-selection-search-input, .ant-input-number-input)::placeholder { color: var(--mc-placeholder) !important; opacity: 1; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls textarea.gaip-mc-text::placeholder { color: var(--mc-placeholder) !important; opacity: 1; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-selector, .ant-picker, .ant-input-number, .gaip-native-trigger, .gaip-native-date):where(:hover) { border-color: var(--gaip-form-interaction) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-selector, .ant-picker, .ant-input-number, .gaip-native-trigger, .gaip-native-date):where(:focus, :focus-within, .ant-picker-focused, .ant-input-number-focused, [aria-expanded="true"]),
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :where(.ant-select-open, .ant-select-focused) .ant-select-selector { border-color: var(--gaip-form-focus) !important; box-shadow: none !important; outline: none !important; }
/* Real single Ant picker: suffix/clear are children of the positioned input,
   not direct children of the bordered picker. One owner reserves both slots. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-picker:not(.ant-picker-range) { padding-inline: 0 !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-picker:not(.ant-picker-range) > .ant-picker-input { box-sizing: border-box; position: relative; width: 100%; min-width: 0; height: 100%; padding-inline: 12px 68px; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-picker:not(.ant-picker-range) > .ant-picker-input > input { min-width: 0; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-picker-range:has(.ant-picker-suffix) { padding-inline-end: 68px !important; }
/* @gaip-icon:start shared/assets/icons/forms/css/components--modal-controls--modal-controls-1.css */.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-input-clear-icon, .ant-select-clear, .ant-picker-clear, [data-bulk-search-clear], [data-adjust-node-search-clear], .gaip-mc-clear) { box-sizing: border-box !important; width: 24px !important; height: 24px !important; min-width: 24px !important; min-height: 24px !important; max-width: 24px !important; max-height: 24px !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; color: var(--mc-placeholder) !important; font-size: 0 !important; line-height: 0 !important; cursor: pointer; flex-shrink: 0; display: inline-flex !important; align-items: center !important; justify-content: center !important; overflow: visible !important; }/* @gaip-icon:end */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-clear, .ant-picker-clear) { top: 50% !important; margin: 0 !important; transform: translateY(-50%) !important; inset-inline-end: 8px !important; opacity: 0 !important; pointer-events: none; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select:has(.ant-select-arrow) > .ant-select-clear,
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-picker:not(.ant-picker-range) > .ant-picker-input > .ant-picker-clear,
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-picker-range:has(.ant-picker-suffix) > .ant-picker-clear { inset-inline-end: 32px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select:has(.ant-select-arrow) .ant-select-selector { padding-inline-end: 68px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-single:has(.ant-select-arrow) .ant-select-selection-search { inset-inline-end: 68px; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-clear, .ant-picker-clear, .gaip-mc-clear-date) { --mc-clear: var(--mc-filter-clear); }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select:not(.ant-select-disabled), .ant-picker:not(.ant-picker-disabled)):is(:hover, :focus-within) :is(.ant-select-clear, .ant-picker-clear) { opacity: 1 !important; pointer-events: auto; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-input-clear-icon, .ant-select-clear, .ant-picker-clear, [data-bulk-search-clear], [data-adjust-node-search-clear], .gaip-mc-clear) > * { display: none !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-input-clear-icon, .ant-select-clear, .ant-picker-clear, [data-bulk-search-clear], [data-adjust-node-search-clear], .gaip-mc-clear)[hidden] { display: none !important; }
/* @gaip-icon:start shared/assets/icons/forms/css/components--modal-controls--modal-controls-2.css */.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-input-clear-icon, .ant-select-clear, .ant-picker-clear, [data-bulk-search-clear], [data-adjust-node-search-clear], .gaip-mc-clear)::before { content: ''; display: block; flex: 0 0 16px !important; box-sizing: border-box; width: 16px !important; height: 16px !important; min-width: 16px !important; min-height: 16px !important; max-width: 16px !important; max-height: 16px !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent var(--mc-clear) center/16px 16px no-repeat; mask: none; -webkit-mask: none; opacity: 1; pointer-events: none; }/* @gaip-icon:end */
/* @gaip-icon:start shared/assets/icons/forms/css/components--modal-controls--modal-controls-3.css */.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-input-clear-icon, .ant-select-clear, .ant-picker-clear, [data-bulk-search-clear], [data-adjust-node-search-clear], .gaip-mc-clear):is(:hover, :active) { background: transparent !important; }/* @gaip-icon:end */
/* @gaip-icon:start shared/assets/icons/forms/css/components--modal-controls--modal-controls-4.css */.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-input-clear-icon, .ant-select-clear, .ant-picker-clear, [data-bulk-search-clear], [data-adjust-node-search-clear], .gaip-mc-clear):focus-visible { background-color: transparent !important; outline: 2px solid var(--mc-brand) !important; outline-offset: 2px; box-shadow: none !important; }/* @gaip-icon:end */
/* @gaip-icon:start shared/assets/icons/forms/css/components--modal-controls--modal-controls-5.css */.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-arrow, .ant-picker-suffix) { color: var(--mc-muted) !important; width: 16px !important; height: 16px !important; border: 0 !important; flex-shrink: 0; }/* @gaip-icon:end */
/* @gaip-icon:start shared/assets/icons/forms/css/components--modal-controls--modal-controls-6.css */.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-arrow { position: absolute !important; inset-inline-end: 12px !important; top: 50% !important; margin: 0 !important; transform: translateY(-50%) !important; }/* @gaip-icon:end */
/* @gaip-icon:start shared/assets/icons/forms/css/components--modal-controls--modal-controls-7.css */.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-open .ant-select-arrow { background-image: var(--mc-up) !important; }/* @gaip-icon:end */
/* @gaip-icon:start shared/assets/icons/forms/css/components--modal-controls--modal-controls-8.css */.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-arrow { background: transparent var(--mc-down) center/16px 16px no-repeat !important; mask: none; -webkit-mask: none; }/* @gaip-icon:end */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-arrow > * { visibility: hidden !important; }
/* @gaip-icon:start shared/assets/icons/forms/css/components--modal-controls--modal-controls-9.css */.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-picker-suffix :is(svg, img) { width: 16px !important; height: 16px !important; }/* @gaip-icon:end */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-picker-suffix { position: absolute !important; inset-inline-end: 12px !important; top: 50% !important; transform: translateY(-50%) !important; margin: 0 !important; display: inline-flex !important; align-items: center; justify-content: center; opacity: 1 !important; pointer-events: none; background: transparent var(--mc-calendar) center/16px 16px no-repeat !important; mask: none !important; -webkit-mask: none !important; }
/* @gaip-icon:start shared/assets/icons/forms/css/components--modal-controls--modal-controls-10.css */.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-picker-suffix:has(.anticon-clock-circle) { background-image: var(--mc-clock) !important; }/* @gaip-icon:end */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-picker-suffix > * { visibility: hidden !important; }
/* Native data sources remain live; proxy is only the select presentation. */
.gaip-modal-controls .gaip-native-source { position: absolute !important; width: 1px !important; height: 1px !important; clip-path: inset(50%) !important; overflow: hidden !important; padding: 0 !important; border: 0 !important; }
.gaip-modal-controls .gaip-native-trigger { position: relative; text-align: start; padding: 0 40px 0 12px; flex: 1; min-width: 0; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gaip-modal-controls .gaip-native-trigger::after { content: ''; position: absolute; width: 16px; height: 16px; right: 12px; top: calc(50% - 8px); background: transparent var(--mc-down) center/16px 16px no-repeat; mask: none; -webkit-mask: none; pointer-events: none; }
.gaip-modal-controls .gaip-native-trigger[aria-expanded="true"]::after { background-image: var(--mc-up); }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-native-date { padding-right: 68px !important; background: #fff var(--mc-calendar) right 12px center/16px no-repeat !important; background-origin: border-box !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-native-date[type="time"] { background-image: var(--mc-clock) !important; }
.gaip-native-date::-webkit-calendar-picker-indicator { opacity: 0; cursor: pointer; }
.gaip-modal-controls, .gaip-modal-popup { --mc-checkbox-mark: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20width%3D%2216px%22%20height%3D%2216px%22%20viewBox%3D%220%200%2016%2016%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Ctitle%3EB0DEB039-6E98-409D-B63F-AAAE60944A20%3C%2Ftitle%3E%0A%20%20%20%20%3Cg%20id%3D%22%E7%AD%9B%E9%80%89%E6%A0%8F%E5%9B%BE%E6%A0%87%2F%E5%A4%9A%E9%80%89%E5%8B%BE%E9%80%89%E6%A0%87%E8%AE%B0%22%20stroke%3D%22none%22%20stroke-width%3D%221%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22%E7%9F%A2%E9%87%8F%2Fmulti-check%22%20fill%3D%22%232F3640%22%20fill-rule%3D%22nonzero%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Crect%20id%3D%22canvas-bounds%22%20opacity%3D%220%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2216%22%20height%3D%2216%22%3E%3C%2Frect%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cg%20id%3D%22%E7%BC%96%E7%BB%84%22%20transform%3D%22translate%283.7574%2C%204.4645%29%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cpolygon%20id%3D%22%E8%B7%AF%E5%BE%84%22%20points%3D%227.07106781%208.8817842e-16%208.48528137%201.41421356%202.82842712%207.07106781%20-4.4408921e-16%204.24264069%201.41421356%202.82842712%202.82842712%204.24264069%22%3E%3C%2Fpolygon%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E"); }
/* Checkbox follows its native foundation author; Ant input/state stays live. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-radio-wrapper, .ant-checkbox-wrapper, .gaip-activity-modal__radio) { color: var(--mc-text) !important; font-size: var(--gaip-modal-body-size) !important; line-height: var(--gaip-modal-body-line) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-checkbox-inner, .ant-tree-checkbox-inner, .ant-select-tree-checkbox-inner) { box-sizing: border-box; position: relative; width: 16px !important; height: 16px !important; min-width: 16px !important; min-height: 16px !important; max-width: 16px !important; max-height: 16px !important; border: 1px solid #d9d9d9 !important; border-radius: 2px !important; background: #fff !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-checkbox-wrapper:not(.ant-checkbox-wrapper-disabled):hover .ant-checkbox-inner, .ant-tree-checkbox:not(.ant-tree-checkbox-disabled):hover .ant-tree-checkbox-inner) { border-color: var(--mc-selection) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-checkbox-checked .ant-checkbox-inner, .ant-tree-checkbox-checked .ant-tree-checkbox-inner, .ant-checkbox-indeterminate .ant-checkbox-inner, .ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner) { background: var(--mc-selection) !important; border-color: var(--mc-selection) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-checkbox-checked .ant-checkbox-inner, .ant-tree-checkbox-checked .ant-tree-checkbox-inner)::after { content: ''; display: block !important; box-sizing: border-box !important; position: absolute; inset: -1px !important; width: 16px !important; height: 16px !important; top: auto; left: auto; border: 0 !important; transform: none !important; opacity: 1 !important; background: #fff !important; -webkit-mask: var(--mc-checkbox-mark) center/16px 16px no-repeat; mask: var(--mc-checkbox-mark) center/16px 16px no-repeat; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-checkbox-indeterminate .ant-checkbox-inner, .ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner)::after { content: ''; position: absolute; inset: auto !important; top: 50% !important; left: 50% !important; width: 8px !important; height: 2px !important; border: 0 !important; background: #fff !important; transform: translate(-50%, -50%) !important; mask: none; -webkit-mask: none; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-checkbox-input:focus-visible + .ant-checkbox-inner { outline: 2px solid var(--mc-selection) !important; outline-offset: 2px; box-shadow: none !important; }
/* Fields Radio is native: show Ant's original input and retire only its decoration. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-radio { display: inline-flex; align-items: center; width: 16px; height: 16px; top: auto; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-radio-inner { display: none !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls input[type="radio"]:where(:not(.gaip-choice *)) { appearance: auto !important; -webkit-appearance: radio !important; accent-color: #025b52 !important; box-sizing: border-box; width: 16px !important; height: 16px !important; min-width: 16px !important; min-height: 16px !important; max-width: 16px !important; max-height: 16px !important; margin: 0 !important; background: initial !important; background-image: none !important; border: initial !important; border-radius: initial !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-radio-input { position: static !important; inset: auto !important; opacity: 1 !important; pointer-events: auto !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls input[type="checkbox"]:not(.ant-checkbox-input, .gaip-checkbox__input, .gaip-filter-bar__switch-input) { accent-color: var(--mc-selection); width: 16px; height: 16px; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-multiple .ant-select-selection-item) { box-sizing: border-box; height: 24px; min-height: 24px; padding-inline: 7px; color: var(--mc-text) !important; background: #f5f5f5 !important; border: 1px solid #f0f0f0 !important; border-radius: 3px !important; font-size: 12px !important; line-height: 22px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-selection-item-remove { color: var(--mc-muted) !important; width: 20px; display: inline-flex; align-items: center; justify-content: center; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-select-selection-item-remove:hover { color: var(--mc-brand) !important; background: transparent; border-radius: 3px; }
/* Popup ownership is assigned by aria linkage / actual modal trigger, never globally. */
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup {
  box-sizing: border-box; border: 1px solid var(--mc-line) !important; border-radius: 6px !important;
  background: #fff !important; color: var(--mc-text) !important; box-shadow: 0 6px 16px rgba(0,0,0,.08), 0 3px 6px -4px rgba(0,0,0,.12), 0 9px 28px 8px rgba(0,0,0,.05) !important;
  font-family: var(--gaip-global-font) !important; font-size: var(--gaip-modal-body-size) !important;
}
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup :is(.ant-select-item, .ant-picker-cell-inner, .ant-picker-time-panel-cell-inner, .ant-cascader-menu-item, .ant-select-tree-title) { font-size: var(--gaip-modal-body-size) !important; color: var(--mc-text); border-radius: 4px; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup :where(.ant-select-item-option-active:not(.ant-select-item-option-disabled), .ant-cascader-menu-item:hover),
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :where(.ant-tree-node-content-wrapper:hover) { background: var(--mc-option-hover) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup :where(.ant-picker-cell:not(.ant-picker-cell-disabled):hover .ant-picker-cell-inner) { background: var(--mc-soft) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup :is(.ant-select-item-option-selected:not(.ant-select-item-option-disabled), .ant-cascader-menu-item-active),
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-tree-node-selected) { color: var(--mc-brand) !important; background: var(--mc-selection-soft) !important; font-weight: 500 !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-time-panel-cell-selected .ant-picker-time-panel-cell-inner { color: var(--mc-text) !important; background: rgba(36,212,201,.16) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup :where(.ant-select-item-option-state, .ant-select-tree-checkbox-checked) { color: var(--mc-selection) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup :where(.ant-picker-today-btn, .ant-picker-header button:hover) { color: var(--mc-brand) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-cell-in-view:is(.ant-picker-cell-selected, .ant-picker-cell-range-start, .ant-picker-cell-range-end) .ant-picker-cell-inner { color: #fff !important; background: var(--mc-brand) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-cell-in-view.ant-picker-cell-in-range::before { background: var(--mc-soft) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-cell-today .ant-picker-cell-inner::before { border-color: var(--mc-brand) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-date-panel .ant-picker-cell-inner { min-width: 24px; width: 24px; height: 24px; line-height: 24px; border-radius: 50% !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-date-panel .ant-picker-cell-disabled::before { background: transparent !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-date-panel .ant-picker-cell-disabled .ant-picker-cell-inner { color: #969da1 !important; background: rgba(47,54,64,.06) !important; border-radius: 50% !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-date-panel .ant-picker-cell-today:not(.ant-picker-cell-disabled) .ant-picker-cell-inner { color: #fff !important; background: #2f3640 !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-date-panel .ant-picker-cell-inner::before { border-radius: 50% !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-date-panel .ant-picker-cell-in-view:not(.ant-picker-cell-disabled):is(.ant-picker-cell-selected, .ant-picker-cell-range-start, .ant-picker-cell-range-end) .ant-picker-cell-inner { color: #fff !important; background: #24d4c9 !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-footer :is(.ant-picker-today-btn-disabled, .ant-picker-today-btn[aria-disabled="true"]) { color: #969da1 !important; background: transparent !important; }

.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup :is(.ant-picker-panel-container, .ant-picker-panel) { background: transparent !important; box-shadow: none !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-btn-primary { color: #fff !important; background: var(--mc-brand) !important; border-color: var(--mc-brand) !important; }
/* Owned popups sit beside .ant-modal-content, not inside its pointer-events:auto.
   Restore only the live panel, keeping the Ant shell click-through contract. */
.gaip-native-popup { position: fixed; inset: auto; margin: 0; z-index: 1100; overflow: auto; padding: 8px; pointer-events: auto; }
.gaip-native-popup [role="listbox"] { max-height: 320px; overflow: auto; }
.gaip-native-popup button { font: inherit; cursor: pointer; border: 0; }
.gaip-native-popup .gaip-choice-option { display: block; width: 100%; padding: 8px 12px; text-align: start; border-radius: 4px; color: var(--mc-text); background: #fff; }
.gaip-native-popup .gaip-choice-option:is(:hover, :focus-visible) { background: var(--mc-option-hover); }
.gaip-native-popup.gaip-native-popup .gaip-choice-option:focus-visible { outline: none !important; }
.gaip-native-popup .gaip-choice-option[aria-selected="true"] { background: var(--mc-selection-soft); color: var(--mc-brand); font-weight: 500; }
.gaip-native-popup button:focus-visible { outline: 2px solid var(--mc-brand) !important; outline-offset: -2px; box-shadow: none !important; }
.gaip-native-popup .gaip-choice-apply { display: block; margin: 8px 0 0 auto; min-height: 36px; padding: 0 16px; border-radius: 4px; background: var(--mc-brand); color: #fff; }
.gaip-native-popup .gaip-choice-clear { min-height: 32px; margin-top: 8px; color: var(--mc-brand); background: #fff; }
.gaip-time-columns { display: flex; gap: 8px; margin-top: 8px; }
.gaip-time-columns > div { flex: 1; height: 180px; overflow: auto; }
.gaip-time-columns .gaip-choice-option { text-align: center; }
.gaip-time-columns .gaip-choice-option:is(:hover, :focus-visible) { background: var(--mc-option-hover); }
.gaip-time-columns .gaip-choice-option[aria-selected="true"] { color: var(--mc-text); background: rgba(36,212,201,.16); font-weight: 400; }
/* One footer row for the time-only panel. Do not override hidden popovers. */
.gaip-native-popup.gaip-time-popup { grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; row-gap: 8px; align-items: center; }
.gaip-native-popup.gaip-time-popup:not([popover]) { display: grid; }
.gaip-native-popup.gaip-time-popup:popover-open { display: grid; }
.gaip-time-popup > .gaip-time-columns { grid-column: 1 / -1; grid-row: 1; min-width: 0; }
.gaip-native-popup.gaip-time-popup > .gaip-choice-clear { grid-column: 1; grid-row: 2; justify-self: start; margin: 0; min-height: 36px; }
.gaip-native-popup.gaip-time-popup > .gaip-choice-apply { grid-column: 2; grid-row: 2; justify-self: end; margin: 0; }
.gaip-time-popup > .gaip-control-note { grid-column: 1 / -1; grid-row: 3; }
.gaip-control-note { color: var(--mc-muted); font-size: var(--gaip-modal-caption-size); line-height: var(--gaip-modal-caption-line); margin: 8px; }
/* Other reusable interiors: switch, upload, table and compact pagination. */
/* Switch track/knob follow Filter defaults; original Ant button owns state. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-switch { box-sizing: border-box; min-width: 36px !important; width: 36px !important; height: 22px !important; border: 0 !important; border-radius: 11px !important; padding: 0 !important; background: #c4c9c7 !important; box-shadow: none !important; transition: none !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-switch.ant-switch-checked { background: var(--mc-brand) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-switch .ant-switch-handle { width: 16px !important; height: 16px !important; top: 3px !important; inset-inline-start: 3px !important; transition: inset-inline-start .16s ease !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-switch.ant-switch-checked .ant-switch-handle { inset-inline-start: 17px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-switch .ant-switch-handle::before { inset: 0 !important; border-radius: 50% !important; background: #fff !important; box-shadow: none !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-switch .ant-switch-inner { visibility: hidden; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-switch.ant-switch-disabled { opacity: .45 !important; cursor: not-allowed; }

.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-switch:focus-visible { outline: 2px solid var(--mc-brand) !important; outline-offset: 3px; box-shadow: none !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-upload-drag { border-color: var(--mc-line) !important; border-radius: 4px !important; background: var(--mc-disabled) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-upload-drag:not(.ant-upload-disabled):hover { border-color: var(--gaip-form-interaction) !important; background: var(--mc-soft) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-table, .gaip-bulk-table, .gaip-log-table) { color: var(--mc-text) !important; font-size: var(--gaip-modal-body-size) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-table-thead > tr > th, .gaip-bulk-table th, .gaip-log-table th) { background: #edf6f5 !important; color: var(--mc-muted) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-table-tbody > tr.ant-table-row-selected > td { background: var(--mc-selection-soft) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-pagination-item { min-width: 32px !important; height: 32px !important; line-height: 30px !important; border-radius: 4px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-pagination-item-active { background: var(--mc-brand) !important; border-color: var(--mc-brand) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-pagination-item-active a { color: #fff !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-pagination-options .ant-select-selector { min-height: 32px !important; height: 32px !important; }
/* Error has priority over hover/focus. Disabled has priority over every interaction. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-form-item-has-error .ant-select-selector, .ant-form-item-has-error .ant-picker, .ant-form-item-has-error .ant-input-number, .ant-select-status-error .ant-select-selector, .ant-picker-status-error, .ant-input-number-status-error, [aria-invalid="true"].gaip-native-trigger, [aria-invalid="true"].gaip-native-date) { border-color: var(--mc-error) !important; --mc-ring: none; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-disabled .ant-select-selector, .ant-picker.ant-picker-disabled, .ant-input-number.ant-input-number-disabled, .gaip-native-trigger:disabled, .gaip-native-date:disabled) { background-color: var(--gaip-form-disabled-bg, #f5f4f2) !important; color: var(--mc-text) !important; border-color: var(--mc-line) !important; box-shadow: none !important; opacity: .45 !important; cursor: not-allowed !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select-disabled, .ant-input-number-disabled) { opacity: 1 !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-picker-disabled input, .ant-input-number-disabled input, .ant-select-disabled .ant-select-selection-item) { opacity: 1 !important; color: var(--mc-text) !important; }

.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-radio-wrapper-disabled, .ant-checkbox-wrapper-disabled, .ant-select-disabled .ant-select-selection-item, .ant-picker-disabled input) { color: var(--mc-text) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup :is(.ant-select-item-option-disabled, .ant-picker-time-panel-cell-disabled .ant-picker-time-panel-cell-inner), .gaip-native-popup :is(.gaip-choice-option, .gaip-choice-apply, .gaip-choice-clear):disabled { color: #b4bab8 !important; background: #f5f6f5 !important; cursor: not-allowed !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-time-panel-cell:not(.ant-picker-time-panel-cell-disabled):is(:hover, :focus-visible) .ant-picker-time-panel-cell-inner { background: var(--mc-option-hover) !important; }
/* Base text fields still use global-modal.css; only composite adapters here. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls input.gaip-mc-text[type="search"] { padding-left: 36px !important; background-image: var(--mc-search); background-size: 16px; background-repeat: no-repeat; background-position: 12px center; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls input.gaip-mc-text.gaip-mc-inner { padding: 0 !important; background: transparent !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-mc-text[readonly]:not(:disabled), .gaip-native-date[readonly]:not(:disabled)) { background-color: #fafbfc !important; cursor: default; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-announcement-form-section.is-error .gaip-native-date { border-color: var(--mc-error) !important; --mc-ring: none; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-bulk-upload-button, .gaip-log-button) { border-radius: 4px !important; min-height: 40px; font-size: var(--gaip-modal-body-size) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-bulk-upload-button:hover { border-color: var(--gaip-form-interaction) !important; background: var(--mc-soft) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-bulk-upload-button:focus-visible { background-color: var(--mc-selection-soft) !important; outline: 2px solid var(--mc-brand) !important; outline-offset: -2px; box-shadow: none !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-bulk-node-row, .gaip-adjust-node-row).is-selected { background: var(--mc-selection-soft) !important; color: var(--mc-text) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-bulk-channel-select { display: flex; }
.gaip-modal-controls .gaip-bulk-select-arrow { display: none; } /* Proxy owns the sole arrow. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-log-footer .gaip-native-trigger { min-height: 32px !important; height: 32px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-pagination-options .ant-select { --mc-height: 32px; height: 32px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-input-number-handler:hover { color: var(--mc-brand) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner { border-color: var(--mc-selection) !important; background: var(--mc-selection) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner { background: var(--mc-selection) !important; border-color: var(--mc-selection) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner { background: #f5f6f7 !important; border-color: #d9dcdf !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup :is(.ant-empty-description, .ant-select-item-empty) { color: var(--mc-placeholder) !important; font-size: var(--gaip-modal-body-size) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-native-date[data-gaip-value-state="empty"]:not(:focus) { color: var(--mc-placeholder) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-text::placeholder { color: var(--mc-placeholder) !important; opacity: 1; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls:where(:not(.gaip-modal-form)) .typeGroup___cnCo5 :is(.ant-radio-wrapper, .ant-checkbox-wrapper) { border-radius: 4px !important; border-color: var(--mc-line) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls:where(:not(.gaip-modal-form)) .typeGroup___cnCo5 :is(.ant-radio-wrapper-checked, .ant-checkbox-wrapper-checked) { border-color: var(--mc-selection) !important; background: var(--mc-selection-soft) !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-cell-in-view.ant-picker-cell-disabled .ant-picker-cell-inner { color: var(--mc-placeholder) !important; background: var(--mc-disabled) !important; }
/* Node-list selection marker: preserve original tree buttons and list semantics. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-adjust-node-radio, .gaip-bulk-node-radio) { box-sizing: border-box; position: relative; flex-shrink: 0; width: var(--mc-radio-size) !important; height: var(--mc-radio-size) !important; min-width: var(--mc-radio-size) !important; min-height: var(--mc-radio-size) !important; max-width: var(--mc-radio-size) !important; max-height: var(--mc-radio-size) !important; border: 1px solid var(--mc-line) !important; border-radius: 50% !important; background: #fff !important; box-shadow: none !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-adjust-node-radio, .gaip-bulk-node-radio)::after { content: ''; position: absolute; top: 50% !important; left: 50% !important; width: var(--mc-radio-dot-size) !important; height: var(--mc-radio-dot-size) !important; border: 0 !important; border-radius: 50%; background: #fff !important; transform: translate(-50%, -50%) scale(0) !important; opacity: 0; pointer-events: none; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-adjust-node-row.is-selected .gaip-adjust-node-radio, .gaip-bulk-node-row.is-selected .gaip-bulk-node-radio) { background-color: var(--mc-selection) !important; border-color: var(--mc-selection) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-adjust-node-row.is-selected .gaip-adjust-node-radio, .gaip-bulk-node-row.is-selected .gaip-bulk-node-radio)::after { transform: translate(-50%, -50%) scale(1) !important; opacity: 1; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-adjust-node-option:not(:disabled):hover .gaip-adjust-node-radio, .gaip-bulk-node-option:not(:disabled):hover .gaip-bulk-node-radio) { border-color: var(--mc-selection) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-adjust-node-option:focus-visible .gaip-adjust-node-radio, .gaip-bulk-node-option:focus-visible .gaip-bulk-node-radio) { outline: 2px solid var(--mc-brand) !important; outline-offset: 2px; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-adjust-node-option:is(:disabled, [aria-disabled="true"]) .gaip-adjust-node-radio, .gaip-bulk-node-option:is(:disabled, [aria-disabled="true"]) .gaip-bulk-node-radio) { background-color: #e9ebed !important; border-color: var(--mc-line) !important; cursor: not-allowed; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-adjust-node-option:is(:disabled, [aria-disabled="true"]) .gaip-adjust-node-radio, .gaip-bulk-node-option:is(:disabled, [aria-disabled="true"]) .gaip-bulk-node-radio)::after { background: rgba(0,0,0,.25) !important; }
/* Form search: one prefix slot, regardless of the legacy img/SVG source. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-search-shell { gap: 8px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-search-shell > :is(img, svg, .ant-input-prefix) { display: none !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-search-shell::before {
  content: ''; display: block; flex: 0 0 16px; width: 16px; height: 16px;
  /* External SVG masks can be rejected on file://; render the shared local image directly. */
  background: transparent var(--mc-search) center/16px 16px no-repeat;
  mask: none; -webkit-mask: none;
}
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-search-shell input { margin: 0 !important; min-width: 0; flex: 1 1 0; }
.gaip-modal-controls input.gaip-mc-text[type="search"]::-webkit-search-cancel-button,
.gaip-modal-controls input.gaip-mc-text[type="search"]::-webkit-search-decoration { display: none; }
/* Never wrap/move React inputs. Standalone fields get an anchored sibling clear control. */
.gaip-modal-controls .gaip-mc-clear-host { position: relative; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls input.gaip-mc-clearable { padding-inline-end: 40px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-form-input-shell:has(.gaip-mc-clear-inline),
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-form-input-shell.gaip-mc-clear-external { position: relative; padding-inline-end: 40px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-clear-inline { position: absolute !important; right: 8px; top: calc(50% - 12px); transform: none !important; margin: 0 !important; flex: 0 0 24px; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-form-input-shell:has(.ant-input-password-icon) { padding-inline-end: 68px !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-form-input-shell:has(.ant-input-password-icon) .gaip-mc-clear-inline { right: 32px; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-input-password-icon { position: absolute; right: 12px; top: calc(50% - 8px); width: 16px; height: 16px; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-clear-overlay { position: absolute !important; margin: 0 !important; transform: none !important; z-index: 1; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-clear { opacity: 0 !important; visibility: hidden; pointer-events: none; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-form-input-shell:hover, .gaip-form-input-shell:focus-within) .gaip-mc-clear:not(.gaip-mc-clear-overlay),
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-clear-overlay.gaip-mc-clear-current { opacity: 1 !important; visibility: visible; pointer-events: auto; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-clear.gaip-mc-clear-unavailable { visibility: hidden !important; pointer-events: none !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-clear[hidden] { display: none !important; }
/* A plain native file stays in the form and remains focusable for required
   validation. Its sibling is a presentation of the public Button only. */
.gaip-modal-controls .gaip-mc-file-source { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); opacity: 0; }
.gaip-modal-controls .gaip-mc-file-presentation { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; min-height: var(--mc-height); }
.gaip-modal-controls .gaip-mc-file-name { min-width: 0; overflow-wrap: anywhere; color: var(--mc-muted); font-size: 12px; line-height: 18px; }
.gaip-modal-controls .gaip-mc-file-source:focus-visible + .gaip-mc-file-presentation .gaip-button { outline: 2px solid var(--mc-brand) !important; outline-offset: 2px; }
/* Shared popup density; date cells and time columns retain their distinct layouts. */
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup :is(.ant-select-item-option, .ant-cascader-menu-item),
.gaip-native-popup [role="listbox"] > .gaip-choice-option { box-sizing: border-box; min-height: 36px; padding: 7px 12px; line-height: var(--gaip-modal-body-line); }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup.gaip-native-popup :is(.gaip-choice-option, .gaip-choice-apply, .gaip-choice-clear):disabled { color: #b4bab8 !important; background: #f5f6f5 !important; cursor: not-allowed !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-picker-time-panel-cell-inner,
.gaip-native-popup .gaip-time-columns .gaip-choice-option { box-sizing: border-box; height: 32px; min-height: 32px; padding-block: 5px; line-height: var(--gaip-modal-body-line); }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-native-trigger[data-gaip-value-state="empty"] { color: var(--mc-placeholder) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-native-trigger:where(:disabled) { border-color: var(--mc-line) !important; box-shadow: none !important; cursor: default; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-native-trigger:disabled { cursor: not-allowed; }
.gaip-modal-form.gaip-modal-controls { --mc-node-hover: var(--mc-option-hover); }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-bulk-node-row, .gaip-adjust-node-row):where(:not(:disabled):hover) { background: var(--mc-node-hover, var(--mc-soft)) !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-bulk-node-row, .gaip-adjust-node-row):focus-visible { outline: 2px solid var(--mc-brand) !important; outline-offset: -2px; box-shadow: none !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls:not(.gaip-modal-form) :is(.gaip-bulk-node-row, .gaip-adjust-node-row):focus-visible { background-color: var(--mc-selection-soft) !important; }
.gaip-modal-form.gaip-modal-controls.gaip-modal-controls :is(.gaip-bulk-node-row, .gaip-adjust-node-row):focus-visible { text-decoration: none; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-bulk-node-row, .gaip-adjust-node-row):disabled { color: var(--mc-placeholder) !important; background: var(--mc-disabled) !important; cursor: not-allowed; }
@media (prefers-reduced-motion: reduce) { .gaip-modal-controls *, .gaip-modal-popup * { transition-duration: 0s !important; } }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-checkbox-wrapper.ant-checkbox-wrapper-disabled { color: #a6adb5 !important; opacity: 1 !important; cursor: not-allowed; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-checkbox-disabled .ant-checkbox-inner, .ant-tree-checkbox-disabled .ant-tree-checkbox-inner) { border-color: #d9dcdf !important; background: #f5f6f7 !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-checkbox-disabled .ant-checkbox-inner, .ant-tree-checkbox-disabled .ant-tree-checkbox-inner)::after { background: #a6adb5 !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-radio-wrapper-disabled { opacity: .45 !important; cursor: not-allowed; }

@media (hover: none), (pointer: coarse) {
  .gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.ant-select:not(.ant-select-disabled), .ant-picker:not(.ant-picker-disabled)) :is(.ant-select-clear, .ant-picker-clear) { opacity: 1 !important; pointer-events: auto; }
  .gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-mc-clear:not(.gaip-mc-clear-unavailable):not([hidden]) { opacity: 1 !important; visibility: visible; pointer-events: auto; }
}

.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .ant-input-clear-icon-hidden { display: none !important; }

.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-select-tree-checkbox-inner { box-sizing: border-box; position: relative; width: 16px !important; height: 16px !important; border: 1px solid #d9d9d9; border-radius: 2px !important; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner::after { content: ""; display: block !important; box-sizing: border-box !important; position: absolute; inset: -1px !important; width: 16px !important; height: 16px !important; border: 0 !important; transform: none !important; background: #fff; mask: var(--mc-checkbox-mark) center/16px 16px no-repeat; -webkit-mask: var(--mc-checkbox-mark) center/16px 16px no-repeat; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner::after { content: ""; position: absolute; inset: auto !important; top: 50%; left: 50%; width: 8px; height: 2px; border: 0; transform: translate(-50%, -50%); background: #fff; mask: none; -webkit-mask: none; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup .ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner::after { background: #a6adb5 !important; }

/* The Filter single-select author owns this check; multiple lists and time
   columns have no single mode and retain their original indicator nodes. */
.gaip-modal-controls, .gaip-modal-popup { --mc-single-check: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20width%3D%2216px%22%20height%3D%2216px%22%20viewBox%3D%220%200%2016%2016%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Ctitle%3E99F902F7-24A4-4FC2-98CE-8830F7B2C0F1%3C%2Ftitle%3E%0A%20%20%20%20%3Cg%20id%3D%22%E7%AD%9B%E9%80%89%E6%A0%8F%E5%9B%BE%E6%A0%87%2F%E5%8D%95%E9%80%89%E5%B7%B2%E9%80%89%E6%A0%87%E8%AE%B0%22%20stroke%3D%22none%22%20stroke-width%3D%221%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%0A%20%20%20%20%20%20%20%20%3Cg%20id%3D%22%E7%9F%A2%E9%87%8F%2Fsingle-check%22%20fill%3D%22%232F3640%22%20fill-rule%3D%22nonzero%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Crect%20id%3D%22canvas-bounds%22%20opacity%3D%220%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2216%22%20height%3D%2216%22%3E%3C%2Frect%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cg%20id%3D%22%E7%BC%96%E7%BB%84%22%20transform%3D%22translate%283.0503%2C%204.1109%29%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cpolygon%20id%3D%22%E8%B7%AF%E5%BE%84%22%20points%3D%228.48528137%200%209.89949494%201.41421356%203.53553391%207.77817459%204.4408921e-16%204.24264069%201.41421356%202.82842712%203.53553391%204.94974747%22%3E%3C%2Fpolygon%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E"); }
.gaip-native-popup [data-gaip-select-mode="single"] > .gaip-choice-option[aria-selected="true"],
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup[data-gaip-select-mode="single"] .ant-select-item-option-selected { position: relative; padding-inline-end: 32px; }
.gaip-native-popup [data-gaip-select-mode="single"] > .gaip-choice-option[aria-selected="true"]::after,
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup[data-gaip-select-mode="single"] .ant-select-item-option-selected::after { content: ''; position: absolute; top: 50%; right: 12px; width: 16px; height: 16px; margin-top: -8px; border: 0; transform: none; background: var(--mc-brand); -webkit-mask: var(--mc-single-check) center/contain no-repeat; mask: var(--mc-single-check) center/contain no-repeat; pointer-events: none; }
.gaip-modal-popup.gaip-modal-popup.gaip-modal-popup[data-gaip-select-mode="single"] .ant-select-item-option-state { display: none !important; }

/* Adopt only complete, independent disabled fields. Mixed groups retain their
   individual controls; the semantic adapter never changes disabled flags. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-form-field--disabled {
  opacity: .45 !important;
  cursor: not-allowed;
}
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-form-field--disabled :is(.gaip-form-control:disabled, .gaip-form-input-shell, .ant-select-selector, .ant-picker-disabled, .ant-input-number-disabled, .gaip-native-trigger:disabled, .gaip-native-date:disabled) {
  opacity: 1 !important;
}
/* A business-readonly field is not the readonly input inside an active picker. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-form-input-shell:has(> .gaip-mc-text[readonly]:not(:disabled)) {
  background-color: #fafbfc !important;
}
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls :is(.gaip-mc-text[readonly]:not(:disabled):not(:focus), .gaip-native-date[readonly]:not(:disabled):not(:focus), .gaip-form-input-shell:has(> .gaip-mc-text[readonly]:not(:disabled)):not(:focus-within)):where(:hover):not([aria-invalid="true"], .ant-input-status-error, .ant-input-affix-wrapper-status-error, :has([aria-invalid="true"])):not(:where(.ant-form-item-has-error *, .gaip-announcement-form-section.is-error *)) {
  border-color: var(--mc-line) !important;
}
/* Pristine empty native date/time keeps one generic hint through focus and clear.
   Hide the whole native editor paint, including its selection background, so it
   cannot overlap the hint. Partial (badInput) and filled values retain the native
   editor, original keyboard feedback, constraints and business event chain. */
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-native-date[data-gaip-value-state="empty"] { position: relative; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-native-date[data-gaip-value-state="empty"]::-webkit-datetime-edit { color: transparent !important; opacity: 0 !important; }
.gaip-modal-controls.gaip-modal-controls.gaip-modal-controls .gaip-native-date[data-gaip-value-state="empty"]::before {
  content: attr(placeholder);
  position: absolute;
  inset-inline-start: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--mc-placeholder);
  font: inherit;
  white-space: nowrap;
  pointer-events: none;
}

/* Opt-in numeric micro-actions: the same independent SVGs as FilterBar. */
.gaip-modal-controls .gaip-mc-number-host { position:relative;display:block; }
.gaip-modal-controls .gaip-mc-number-source { appearance:textfield!important;padding-right:44px!important; }
.gaip-modal-controls .gaip-mc-number-source::-webkit-inner-spin-button,
.gaip-modal-controls .gaip-mc-number-source::-webkit-outer-spin-button { -webkit-appearance:none;margin:0; }
.gaip-modal-controls .gaip-mc-number-step { position:absolute;right:8px;top:8px;width:24px;height:12px;padding:0;border:0;border-radius:2px;background:transparent;color:#2f3640;cursor:pointer; }
.gaip-modal-controls .gaip-mc-number-step[data-direction="down"] { top:20px; }
.gaip-modal-controls .gaip-mc-number-step::after { content:"";display:block;width:16px;height:8px;margin:auto;background:center/16px 16px no-repeat url("../../shared/assets/icons/forms/shared/number-step-up.svg"); }
.gaip-modal-controls .gaip-mc-number-step[data-direction="down"]::after { background-image:url("../../shared/assets/icons/forms/shared/number-step-down.svg"); }
.gaip-modal-controls .gaip-mc-number-step:hover:not(:disabled) { background:rgba(2,91,82,.06); }
.gaip-modal-controls .gaip-mc-number-step:active:not(:disabled) { background:rgba(2,91,82,.12); }
.gaip-modal-controls .gaip-mc-number-step:disabled { opacity:.35;cursor:not-allowed; }
.gaip-modal-controls .gaip-mc-number-host:hover .gaip-mc-number-source:not(:disabled):not([aria-invalid="true"]) { border-color:var(--gaip-form-interaction)!important; }
