/* Bridge styles for legacy UI base-markup screens in gestion */

.btn {
  border-radius: 999px;
  min-height: 36px;
  font-weight: 500;
  padding: 0.4rem 0.9rem;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.btn-outline-primary {
  color: var(--color-cta-orange-primary);
  border-color: var(--ui-btn-border-color, var(--color-cta-orange-primary));
  background: var(--color-bg-base);
}

.btn-outline-primary:hover {
  color: var(--color-bg-base);
  border-color: var(--ui-btn-border-color, var(--color-cta-orange-primary));
  background: var(--ui-btn-bg, var(--color-cta-orange-primary));
}

.btn-primary,
.btn-warning {
  color: var(--color-bg-base);
  border-color: var(--ui-btn-border-color, var(--color-cta-orange-primary));
  background: var(--ui-btn-bg, var(--color-cta-orange-primary));
}

.btn-primary:hover,
.btn-warning:hover {
  color: var(--color-bg-base);
  border-color: var(--ui-btn-hover-border-color, var(--color-cta-orange-secondary));
  background: var(--ui-btn-hover-bg, var(--color-cta-orange-secondary));
}

.btn-outline-secondary {
  color: var(--color-brand-blue);
  border-color: var(--color-brand-blue);
  background: var(--color-bg-base);
}

.btn-outline-secondary:hover {
  color: var(--color-bg-base);
  border-color: var(--color-brand-blue);
  background: var(--color-brand-blue);
}

.btn-secondary {
  color: var(--color-bg-base);
  border-color: var(--color-brand-blue);
  background: var(--color-brand-blue);
}

.btn-secondary:hover {
  color: var(--color-bg-base);
  border-color: var(--color-brand-blue-dark);
  background: var(--color-brand-blue-dark);
}

.btn-danger {
  color: var(--color-bg-base);
  border-color: var(--color-critical-red);
  background: var(--color-critical-red);
}

.btn-danger:hover {
  color: var(--color-bg-base);
  border-color: var(--color-critical-red);
  filter: brightness(0.92);
}

.form-control,
.form-select,
input:not([type="checkbox"]):not([type="radio"]),
textarea,
select {
  border-color: var(--color-border-light);
  border-radius: 14px;
}

.form-control:focus,
.form-select:focus,
input:not([type="checkbox"]):not([type="radio"]):focus,
textarea:focus,
select:focus {
  border-color: var(--ui-btn-hover-border-color, var(--color-cta-orange-secondary));
  box-shadow: none;
  outline: none;
}

table thead th {
  color: var(--color-text-muted);
  border-bottom-color: var(--color-border-soft);
}

table td {
  border-bottom-color: var(--color-border-soft);
}

.pagination .page-link {
  border-radius: 999px !important;
  min-width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-color: var(--color-brand-blue);
  color: var(--color-brand-blue);
  background: var(--color-bg-base);
}

.pagination .page-link:hover {
  border-color: var(--color-brand-blue);
  color: var(--color-bg-base);
  background: var(--color-brand-blue);
}

.pagination .page-item.active .page-link {
  border-color: var(--ui-btn-border-color, var(--color-cta-orange-primary));
  color: var(--color-bg-base);
  background: var(--ui-btn-bg, var(--color-cta-orange-primary));
}

.pagination .page-item.disabled .page-link {
  border-color: var(--color-border-light);
  color: var(--color-text-muted);
  background: var(--color-bg-soft-alt);
}

.pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.pagination .page-item {
  list-style: none;
}

.pagination .page-link {
  text-decoration: none;
}

.spinner-border {
  width: 1.25rem;
  height: 1.25rem;
  border: 0.2rem solid rgba(4, 107, 153, 0.2);
  border-top-color: var(--color-brand-blue);
  border-radius: 50%;
  display: inline-block;
  animation: ui-spin 0.8s linear infinite;
}

@keyframes ui-spin {
  to { transform: rotate(360deg); }
}
/* Shared search controls and SVG icons, including asynchronously inserted content. */
[hidden] { display: none !important; }
.lucide { width: 1.15em; height: 1.15em; vertical-align: -0.18em; flex-shrink: 0; }
.ui-search-select { text-align: left; cursor: pointer; color: var(--color-text-primary); font: inherit; }
.ui-select-popup {
  position: fixed; z-index: 2200; display: flex; flex-direction: column; gap: .4rem;
  padding: .5rem; border: 1px solid var(--color-border-light); border-radius: 12px;
  background: var(--color-bg-base); color: var(--color-text-primary); box-shadow: var(--shadow-drawer-side);
}
.ui-select-popup .form-control { flex: 0 0 auto; }
.ui-select-options { min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.ui-select-options [role="option"] { padding: .45rem .65rem; border-radius: 6px; cursor: pointer; white-space: normal; }
.ui-select-options [role="option"]:hover, .ui-select-options .is-active { background: var(--color-brand-blue); color: var(--color-bg-base); }
.ui-select-options [aria-selected="true"] { font-weight: 600; }
.ui-select-status { font-size: .875rem; color: var(--color-text-muted); }
.ui-select-status:empty { display: none; }
.ui-search-select:focus-visible, .ui-select-popup input:focus-visible { outline: 2px solid var(--color-brand-blue); outline-offset: 2px; }
