/* Field layout */
.ui-field { display:grid; min-width:0; gap:7px; margin:0; }
.ui-field__label { margin:0!important; color:var(--color-text-primary,#f4f7fb); font-size:.78rem; font-weight:800; }

/* Shared control shell */
.ui-control,
.search-control {
  position:relative;
  display:flex;
  width:100%;
  min-width:0;
  min-height:var(--ui-control-height);
  align-items:center;
  gap:var(--ui-control-gap);
  box-sizing:border-box;
  padding:0 var(--ui-control-padding-x);
  border:1px solid var(--color-border-default,#34495e);
  border-radius:var(--ui-radius-control);
  background:var(--color-surface-2,#07111c);
  color:var(--color-text-primary,#f4f7fb);
  transition:border-color var(--ui-transition-fast),background-color var(--ui-transition-fast),box-shadow var(--ui-transition-fast);
}
.ui-control:hover,.search-control:hover { border-color:var(--color-border-strong,#52708b); }
.ui-control:focus-within,.search-control:focus-within {
  border-color:var(--color-border-accent,#1684ff);
  background:var(--color-surface-3,#0d1d2c);
  box-shadow:var(--ui-focus-shadow);
}
.ui-control>i:first-child,.search-control>i:first-child {
  position:static!important;
  top:auto!important;
  left:auto!important;
  flex:0 0 18px;
  width:18px;
  margin:0!important;
  color:var(--color-primary-bright,#1684ff);
  text-align:center;
  transform:none!important;
}
.ui-control__input,
.search-control>input[type="search"],
.search-control>input.form-control {
  flex:1 1 auto;
  width:100%;
  min-width:0;
  min-height:calc(var(--ui-control-height) - 2px)!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0 2px!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
}
.ui-control__input::placeholder,.search-control>input::placeholder { color:var(--color-text-muted,#74869a); opacity:1; }
.search-control>input[type="search"],.search-control>input.form-control { padding-right:42px!important; }
.ui-control--select { padding-right:10px; }
.ui-control--select .ui-control__input { padding-right:28px!important; cursor:pointer; }

/* Search clear affordance */
.search-control>.search-clear-button {
  position:absolute;
  top:calc((var(--ui-control-height) - 40px)/2);
  right:4px;
  display:flex;
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  padding:0;
  border:0;
  border-radius:6px;
  background:transparent;
  color:var(--color-text-secondary,#b6c2cf);
}
.search-control>.search-clear-button:hover,.search-control>.search-clear-button:focus-visible { background:var(--color-surface-hover,#163047); color:#fff; }
.search-control>.search-clear-button:focus-visible { outline:2px solid var(--color-focus-ring,#63b2ff); outline-offset:1px; }

/* Checkbox control */
.ui-check { display:flex; min-height:var(--ui-control-height); align-items:center; gap:9px; margin:0; color:var(--color-text-primary,#f4f7fb); font-weight:700; }
.ui-check input { flex:0 0 18px; width:18px!important; height:18px!important; margin:0; accent-color:var(--color-primary,#1479d4); }

@media(max-width:767px) {
  .ui-control__input,.search-control>input[type="search"],.search-control>input.form-control { min-height:calc(var(--ui-control-height) - 2px)!important; }
}
