/* Loaded last: scoped Bootstrap / Bootstrap Table / Select2 compatibility. */
/* A hostname always reads prefix.suffix left-to-right, even in an RTL form. */
.idbarah-ui-v2 .ui-domain-field {
  direction: ltr; unicode-bidi: isolate; flex-wrap: nowrap;
  min-width: 0; min-height: var(--id-control-md);
  border: 1px solid var(--id-border); border-radius: var(--id-radius-control);
  background: #fff;
}
.idbarah-ui-v2 .ui-domain-field:focus-within {
  border-color: var(--id-patina); box-shadow: 0 0 0 2px var(--id-patina-soft);
}
.idbarah-ui-v2 input.domain-pattern { direction: ltr; unicode-bidi: isolate; text-align: left; }
.idbarah-ui-v2 .ui-domain-field > .form-control {
  flex: 1 1 0; min-width: 4rem; width: 0; min-height: 0;
  margin: 0 !important; border: 0; border-radius: inherit !important;
  clip-path: none; background: transparent !important; box-shadow: none !important;
  text-align: right; padding-inline: 14px 6px;
}
.idbarah-ui-v2 .ui-domain-field > .form-control:focus-visible { outline: 0; }
.idbarah-ui-v2 .ui-domain-field > .input-group-append {
  flex: 0 1 auto; min-width: 0; max-width: 70%; margin: 0 !important;
  border-radius: 0 var(--id-radius-control) var(--id-radius-control) 0;
  background: var(--id-mist);
}
.idbarah-ui-v2 .ui-domain-field .ui-domain-suffix {
  display: block; align-self: center; min-width: 0; max-width: 100%;
  padding: 12px 14px 12px 6px; border: 0; border-radius: 0 !important;
  direction: ltr; unicode-bidi: isolate; text-align: left;
  color: var(--id-muted); background: transparent;
  font: inherit; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

/* TagsInput writes a tiny inline input width, including when initialized in a
 * hidden translation tab. Let the layout size the editor instead of autosize. */
.idbarah-ui-v2 div.tagsinput {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
  width: 100% !important; height: auto !important;
  min-height: var(--id-control-md) !important; min-width: 0;
  padding: 10px 12px; overflow: visible;
  border: 1px solid var(--id-border); background: #fff;
  font: var(--id-weight-regular) var(--id-type-body)/var(--id-leading) var(--id-font);
  text-align: start;
}
.idbarah-ui-v2 [dir="rtl"] + div.tagsinput { direction: rtl; }
.idbarah-ui-v2 [dir="ltr"] + div.tagsinput { direction: ltr; }
.idbarah-ui-v2 div.tagsinput > div:not(.tags_clear) {
  float: none; flex: 1 1 12rem; min-width: 0; max-width: 100%;
}
.idbarah-ui-v2 div.tagsinput input {
  width: 100% !important; max-width: 100%; min-width: 0; min-height: 32px;
  margin: 0; padding: 4px 0; border: 0; background: transparent;
  font: inherit; line-height: var(--id-leading); color: var(--id-text) !important;
  text-align: start; direction: inherit; unicode-bidi: plaintext;
}
.idbarah-ui-v2 div.tagsinput span.tag {
  display: inline-flex; align-items: center; gap: 8px;
  float: none; min-width: 0; max-width: 100%; margin: 0; padding: 6px 10px;
  background: var(--id-mist); color: var(--id-ink);
  font: inherit; line-height: var(--id-leading);
}
.idbarah-ui-v2 div.tagsinput span.tag > span {
  min-width: 0; overflow-wrap: anywhere; white-space: normal; unicode-bidi: plaintext;
}
.idbarah-ui-v2 div.tagsinput span.tag a { flex: 0 0 auto; color: inherit; font: inherit; }
.idbarah-ui-v2 div.tagsinput .tags_clear { display: none; }
.idbarah-ui-v2 div.tagsinput:focus-within { border-color: var(--id-patina); }

.idbarah-ui-v2 #sidebar .nav-link,
.idbarah-ui-v2 .btn,
.idbarah-ui-v2 button,
.idbarah-ui-v2 input[type='submit'],
.idbarah-ui-v2 .form-control,
.idbarah-ui-v2 .select2-selection,
.idbarah-ui-v2 .bootstrap-table .search input,
.idbarah-ui-v2 .page-link,
.idbarah-ui-v2 .dropdown-menu,
.idbarah-ui-v2 .dropdown-item,
.idbarah-ui-v2 .table-action-column button {
  border-radius: 0 !important;
  clip-path: var(--control-contour);
}
.idbarah-ui-v2 .select2-container .select2-selection {
  min-height: var(--id-control-md);
  border-color: transparent !important;
  background-color: #fff !important;
  background-image: var(--control-edge) !important;
  background-size: 100% 100% !important;
  background-repeat: no-repeat !important;
}
.idbarah-ui-v2 .select2-container--focus .select2-selection,
.idbarah-ui-v2 .select2-container--open .select2-selection,
.idbarah-ui-v2 .select2-selection:focus {
  outline: 0 !important;
  box-shadow: none !important;
  background-image: var(--control-focus) !important;
  background-size: 100% 100% !important;
  background-repeat: no-repeat !important;
}
.idbarah-ui-v2 .select2-selection--single .select2-selection__rendered { line-height: var(--id-control-md) !important; padding-inline: var(--id-space-4) var(--id-space-8) !important; }
.idbarah-ui-v2 .select2-selection--multiple .select2-selection__rendered { display: flex !important; flex-wrap: wrap; align-items: center; gap: 4px; padding: 6px 12px !important; line-height: var(--id-leading) !important; }
/* Override legacy nth-child colors and tiny text for every selected name. */
.idbarah-ui-v2 .select2-container--default .select2-selection--multiple .select2-selection__choice {
  display: inline-flex; align-items: center; gap: var(--id-space-2);
  flex: 0 1 auto; float: none; min-width: 0; max-width: 100%; min-height: 32px;
  background: var(--id-mist); border: 0; color: var(--id-ink);
  margin: 0; padding: 4px 10px;
  font: var(--id-weight-medium) var(--id-type-body)/1.6 var(--id-font);
  white-space: normal; overflow-wrap: anywhere; text-align: start;
}
.idbarah-ui-v2 .select2-container--default .select2-selection--multiple .select2-selection__choice .select2-selection__choice__remove {
  flex: 0 0 auto; float: none; margin: 0; color: inherit;
  font: inherit; font-weight: var(--id-weight-semibold); line-height: 1;
}
.idbarah-ui-v2 .select2-search--inline .select2-search__field { margin: 0 !important; min-height: 28px; outline: none !important; box-shadow: none !important; }
/* Popper owns the physical offset for positioned Bootstrap menus. Legacy RTL
 * right:0 plus Popper's inline left:0 stretches the menu before translation. */
.idbarah-ui-v2 .dropdown-menu[x-placement] { right: auto; }
.idbarah-ui-v2 .select2-dropdown { border-color: var(--id-border); border-radius: var(--id-radius-menu); background: var(--id-paper); box-shadow: var(--id-shadow-overlay); overflow: hidden; }
.idbarah-ui-v2 .select2-results__option { padding: 10px 16px; }
.idbarah-ui-v2 .select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--id-selected); color: var(--id-ink); }
.idbarah-ui-v2 .select2-container .select2-selection { background-origin: border-box !important; }
.idbarah-ui-v2 .select2-selection__arrow { height: var(--id-control-md) !important; }
.idbarah-ui-v2 .select2-search--dropdown .select2-search__field {
  min-height: var(--id-control-sm);
  padding: var(--id-space-2) var(--id-space-3);
  border-color: transparent !important;
  background-image: var(--control-edge);
  background-size: 100% 100%;
  background-origin: border-box;
  background-repeat: no-repeat;
}
.idbarah-ui-v2 .select2-search--dropdown .select2-search__field:focus {
  background-image: var(--control-focus);
  outline: none;
}

/* Keep keyboard focus inside contours; outside outlines are clipped. */
.idbarah-ui-v2 #sidebar .nav-link:focus-visible,
.idbarah-ui-v2 .dropdown-item:focus-visible,
.idbarah-ui-v2 .page-link:focus-visible,
.idbarah-ui-v2 .table-list-type:focus-visible,
.idbarah-ui-v2 .btn-theme:focus-visible,
.idbarah-ui-v2 input.btn-theme:focus-visible {
  outline: 0 !important;
  background-image: var(--control-focus) !important;
  background-size: 100% 100% !important;
  background-repeat: no-repeat !important;
}

@media (prefers-reduced-motion: reduce) {
  .idbarah-ui-v2 *,
  .idbarah-ui-v2 *::before,
  .idbarah-ui-v2 *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  .idbarah-ui-v2 .modal-dialog { filter: none !important; }
}
.idbarah-ui-v2 :is(.svr-header,.svr-info-panel,.svr-tabs-wrapper) { background: var(--id-polymer); border-color: var(--id-border); border-radius: var(--id-radius-card); box-shadow: var(--id-shadow-rest); }
.idbarah-ui-v2 :is(.svr-header__name,.svr-info-panel__title) { color: var(--id-ink); }
.idbarah-ui-v2 .svr-field__value { color: var(--id-text); font-size: var(--id-type-body); }
.idbarah-ui-v2 .svr-header__id-chip { background: var(--id-mist); color: var(--id-ink); }
.idbarah-ui-v2 :is(.attendance-stat-card,.attendance-cal-wrapper) { background: var(--id-polymer); border-color: var(--id-border); border-radius: var(--id-radius-card); box-shadow: var(--id-shadow-rest) !important; }
.idbarah-ui-v2 .attendance-stat-card { border-radius: var(--id-radius-textarea); --attendance-tone: var(--id-ink); border-top-color: var(--attendance-tone); }
.idbarah-ui-v2 .attendance-stat-card--present { --attendance-tone: var(--id-patina); }
.idbarah-ui-v2 .attendance-stat-card--absent { --attendance-tone: var(--id-danger); }
.idbarah-ui-v2 .attendance-stat-card--holiday { --attendance-tone: var(--id-muted); }
.idbarah-ui-v2 :is(.attendance-stat-card--pct,.attendance-stat-card--half) { --attendance-tone: var(--id-warning); }
.idbarah-ui-v2 .attendance-stat-card .attendance-stat-card__value { color: var(--attendance-tone) !important; }
.idbarah-ui-v2 :is(.attendance-stat-card__label,.attendance-cal-grid__day-header) { color: var(--id-muted); letter-spacing: normal; }
.idbarah-ui-v2 .attendance-cal-cell { background: var(--id-mist); border-color: var(--id-border); }
.idbarah-ui-v2 .attendance-cal-cell--present { background: var(--id-patina-soft); --attendance-tone: var(--id-patina); }
.idbarah-ui-v2 .attendance-cal-cell--absent { background: var(--id-danger-soft); --attendance-tone: var(--id-danger); }
.idbarah-ui-v2 .attendance-cal-cell--holiday { background: var(--id-selected); --attendance-tone: var(--id-ink); }
.idbarah-ui-v2 .attendance-cal-cell :is(.attendance-cal-cell__num,.attendance-cal-cell__status) { color: var(--attendance-tone,var(--id-text)); }
.idbarah-ui-v2 .attendance-cal-cell__status { line-height: 1.4; overflow-wrap: anywhere; }
.idbarah-ui-v2 .ui-calendar-error { color: var(--id-danger) !important; }
.idbarah-ui-v2 .ui-calendar-empty { color: var(--id-muted) !important; }
