html {
  font-size: 14px;
}

:root {
  --bs-primary: #337ab7;
  --bs-primary-rgb: 51, 122, 183;
  --bs-link-color: #337ab7;
  --bs-link-color-rgb: 51, 122, 183;
  --bs-link-hover-color: #285f8f;
  --bs-link-hover-color-rgb: 40, 95, 143;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.btn-primary {
  --bs-btn-bg: #337ab7;
  --bs-btn-border-color: #337ab7;
  --bs-btn-hover-bg: #285f8f;
  --bs-btn-hover-border-color: #285f8f;
  --bs-btn-focus-shadow-rgb: 51, 122, 183;
  --bs-btn-active-bg: #285f8f;
  --bs-btn-active-border-color: #285f8f;
  --bs-btn-disabled-bg: #337ab7;
  --bs-btn-disabled-border-color: #337ab7;
}

.btn-outline-primary {
  --bs-btn-color: #337ab7;
  --bs-btn-border-color: #337ab7;
  --bs-btn-hover-bg: #337ab7;
  --bs-btn-hover-border-color: #337ab7;
  --bs-btn-focus-shadow-rgb: 51, 122, 183;
  --bs-btn-active-bg: #285f8f;
  --bs-btn-active-border-color: #285f8f;
  --bs-btn-disabled-color: #337ab7;
  --bs-btn-disabled-border-color: #337ab7;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  min-height: 100vh;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

.admin-shell {
  display: flex;
  min-height: 100vh;
}

.admin-sidebar {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-self: flex-start;
  gap: 2rem;
  width: 280px;
  min-height: 100vh;
  padding: 2rem 1.25rem;
  background: #ffffff;
  border-right: 1px solid #dee2e6;
}

.admin-brand {
  display: inline-flex;
  align-items: center;
  color: #212529;
  font-size: 1.25rem;
  font-weight: 700;
}

.admin-sidebar-brand {
  display: flex;
  justify-content: center;
}

.admin-brand-logo {
  display: block;
  width: auto;
  max-width: 100%;
  height: 44px;
}

.admin-brand-subtitle {
  color: #6c757d;
  font-size: 0.875rem;
  margin-top: 0.25rem;
}

.admin-nav-link {
  display: block;
  padding: 0.85rem 1rem;
  color: #495057;
  border-radius: 0.75rem;
  font-weight: 600;
  text-decoration: none;
}

.admin-nav-link:hover {
  background: #f8f9fa;
  color: #212529;
}

.admin-nav-link.active {
  background: #337ab7;
  color: #ffffff;
}

.dx-datagrid-rowsview .dx-selection.dx-row > td,
.dx-datagrid-rowsview .dx-selection.dx-row:hover > td,
.dx-datagrid-rowsview .dx-row-focused.dx-data-row > td,
.dx-datagrid-rowsview .dx-row-focused.dx-data-row.dx-selection > td {
  background-color: #337ab7 !important;
  color: #ffffff !important;
}

.dx-datagrid-rowsview .dx-selection.dx-row > td a:not(.btn):not(.dx-link),
.dx-datagrid-rowsview .dx-row-focused.dx-data-row > td a:not(.btn):not(.dx-link) {
  color: #ffffff;
}

.dx-datagrid-header-panel .dx-toolbar-after {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.dx-datagrid-header-panel .dx-toolbar-after .dx-toolbar-item {
  margin: 0;
}

.dx-tagbox .dx-tag-content {
  background-color: #e7f1ff;
  border: 1px solid #c8ddf5;
  color: #285f8f;
}

.dx-tagbox .dx-tag-content .dx-tag-remove-button {
  color: #285f8f;
}

.admin-page-card .dx-datagrid-header-panel {
  padding-top: 10px;
  padding-right: 10px;
}

#talent-checklist-grid .dx-datagrid-header-panel {
  padding-left: 10px;
}

.admin-user-card {
  padding: 1rem;
  background: #f8f9fa;
  border: 1px solid #e9ecef;
  border-radius: 1rem;
}

.admin-job-upload-panel .btn {
  min-width: 180px;
}

.admin-job-summary-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.admin-job-summary-actions > p {
  flex: 1 1 520px;
}

.admin-job-summary-actions > .btn {
  margin-left: auto;
}

.admin-job-upload-panel {
  width: 100%;
}

.admin-job-upload-progress {
  max-width: 420px;
}

.admin-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
}

.admin-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: 2rem 2rem 0;
}

.admin-header-tabs {
  margin-bottom: 0;
  border-bottom: 0;
  flex-wrap: nowrap;
}

.admin-header-tabs .nav-link {
  white-space: nowrap;
}

.admin-main {
  flex: 1;
  padding: 1.5rem 2rem 2rem;
}

.admin-page-card {
  background: #ffffff;
  border: 1px solid #e9ecef;
  border-radius: 1rem;
  box-shadow: 0 0.125rem 0.5rem rgba(33, 37, 41, 0.04);
}

.admin-summary-list dt {
  color: #6c757d;
  font-weight: 600;
}

.admin-summary-list dd {
  font-weight: 600;
}

.admin-summary-profile-media {
  display: flex;
  justify-content: center;
}

.admin-summary-profile-image,
.admin-summary-profile-placeholder {
  width: 132px;
  height: 132px;
  border-radius: 1rem;
}

.admin-summary-profile-image {
  object-fit: cover;
  border: 1px solid #dee2e6;
  background: #f8f9fa;
}

.admin-summary-profile-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dee2e6;
  background: #f8f9fa;
  color: #6c757d;
  font-size: 2rem;
  font-weight: 700;
}

.admin-grid-profile-image,
.admin-grid-profile-placeholder {
  width: 40px;
  height: 40px;
  border-radius: 999px;
}

.admin-grid-profile-image {
  display: block;
  object-fit: cover;
  border: 1px solid #dee2e6;
  background: #f8f9fa;
}

.admin-grid-profile-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dee2e6;
  background: #f8f9fa;
  color: #6c757d;
  font-size: 0.75rem;
  font-weight: 700;
}

.admin-user-image-preview-frame {
  display: flex;
  justify-content: center;
}

.admin-user-image-preview,
.admin-user-image-placeholder {
  width: 132px;
  height: 132px;
  border-radius: 1rem;
}

.admin-user-image-preview {
  display: block;
  object-fit: cover;
  border: 1px solid #dee2e6;
  background: #f8f9fa;
}

.admin-user-image-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dee2e6;
  background: #f8f9fa;
  color: #6c757d;
  font-size: 2rem;
  font-weight: 700;
}

.admin-job-summary-type {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
}

.admin-ai-confidence-button-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  color: #6f42c1;
  flex-shrink: 0;
}

.admin-ai-confidence-button-icon svg {
  width: 100%;
  height: 100%;
}

.admin-ai-details-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-weight: 600;
}

.candidate-search-why-match-button {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.admin-ai-action-button {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 600;
}

.admin-ai-inline-label-button {
  margin-left: auto;
}

.admin-form-label-with-action {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  width: 100%;
}

.admin-job-edit-form .dx-field-item-label,
.admin-job-edit-form .dx-field-item-label-content {
  width: 100%;
}

.admin-form-label-with-action .dx-field-item-label-text {
  flex: 1 1 auto;
  min-width: 0;
}

.admin-job-insights-card h2,
.admin-job-insights-card .h5 {
  margin-bottom: 0;
}

.admin-job-grid-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}

.candidate-search-editor-host {
  width: 100%;
}

.candidate-search-answer-editor {
  min-width: 14rem;
}

.candidate-search-non-negotiable-editor {
  display: inline-flex;
  align-items: center;
}

.admin-candidate-advanced-search {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.admin-candidate-advanced-search .collapse {
  width: 100%;
}

.admin-candidate-advanced-search-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 600;
}

.admin-candidate-advanced-search-toggle-icon {
  transition: transform 0.2s ease;
}

.admin-candidate-advanced-search-toggle:not(.collapsed) .admin-candidate-advanced-search-toggle-icon {
  transform: rotate(180deg);
}

.admin-candidate-view-toggle .btn {
  min-height: calc(1.5em + 0.75rem + 2px);
}

.admin-candidate-result-card {
  display: flex;
  flex-direction: column;
}

.admin-candidate-grid-avatar-cell {
  display: flex;
  align-items: center;
  justify-content: center;
}

.admin-candidate-card-avatar,
.admin-candidate-card-avatar-placeholder {
  width: 52px;
  height: 52px;
  border-radius: 999px;
  flex: 0 0 auto;
}

.admin-candidate-card-avatar {
  display: block;
  object-fit: cover;
  border: 1px solid #dee2e6;
  background: #f8f9fa;
}

.admin-candidate-card-avatar-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dee2e6;
  background: #f8f9fa;
  color: #6c757d;
  font-size: 0.85rem;
  font-weight: 700;
}

.admin-candidate-card-details dt {
  color: var(--admin-muted);
}

.admin-candidate-card-actions {
  margin-top: auto;
}

.admin-candidate-card-pagination-list .page-link {
  min-width: 2.25rem;
  min-height: calc(1.5em + 0.5rem + 2px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.admin-candidate-card-page-size-group {
  width: auto;
}

.admin-candidate-card-page-size-group .input-group-text,
.admin-candidate-card-page-size-group .form-select {
  min-height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  font-size: 0.875rem;
}

.admin-candidate-card-page-size-group .form-select {
  min-width: 4.5rem;
}

.admin-job-why-match-summary-card {
  padding: 1rem 1.25rem;
  background: #f8f9fa;
  border: 1px solid #e9ecef;
  border-radius: 1rem;
}

.admin-job-why-match-notes {
  display: grid;
  gap: 0.75rem;
}

.admin-job-why-match-note {
  padding: 0.9rem 1rem;
  background: #ffffff;
  border: 1px solid #e9ecef;
  border-radius: 0.9rem;
  box-shadow: 0 0.125rem 0.5rem rgba(33, 37, 41, 0.04);
  line-height: 1.5;
}

.admin-job-why-match-note-action {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
}

.admin-job-why-match-note-text {
  flex: 1 1 auto;
  min-width: 0;
}

.admin-cv-negative-add-button {
  flex: 0 0 auto;
  min-width: 2rem;
  padding: 0.2rem 0.5rem;
}

.admin-cv-negative-add-button-icon {
  display: inline-block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}

.admin-job-why-match-note-empty {
  color: #6c757d;
  background: #f8f9fa;
}

.admin-job-adjustment-opportunities {
  display: grid;
  gap: 0.9rem;
}

.admin-job-adjustment-opportunity {
  padding: 1rem 1.1rem;
  background: #ffffff;
  border: 1px solid #e9ecef;
  border-radius: 1rem;
  box-shadow: 0 0.125rem 0.5rem rgba(33, 37, 41, 0.04);
}

.admin-job-adjustment-opportunity-header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0.75rem;
}

.admin-job-adjustment-opportunity-question {
  font-weight: 700;
}

.admin-job-adjustment-opportunity-current {
  color: #6c757d;
}

.admin-job-adjustment-opportunity-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.85rem;
}

.admin-job-adjustment-opportunity-metric {
  padding: 0.4rem 0.65rem;
  background: #f8f9fa;
  border: 1px solid #e9ecef;
  border-radius: 999px;
  color: #495057;
  font-size: 0.875rem;
  font-weight: 600;
}

.admin-job-adjustment-opportunity-change {
  font-weight: 700;
}

.candidate-search-match-section + .candidate-search-match-section {
  margin-top: 1.25rem;
}

.admin-job-compare-toggle {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 1rem;
  background: #f8f9fa;
  border: 1px solid #e9ecef;
  border-radius: 1rem;
}

.admin-job-compare-toggle-label {
  font-weight: 600;
  line-height: 1.2;
}

.admin-job-compare-toggle-label small {
  display: block;
  color: #6c757d;
  font-size: 0.8rem;
  font-weight: 600;
}

.admin-job-answers-note {
  color: #6c757d;
  font-weight: 600;
}

.admin-job-question-section + .admin-job-question-section {
  margin-top: 1.5rem;
}

.admin-job-question-section-header {
  padding: 1rem 1.25rem;
  border-bottom: 1px solid #e9ecef;
  font-size: 1rem;
  font-weight: 700;
}

.admin-job-question-section-body {
  padding: 1.25rem;
}

.admin-job-question-table thead th {
  color: #6c757d;
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.admin-job-question-table th,
.admin-job-question-table td {
  vertical-align: middle;
}

.admin-job-answer-spacer {
  width: 1rem;
}

.admin-job-answer-select-host {
  min-width: 320px;
}

.job-potential-answer-editor {
  min-width: 240px;
}

.job-potential-answer-editor .dx-texteditor {
  width: 100%;
}

.job-potential-non-negotiable-editor .dx-checkbox {
  display: inline-flex;
}

.admin-job-answer-non-negotiable-host .dx-checkbox {
  display: inline-flex;
}

.admin-job-bic-column {
  display: none;
  text-align: center;
}

.admin-job-answers-compare-enabled .admin-job-bic-column {
  display: table-cell;
}

.admin-job-bic-match {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 999px;
  background: rgba(51, 122, 183, 0.12);
  color: #337ab7;
  font-size: 1rem;
  font-weight: 700;
}

.admin-playback-stat-card {
  height: 100%;
}

.admin-playback-stat-value {
  margin-top: 0.5rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}

.admin-playback-card p:last-child,
.admin-playback-card ol:last-child {
  margin-bottom: 0;
}

.admin-playback-card-comparison {
  border-color: rgba(13, 110, 253, 0.2);
  background: rgba(13, 110, 253, 0.03);
}

.admin-talent-ai-summary-card > .row,
.admin-talent-ai-summary-card > .candidate-search-match-section {
  margin-top: 1.5rem;
}

.admin-profile-score-card {
  display: flex;
  flex-direction: column;
}

.admin-profile-score-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.admin-profile-score-gauge {
  margin: 0.0rem auto 0;
  text-align: center;
}

.admin-profile-score-gauge-svg {
  width: min(100%, 210px);
  height: auto;
  overflow: visible;
}

.admin-profile-score-gauge-track,
.admin-profile-score-gauge-band {
  fill: none;
  stroke-linecap: round;
  stroke-width: 14;
}

.admin-profile-score-gauge-track {
  stroke: #e7edf6;
}

.admin-profile-score-gauge-band-danger {
  stroke: #dc3545;
}

.admin-profile-score-gauge-band-warning {
  stroke: #f0ad4e;
}

.admin-profile-score-gauge-band-success {
  stroke: #198754;
}

.admin-profile-score-gauge-needle {
  stroke: #1f2a44;
  stroke-width: 4;
  stroke-linecap: round;
}

.admin-profile-score-gauge-center {
  fill: #1f2a44;
}

.admin-profile-score-gauge-value {
  margin-top: -0.35rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}

.admin-profile-score-gauge-label {
  font-weight: 600;
  color: #1f2a44;
  text-align: right;
}

.admin-profile-score-summary {
  margin-top: 0.75rem;
}

.admin-profile-score-breakdown {
  margin-top: 1rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem 1rem;
}

.admin-profile-score-breakdown > div {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
}

.admin-profile-score-breakdown span {
  color: #667085;
}

.admin-profile-score-breakdown strong {
  color: #1f2a44;
  font-weight: 600;
}

.dx-layout-manager .dx-field-item:not(.dx-first-row) {
  padding-top: 20px!important;
}

@media (max-width: 991.98px) {
  .admin-shell {
    flex-direction: column;
  }

  .admin-sidebar {
    width: 100%;
    border-right: 0;
    border-bottom: 1px solid #dee2e6;
  }

  .admin-header {
    flex-wrap: wrap;
    padding-top: 1.5rem;
  }

  .admin-header-tabs {
    width: 100%;
    overflow-x: auto;
  }

  .admin-main {
    padding-top: 1rem;
  }

  .admin-profile-score-breakdown {
    grid-template-columns: 1fr;
  }
}

/* Admin refresh */

:root {
  --admin-navy: #09215f;
  --admin-blue: #337AB7;
  --admin-blue-strong: #285F8F;
  --admin-blue-soft: #edf2ff;
  --admin-ink: #1f2a44;
  --admin-muted: #667085;
  --admin-border: #d8e1f0;
  --admin-surface: #ffffff;
  --admin-surface-muted: #f7f9fc;
  --admin-highlight: #ff9900;
  --admin-highlight-soft: #fff2de;
  --admin-shadow: 0 1rem 2.5rem rgba(20, 39, 90, 0.08);
  --admin-shadow-soft: 0 0.75rem 1.75rem rgba(20, 39, 90, 0.05);
  --admin-primary-rgb: 51, 122, 183;
  --admin-primary-strong-rgb: 40, 95, 143;
  --admin-primary-soft-rgb: 237, 242, 255;
  --admin-highlight-rgb: 255, 153, 0;
  --admin-sidebar-gradient-start: #09215f;
  --admin-sidebar-gradient-mid: #12317f;
  --admin-sidebar-gradient-end: #173e94;
  --admin-sidebar-shadow-rgb: 9, 33, 95;
  --admin-body-surface-top: #f7f9fc;
  --admin-body-surface-bottom: #eef3f9;
  --admin-auth-surface-bottom: #edf3fb;
  --admin-secondary-button-color: #42526b;
  --admin-secondary-button-border: rgba(66, 82, 107, 0.2);
  --admin-sidebar-brand-start: rgba(255, 255, 255, 0.96);
  --admin-sidebar-brand-end: rgba(247, 249, 252, 0.92);
  --admin-sidebar-brand-shadow-rgb: 9, 33, 95;
  --admin-nav-active-start: rgba(255, 255, 255, 0.18);
  --admin-nav-active-end: rgba(255, 153, 0, 0.2);
  --admin-nav-active-shadow-rgb: 9, 33, 95;
  --admin-user-card-bg: rgba(255, 255, 255, 0.08);
  --admin-user-card-border: rgba(255, 255, 255, 0.12);
  --admin-user-card-highlight: rgba(255, 255, 255, 0.06);
  --admin-card-start: #ffffff;
  --admin-card-end: #f8fbff;
  --admin-card-border-rgb: 51, 122, 183;
  --admin-form-border: rgba(147, 164, 196, 0.5);
  --admin-form-shadow-rgb: 9, 33, 95;
  --admin-grid-selection-text: #ffffff;
  --admin-grid-selection-text-rgb: 255, 255, 255;
  --bs-primary: #337AB7;
  --bs-primary-rgb: 51, 122, 183;
  --bs-link-color: #337AB7;
  --bs-link-color-rgb: 51, 122, 183;
  --bs-link-hover-color: #09215f;
  --bs-link-hover-color-rgb: 9, 33, 95;
  --bs-body-color: #1f2a44;
  --bs-body-bg: #f4f7fb;
  --bs-secondary-color: #667085;
  --bs-heading-color: #09215f;
  --bs-border-color: #d8e1f0;
}

.admin-theme-blue {
  --admin-navy: #09215f;
  --admin-blue: #337AB7;
  --admin-blue-strong: #285F8F;
  --admin-blue-soft: #edf2ff;
  --admin-ink: #1f2a44;
  --admin-muted: #667085;
  --admin-border: #d8e1f0;
  --admin-surface: #ffffff;
  --admin-surface-muted: #f7f9fc;
  --admin-highlight: #ff9900;
  --admin-highlight-soft: #fff2de;
  --admin-shadow: 0 1rem 2.5rem rgba(20, 39, 90, 0.08);
  --admin-shadow-soft: 0 0.75rem 1.75rem rgba(20, 39, 90, 0.05);
  --admin-primary-rgb: 51, 122, 183;
  --admin-primary-strong-rgb: 40, 95, 143;
  --admin-primary-soft-rgb: 237, 242, 255;
  --admin-highlight-rgb: 255, 153, 0;
  --admin-sidebar-gradient-start: #09215f;
  --admin-sidebar-gradient-mid: #12317f;
  --admin-sidebar-gradient-end: #173e94;
  --admin-sidebar-shadow-rgb: 9, 33, 95;
  --admin-body-surface-top: #f7f9fc;
  --admin-body-surface-bottom: #eef3f9;
  --admin-auth-surface-bottom: #edf3fb;
  --admin-secondary-button-color: #42526b;
  --admin-secondary-button-border: rgba(66, 82, 107, 0.2);
  --admin-sidebar-brand-start: rgba(255, 255, 255, 0.96);
  --admin-sidebar-brand-end: rgba(247, 249, 252, 0.92);
  --admin-sidebar-brand-shadow-rgb: 9, 33, 95;
  --admin-nav-active-start: rgba(255, 255, 255, 0.18);
  --admin-nav-active-end: rgba(255, 153, 0, 0.2);
  --admin-nav-active-shadow-rgb: 9, 33, 95;
  --admin-user-card-bg: rgba(255, 255, 255, 0.08);
  --admin-user-card-border: rgba(255, 255, 255, 0.12);
  --admin-user-card-highlight: rgba(255, 255, 255, 0.06);
  --admin-card-start: #ffffff;
  --admin-card-end: #f8fbff;
  --admin-card-border-rgb: 51, 122, 183;
  --admin-form-border: rgba(147, 164, 196, 0.5);
  --admin-form-shadow-rgb: 9, 33, 95;
  --bs-primary: #337AB7;
  --bs-primary-rgb: 51, 122, 183;
  --bs-link-color: #337AB7;
  --bs-link-color-rgb: 51, 122, 183;
  --bs-link-hover-color: #09215f;
  --bs-link-hover-color-rgb: 9, 33, 95;
  --bs-body-color: #1f2a44;
  --bs-body-bg: #f4f7fb;
  --bs-secondary-color: #667085;
  --bs-heading-color: #09215f;
  --bs-border-color: #d8e1f0;
}

.admin-theme-red {
  --admin-navy: #6f1024;
  --admin-blue: #cf294f;
  --admin-blue-strong: #a91f40;
  --admin-blue-soft: #fff0f3;
  --admin-ink: #3a1830;
  --admin-muted: #7f5669;
  --admin-border: #f0d4dc;
  --admin-surface: #ffffff;
  --admin-surface-muted: #fff7f9;
  --admin-highlight: #ffb347;
  --admin-highlight-soft: #fff2df;
  --admin-shadow: 0 1rem 2.5rem rgba(111, 16, 36, 0.1);
  --admin-shadow-soft: 0 0.75rem 1.75rem rgba(111, 16, 36, 0.06);
  --admin-primary-rgb: 207, 41, 79;
  --admin-primary-strong-rgb: 169, 31, 64;
  --admin-primary-soft-rgb: 255, 240, 243;
  --admin-highlight-rgb: 255, 179, 71;
  --admin-sidebar-gradient-start: #6f1024;
  --admin-sidebar-gradient-mid: #951c39;
  --admin-sidebar-gradient-end: #b42344;
  --admin-sidebar-shadow-rgb: 111, 16, 36;
  --admin-body-surface-top: #fff7f9;
  --admin-body-surface-bottom: #fcecef;
  --admin-auth-surface-bottom: #fdeff2;
  --admin-secondary-button-color: #623346;
  --admin-secondary-button-border: rgba(98, 51, 70, 0.2);
  --admin-sidebar-brand-start: rgba(255, 255, 255, 0.97);
  --admin-sidebar-brand-end: rgba(255, 245, 247, 0.94);
  --admin-sidebar-brand-shadow-rgb: 111, 16, 36;
  --admin-nav-active-start: rgba(255, 255, 255, 0.2);
  --admin-nav-active-end: rgba(255, 179, 71, 0.24);
  --admin-nav-active-shadow-rgb: 111, 16, 36;
  --admin-user-card-bg: rgba(255, 255, 255, 0.1);
  --admin-user-card-border: rgba(255, 255, 255, 0.16);
  --admin-user-card-highlight: rgba(255, 255, 255, 0.08);
  --admin-card-start: #ffffff;
  --admin-card-end: #fff6f8;
  --admin-card-border-rgb: 207, 41, 79;
  --admin-form-border: rgba(204, 143, 161, 0.45);
  --admin-form-shadow-rgb: 111, 16, 36;
  --bs-primary: #cf294f;
  --bs-primary-rgb: 207, 41, 79;
  --bs-link-color: #cf294f;
  --bs-link-color-rgb: 207, 41, 79;
  --bs-link-hover-color: #6f1024;
  --bs-link-hover-color-rgb: 111, 16, 36;
  --bs-body-color: #3a1830;
  --bs-body-bg: #fff7f9;
  --bs-secondary-color: #7f5669;
  --bs-heading-color: #6f1024;
  --bs-border-color: #f0d4dc;
}

.admin-theme-green {
  --admin-navy: #0d4f45;
  --admin-blue: #1e9a74;
  --admin-blue-strong: #18785b;
  --admin-blue-soft: #e7faf3;
  --admin-ink: #173a36;
  --admin-muted: #5b7b75;
  --admin-border: #d0ebe3;
  --admin-surface: #ffffff;
  --admin-surface-muted: #f5fcfa;
  --admin-highlight: #dcb742;
  --admin-highlight-soft: #fff5d7;
  --admin-shadow: 0 1rem 2.5rem rgba(13, 79, 69, 0.09);
  --admin-shadow-soft: 0 0.75rem 1.75rem rgba(13, 79, 69, 0.05);
  --admin-primary-rgb: 30, 154, 116;
  --admin-primary-strong-rgb: 24, 120, 91;
  --admin-primary-soft-rgb: 231, 250, 243;
  --admin-highlight-rgb: 220, 183, 66;
  --admin-sidebar-gradient-start: #0d4f45;
  --admin-sidebar-gradient-mid: #13695b;
  --admin-sidebar-gradient-end: #1a7c69;
  --admin-sidebar-shadow-rgb: 13, 79, 69;
  --admin-body-surface-top: #f5fcfa;
  --admin-body-surface-bottom: #eaf6f2;
  --admin-auth-surface-bottom: #edf9f5;
  --admin-secondary-button-color: #355f58;
  --admin-secondary-button-border: rgba(53, 95, 88, 0.2);
  --admin-sidebar-brand-start: rgba(255, 255, 255, 0.97);
  --admin-sidebar-brand-end: rgba(244, 252, 249, 0.94);
  --admin-sidebar-brand-shadow-rgb: 13, 79, 69;
  --admin-nav-active-start: rgba(255, 255, 255, 0.2);
  --admin-nav-active-end: rgba(220, 183, 66, 0.22);
  --admin-nav-active-shadow-rgb: 13, 79, 69;
  --admin-user-card-bg: rgba(255, 255, 255, 0.1);
  --admin-user-card-border: rgba(255, 255, 255, 0.16);
  --admin-user-card-highlight: rgba(255, 255, 255, 0.08);
  --admin-card-start: #ffffff;
  --admin-card-end: #f4fcf9;
  --admin-card-border-rgb: 30, 154, 116;
  --admin-form-border: rgba(129, 188, 173, 0.45);
  --admin-form-shadow-rgb: 13, 79, 69;
  --bs-primary: #1e9a74;
  --bs-primary-rgb: 30, 154, 116;
  --bs-link-color: #1e9a74;
  --bs-link-color-rgb: 30, 154, 116;
  --bs-link-hover-color: #0d4f45;
  --bs-link-hover-color-rgb: 13, 79, 69;
  --bs-body-color: #173a36;
  --bs-body-bg: #f5fcfa;
  --bs-secondary-color: #5b7b75;
  --bs-heading-color: #0d4f45;
  --bs-border-color: #d0ebe3;
}

.admin-theme-yellow {
  --admin-navy: #6b5600;
  --admin-blue: #d1a500;
  --admin-blue-strong: #ab8500;
  --admin-blue-soft: #fff8df;
  --admin-ink: #43370a;
  --admin-muted: #7f7041;
  --admin-border: #efe0a9;
  --admin-surface: #ffffff;
  --admin-surface-muted: #fffdf5;
  --admin-highlight: #9c6bff;
  --admin-highlight-soft: #f1e8ff;
  --admin-shadow: 0 1rem 2.5rem rgba(107, 86, 0, 0.09);
  --admin-shadow-soft: 0 0.75rem 1.75rem rgba(107, 86, 0, 0.05);
  --admin-primary-rgb: 209, 165, 0;
  --admin-primary-strong-rgb: 171, 133, 0;
  --admin-primary-soft-rgb: 255, 248, 223;
  --admin-highlight-rgb: 156, 107, 255;
  --admin-sidebar-gradient-start: #6b5600;
  --admin-sidebar-gradient-mid: #8f7100;
  --admin-sidebar-gradient-end: #b18700;
  --admin-sidebar-shadow-rgb: 107, 86, 0;
  --admin-body-surface-top: #fffdf5;
  --admin-body-surface-bottom: #faf3da;
  --admin-auth-surface-bottom: #fcf6e2;
  --admin-secondary-button-color: #6b5b26;
  --admin-secondary-button-border: rgba(107, 91, 38, 0.2);
  --admin-sidebar-brand-start: rgba(255, 255, 255, 0.97);
  --admin-sidebar-brand-end: rgba(255, 251, 239, 0.94);
  --admin-sidebar-brand-shadow-rgb: 107, 86, 0;
  --admin-nav-active-start: rgba(255, 255, 255, 0.24);
  --admin-nav-active-end: rgba(156, 107, 255, 0.18);
  --admin-nav-active-shadow-rgb: 107, 86, 0;
  --admin-user-card-bg: rgba(255, 255, 255, 0.12);
  --admin-user-card-border: rgba(255, 255, 255, 0.18);
  --admin-user-card-highlight: rgba(255, 255, 255, 0.08);
  --admin-card-start: #ffffff;
  --admin-card-end: #fffcf2;
  --admin-card-border-rgb: 209, 165, 0;
  --admin-form-border: rgba(203, 176, 79, 0.45);
  --admin-form-shadow-rgb: 107, 86, 0;
  --bs-primary: #d1a500;
  --bs-primary-rgb: 209, 165, 0;
  --bs-link-color: #9b7b00;
  --bs-link-color-rgb: 155, 123, 0;
  --bs-link-hover-color: #6b5600;
  --bs-link-hover-color-rgb: 107, 86, 0;
  --bs-body-color: #43370a;
  --bs-body-bg: #fffdf5;
  --bs-secondary-color: #7f7041;
  --bs-heading-color: #6b5600;
  --bs-border-color: #efe0a9;
}

.admin-theme-silver {
  --admin-navy: #3e4958;
  --admin-blue: #7b8ba6;
  --admin-blue-strong: #5d6d87;
  --admin-blue-soft: #f0f3f8;
  --admin-ink: #27313f;
  --admin-muted: #697586;
  --admin-border: #d9e0ea;
  --admin-surface: #ffffff;
  --admin-surface-muted: #f8fafc;
  --admin-highlight: #4f9cf9;
  --admin-highlight-soft: #e9f3ff;
  --admin-shadow: 0 1rem 2.5rem rgba(62, 73, 88, 0.08);
  --admin-shadow-soft: 0 0.75rem 1.75rem rgba(62, 73, 88, 0.05);
  --admin-primary-rgb: 123, 139, 166;
  --admin-primary-strong-rgb: 93, 109, 135;
  --admin-primary-soft-rgb: 240, 243, 248;
  --admin-highlight-rgb: 79, 156, 249;
  --admin-sidebar-gradient-start: #3e4958;
  --admin-sidebar-gradient-mid: #556274;
  --admin-sidebar-gradient-end: #6a7789;
  --admin-sidebar-shadow-rgb: 62, 73, 88;
  --admin-body-surface-top: #f8fafc;
  --admin-body-surface-bottom: #eef2f6;
  --admin-auth-surface-bottom: #f1f4f8;
  --admin-secondary-button-color: #4d596b;
  --admin-secondary-button-border: rgba(77, 89, 107, 0.2);
  --admin-sidebar-brand-start: rgba(255, 255, 255, 0.97);
  --admin-sidebar-brand-end: rgba(245, 247, 250, 0.94);
  --admin-sidebar-brand-shadow-rgb: 62, 73, 88;
  --admin-nav-active-start: rgba(255, 255, 255, 0.2);
  --admin-nav-active-end: rgba(79, 156, 249, 0.18);
  --admin-nav-active-shadow-rgb: 62, 73, 88;
  --admin-user-card-bg: rgba(255, 255, 255, 0.1);
  --admin-user-card-border: rgba(255, 255, 255, 0.16);
  --admin-user-card-highlight: rgba(255, 255, 255, 0.08);
  --admin-card-start: #ffffff;
  --admin-card-end: #f7f9fc;
  --admin-card-border-rgb: 123, 139, 166;
  --admin-form-border: rgba(155, 170, 192, 0.45);
  --admin-form-shadow-rgb: 62, 73, 88;
  --bs-primary: #7b8ba6;
  --bs-primary-rgb: 123, 139, 166;
  --bs-link-color: #5d6d87;
  --bs-link-color-rgb: 93, 109, 135;
  --bs-link-hover-color: #3e4958;
  --bs-link-hover-color-rgb: 62, 73, 88;
  --bs-body-color: #27313f;
  --bs-body-bg: #f8fafc;
  --bs-secondary-color: #697586;
  --bs-heading-color: #3e4958;
  --bs-border-color: #d9e0ea;
}

.admin-theme-dark {
  --admin-navy: #f2f5fb;
  --admin-blue: #65a9ff;
  --admin-blue-strong: #8ec1ff;
  --admin-blue-soft: #1a2740;
  --admin-ink: #e6edf8;
  --admin-muted: #9fb0c9;
  --admin-border: #29374f;
  --admin-surface: #111a2c;
  --admin-surface-muted: #0c1322;
  --admin-highlight: #f8b84e;
  --admin-highlight-soft: #302516;
  --admin-shadow: 0 1rem 2.5rem rgba(3, 8, 18, 0.35);
  --admin-shadow-soft: 0 0.75rem 1.75rem rgba(3, 8, 18, 0.22);
  --admin-primary-rgb: 101, 169, 255;
  --admin-primary-strong-rgb: 142, 193, 255;
  --admin-primary-soft-rgb: 26, 39, 64;
  --admin-highlight-rgb: 248, 184, 78;
  --admin-sidebar-gradient-start: #08111f;
  --admin-sidebar-gradient-mid: #111d35;
  --admin-sidebar-gradient-end: #162847;
  --admin-sidebar-shadow-rgb: 3, 8, 18;
  --admin-body-surface-top: #0c1322;
  --admin-body-surface-bottom: #111b2f;
  --admin-auth-surface-bottom: #10192b;
  --admin-secondary-button-color: #d3dcec;
  --admin-secondary-button-border: rgba(211, 220, 236, 0.22);
  --admin-sidebar-brand-start: rgba(18, 31, 52, 0.96);
  --admin-sidebar-brand-end: rgba(12, 19, 34, 0.96);
  --admin-sidebar-brand-shadow-rgb: 3, 8, 18;
  --admin-nav-active-start: rgba(101, 169, 255, 0.18);
  --admin-nav-active-end: rgba(248, 184, 78, 0.18);
  --admin-nav-active-shadow-rgb: 3, 8, 18;
  --admin-user-card-bg: rgba(255, 255, 255, 0.06);
  --admin-user-card-border: rgba(255, 255, 255, 0.1);
  --admin-user-card-highlight: rgba(255, 255, 255, 0.04);
  --admin-card-start: #152137;
  --admin-card-end: #10192b;
  --admin-card-border-rgb: 101, 169, 255;
  --admin-form-border: rgba(91, 112, 145, 0.55);
  --admin-form-shadow-rgb: 3, 8, 18;
  --admin-grid-selection-text: #08111f;
  --admin-grid-selection-text-rgb: 8, 17, 31;
  --bs-primary: #65a9ff;
  --bs-primary-rgb: 101, 169, 255;
  --bs-link-color: #8ec1ff;
  --bs-link-color-rgb: 142, 193, 255;
  --bs-link-hover-color: #f2f5fb;
  --bs-link-hover-color-rgb: 242, 245, 251;
  --bs-body-color: #e6edf8;
  --bs-body-bg: #0c1322;
  --bs-secondary-color: #9fb0c9;
  --bs-heading-color: #f2f5fb;
  --bs-border-color: #29374f;
}

html {
  font-size: 15px;
}

@media (min-width: 768px) {
  html {
    font-size: 15px;
  }
}

body {
  font-family: Inter, "Segoe UI Variable Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 0.95rem;
  line-height: 1.55;
  letter-spacing: -0.01em;
  color: var(--admin-ink);
  background:
    radial-gradient(circle at top right, rgba(var(--admin-primary-rgb), 0.12), transparent 24rem),
    linear-gradient(180deg, var(--admin-body-surface-top) 0%, var(--admin-body-surface-bottom) 100%);
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  color: var(--admin-navy);
  letter-spacing: -0.03em;
}

a {
  transition: color 0.2s ease, opacity 0.2s ease;
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
  box-shadow: 0 0 0 0.15rem rgba(255, 255, 255, 0.95), 0 0 0 0.3rem rgba(var(--admin-primary-rgb), 0.25);
}

.btn {
  border-radius: 0.95rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

.btn-primary {
  --bs-btn-bg: var(--admin-blue);
  --bs-btn-border-color: var(--admin-blue);
  --bs-btn-hover-bg: var(--admin-blue-strong);
  --bs-btn-hover-border-color: var(--admin-blue-strong);
  --bs-btn-focus-shadow-rgb: var(--admin-primary-rgb);
  --bs-btn-active-bg: var(--admin-blue-strong);
  --bs-btn-active-border-color: var(--admin-blue-strong);
  --bs-btn-disabled-bg: var(--admin-blue);
  --bs-btn-disabled-border-color: var(--admin-blue);
  box-shadow: 0 0.75rem 1.5rem rgba(var(--admin-primary-rgb), 0.18);
}

.btn-outline-primary {
  --bs-btn-color: var(--admin-blue);
  --bs-btn-border-color: rgba(var(--admin-primary-rgb), 0.28);
  --bs-btn-hover-bg: var(--admin-blue);
  --bs-btn-hover-border-color: var(--admin-blue);
  --bs-btn-focus-shadow-rgb: var(--admin-primary-rgb);
  --bs-btn-active-bg: var(--admin-blue-strong);
  --bs-btn-active-border-color: var(--admin-blue-strong);
  --bs-btn-disabled-color: var(--admin-blue);
  --bs-btn-disabled-border-color: rgba(var(--admin-primary-rgb), 0.2);
  background: rgba(255, 255, 255, 0.92);
}

.btn-outline-secondary {
  --bs-btn-color: var(--admin-secondary-button-color);
  --bs-btn-border-color: var(--admin-secondary-button-border);
  --bs-btn-hover-bg: var(--admin-navy);
  --bs-btn-hover-border-color: var(--admin-navy);
  --bs-btn-hover-color: #fff;
  background: rgba(255, 255, 255, 0.92);
}

.form-control,
.form-select,
.input-group-text {
  border-radius: 0.95rem;
}

.form-control,
.form-select {
  min-height: 2.85rem;
  border-color: var(--admin-form-border);
  box-shadow: inset 0 1px 2px rgba(var(--admin-form-shadow-rgb), 0.02);
}

.form-control:focus,
.form-select:focus {
  border-color: rgba(var(--admin-primary-rgb), 0.45);
}

.table {
  --bs-table-bg: transparent;
  --bs-table-border-color: rgba(216, 225, 240, 0.9);
}

.table thead th {
  color: var(--admin-muted);
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.alert,
.badge,
.card,
.modal-content,
.nav-tabs .nav-link {
  border-radius: 0.95rem;
}

.alert {
  border-width: 1px;
  box-shadow: var(--admin-shadow-soft);
}

.alert-secondary {
  color: var(--admin-navy);
  background: rgba(var(--admin-primary-rgb), 0.08);
  border-color: rgba(var(--admin-primary-rgb), 0.12);
}

.alert-warning {
  color: var(--admin-navy);
  background: rgba(var(--admin-highlight-rgb), 0.12);
  border-color: rgba(var(--admin-highlight-rgb), 0.24);
}

.admin-app-shell .text-body-secondary,
.admin-auth-shell .text-body-secondary {
  color: var(--admin-muted) !important;
}

.admin-app-shell .admin-sidebar {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0)),
    linear-gradient(180deg, var(--admin-sidebar-gradient-start) 0%, var(--admin-sidebar-gradient-mid) 62%, var(--admin-sidebar-gradient-end) 100%);
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 1.25rem 0 2.25rem rgba(var(--admin-sidebar-shadow-rgb), 0.12);
}

.admin-app-shell .admin-brand {
  color: #ffffff;
  font-size: 1.1rem;
}

.admin-app-shell .admin-sidebar-brand .admin-brand {
  justify-content: center;
  padding: 0.85rem 1.1rem;
  border-radius: 1.25rem;
  background: linear-gradient(180deg, var(--admin-sidebar-brand-start) 0%, var(--admin-sidebar-brand-end) 100%);
  box-shadow: 0 1rem 2rem rgba(var(--admin-sidebar-brand-shadow-rgb), 0.22);
  color: var(--admin-navy);
}

.admin-app-shell .admin-sidebar-brand .admin-brand-logo {
  filter: saturate(1.02) contrast(1.02);
}

.admin-brand-mark {
  gap: 0.75rem;
}

.admin-brand-mark--stacked {
  flex-direction: column;
  text-align: center;
}

.admin-brand-name {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.admin-auth-shell .admin-brand {
  color: var(--admin-navy);
}

.admin-app-shell .admin-nav-link {
  color: rgba(255, 255, 255, 0.82);
  border-radius: 1rem;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.admin-app-shell .admin-nav-link:hover {
  background: rgba(255, 255, 255, 0.09);
  color: #ffffff;
  transform: translateX(2px);
}

.admin-app-shell .admin-nav-link.active {
  background: linear-gradient(135deg, var(--admin-nav-active-start), var(--admin-nav-active-end));
  color: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12), 0 0.75rem 1.5rem rgba(var(--admin-nav-active-shadow-rgb), 0.18);
}

.admin-app-shell .admin-user-card {
  padding: 1.1rem;
  background: var(--admin-user-card-bg);
  border: 1px solid var(--admin-user-card-border);
  border-radius: 1.1rem;
  color: #ffffff;
  box-shadow: inset 0 1px 0 var(--admin-user-card-highlight);
}

.admin-app-shell .admin-user-card .small,
.admin-app-shell .admin-user-card .text-body-secondary {
  color: rgba(255, 255, 255, 0.68) !important;
}

.admin-header h1 {
  font-size: 1.5rem;
  font-weight: 700;
}

.admin-page-card {
  background: linear-gradient(180deg, rgba(var(--admin-card-border-rgb), 0.02) 0%, rgba(var(--admin-card-border-rgb), 0.01) 100%), var(--admin-surface);
  border: 1px solid rgba(var(--admin-card-border-rgb), 0.14);
  border-radius: 1.25rem;
  box-shadow: var(--admin-shadow);
  backdrop-filter: blur(8px);
}

.admin-ai-modal .modal-content {
  background: linear-gradient(180deg, var(--admin-card-start) 0%, var(--admin-card-end) 100%);
  border: 1px solid rgba(var(--admin-card-border-rgb), 0.2);
  box-shadow: var(--admin-shadow);
}

.admin-ai-modal .modal-header,
.admin-ai-modal-header {
  background: linear-gradient(135deg, rgba(var(--admin-primary-rgb), 0.18), rgba(var(--admin-primary-rgb), 0.08));
  border-bottom: 1px solid rgba(var(--admin-primary-rgb), 0.22);
}

.admin-ai-modal .modal-header .modal-title,
.admin-ai-modal-header .modal-title {
  color: var(--admin-navy);
  font-weight: 700;
}

.admin-ai-modal .modal-header .btn-close,
.admin-ai-modal-header .btn-close {
  opacity: 0.85;
}

.admin-ai-modal .modal-header .btn-close:hover,
.admin-ai-modal-header .btn-close:hover {
  opacity: 1;
}

.admin-theme-dark .admin-ai-modal .modal-header .btn-close,
.admin-theme-dark .admin-ai-modal-header .btn-close {
  filter: invert(1) grayscale(100%) brightness(200%);
}

.admin-auth-shell {
  background:
    radial-gradient(circle at top left, rgba(var(--admin-highlight-rgb), 0.12), transparent 18rem),
    radial-gradient(circle at bottom right, rgba(var(--admin-primary-rgb), 0.18), transparent 24rem),
    linear-gradient(180deg, var(--admin-body-surface-top) 0%, var(--admin-auth-surface-bottom) 100%);
}

.admin-auth-shell .container,
.admin-auth-shell main.container {
  max-width: 1120px;
}

.admin-auth-shell .card {
  background: linear-gradient(180deg, var(--admin-card-start) 0%, var(--admin-card-end) 100%);
  border: 1px solid rgba(var(--admin-card-border-rgb), 0.14);
  border-radius: 1.2rem;
  box-shadow: 0 1.25rem 3rem rgba(20, 39, 90, 0.1);
  backdrop-filter: blur(10px);
}

.admin-auth-shell .card-body {
  padding: 2rem !important;
}

.admin-summary-list dt,
.admin-job-adjustment-opportunity-current,
.admin-job-answers-note,
.admin-job-compare-toggle-label small,
.admin-job-question-table thead th {
  color: var(--admin-muted);
}

.admin-ai-confidence-button-icon {
  color: var(--admin-blue);
}

.dx-button {
  border-radius: 0.95rem;
}

.dx-button.dx-button-mode-contained,
.dx-button.dx-button-default.dx-button-mode-contained {
  color: #ffffff;
  background-color: var(--admin-blue) !important;
  border-color: var(--admin-blue) !important;
  box-shadow: 0 0.75rem 1.5rem rgba(var(--admin-primary-rgb), 0.18);
}

.dx-button.dx-button-mode-contained .dx-button-content,
.dx-button.dx-button-mode-contained .dx-icon,
.dx-button.dx-button-mode-contained .dx-button-text,
.dx-button.dx-button-default.dx-button-mode-contained .dx-button-content,
.dx-button.dx-button-default.dx-button-mode-contained .dx-icon,
.dx-button.dx-button-default.dx-button-mode-contained .dx-button-text {
  color: inherit;
}

.dx-button.dx-button-mode-contained.dx-state-hover,
.dx-button.dx-button-mode-contained.dx-state-focused,
.dx-button.dx-button-mode-contained.dx-state-active,
.dx-button.dx-button-default.dx-button-mode-contained.dx-state-hover,
.dx-button.dx-button-default.dx-button-mode-contained.dx-state-focused,
.dx-button.dx-button-default.dx-button-mode-contained.dx-state-active {
  background-color: var(--admin-blue-strong) !important;
  border-color: var(--admin-blue-strong) !important;
}

.admin-login-submit-button.dx-button.dx-button-mode-contained,
.admin-login-submit-button.dx-button.dx-button-default {
  color: #ffffff;
  background-color: var(--admin-blue);
  border-color: var(--admin-blue);
  box-shadow: 0 0.75rem 1.5rem rgba(var(--admin-primary-rgb), 0.18);
}

.admin-login-submit-button.dx-button.dx-button-mode-contained .dx-button-content,
.admin-login-submit-button.dx-button.dx-button-mode-contained .dx-button-text,
.admin-login-submit-button.dx-button.dx-button-default .dx-button-content,
.admin-login-submit-button.dx-button.dx-button-default .dx-button-text {
  color: inherit;
}

.admin-login-submit-button.dx-button.dx-button-mode-contained.dx-state-hover,
.admin-login-submit-button.dx-button.dx-button-mode-contained.dx-state-focused,
.admin-login-submit-button.dx-button.dx-button-mode-contained.dx-state-active,
.admin-login-submit-button.dx-button.dx-button-default.dx-state-hover,
.admin-login-submit-button.dx-button.dx-button-default.dx-state-focused,
.admin-login-submit-button.dx-button.dx-button-default.dx-state-active {
  background-color: var(--admin-blue-strong);
  border-color: var(--admin-blue-strong);
}

.dx-button.dx-button-mode-outlined {
  color: var(--admin-blue);
  background-color: rgba(255, 255, 255, 0.92);
  border-color: rgba(var(--admin-primary-rgb), 0.28);
}

.dx-button.dx-button-mode-outlined .dx-button-content,
.dx-button.dx-button-mode-outlined .dx-icon,
.dx-button.dx-button-mode-outlined .dx-button-text {
  color: inherit;
}

.dx-button.dx-button-mode-outlined.dx-state-hover,
.dx-button.dx-button-mode-outlined.dx-state-focused,
.dx-button.dx-button-mode-outlined.dx-state-active {
  color: #ffffff;
  background-color: var(--admin-blue);
  border-color: var(--admin-blue);
}

.dx-button.dx-button-mode-text {
  color: var(--admin-blue);
}

.dx-button.dx-button-mode-text .dx-button-content,
.dx-button.dx-button-mode-text .dx-icon,
.dx-button.dx-button-mode-text .dx-button-text {
  color: inherit;
}

.dx-button.dx-button-mode-text.dx-state-hover,
.dx-button.dx-button-mode-text.dx-state-focused,
.dx-button.dx-button-mode-text.dx-state-active {
  background-color: rgba(var(--admin-primary-rgb), 0.08);
}

.admin-job-why-match-summary-card,
.candidate-search-match-section {
  padding: 1.2rem 1.35rem;
  background: linear-gradient(180deg, var(--admin-card-start) 0%, var(--admin-card-end) 100%);
  border: 1px solid rgba(var(--admin-card-border-rgb), 0.1);
  box-shadow: var(--admin-shadow-soft);
}

.dx-datagrid-rowsview .dx-selection.dx-row > td,
.dx-datagrid-rowsview .dx-selection.dx-row:hover > td,
.dx-datagrid-rowsview .dx-row-focused.dx-data-row > td,
.dx-datagrid-rowsview .dx-row-focused.dx-data-row.dx-selection > td {
  background-color: var(--admin-blue) !important;
  color: var(--admin-grid-selection-text) !important;
}

.dx-datagrid-rowsview .dx-selection.dx-row > td a:not(.btn):not(.dx-link),
.dx-datagrid-rowsview .dx-row-focused.dx-data-row > td a:not(.btn):not(.dx-link) {
  color: var(--admin-grid-selection-text) !important;
}

.candidate-search-match-section ul,
.candidate-search-match-section ol,
.admin-playback-card ol {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.8rem;
}

.candidate-search-match-section ul li,
.candidate-search-match-section ol li,
.admin-playback-card ol li {
  position: relative;
  line-height: 1.6;
}

.candidate-search-match-section ul li {
  padding-left: 1.45rem;
}

.candidate-search-match-section ul li::before {
  content: "";
  position: absolute;
  top: 0.55rem;
  left: 0;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--admin-blue) 0%, var(--admin-highlight) 100%);
  box-shadow: 0 0 0 0.2rem rgba(var(--admin-primary-rgb), 0.12);
}

.candidate-search-match-section ol,
.admin-playback-card ol {
  counter-reset: admin-list-item;
}

.candidate-search-match-section ol li,
.admin-playback-card ol li {
  padding-left: 2.1rem;
}

.candidate-search-match-section ol li::before,
.admin-playback-card ol li::before {
  counter-increment: admin-list-item;
  content: counter(admin-list-item);
  position: absolute;
  top: 0.05rem;
  left: 0;
  width: 1.45rem;
  height: 1.45rem;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--admin-blue-strong);
  background: rgba(var(--admin-primary-rgb), 0.1);
  border: 1px solid rgba(var(--admin-primary-rgb), 0.14);
}

.candidate-search-match-section ul li.text-body-secondary,
.candidate-search-match-section ol li.text-body-secondary {
  padding-left: 0;
}

.candidate-search-match-section ul li.text-body-secondary::before,
.candidate-search-match-section ol li.text-body-secondary::before {
  content: none;
}

.admin-job-why-match-note,
.admin-job-adjustment-opportunity {
  background: linear-gradient(180deg, var(--admin-card-start) 0%, var(--admin-card-end) 100%);
  border: 1px solid var(--admin-border);
  box-shadow: var(--admin-shadow-soft);
}

.admin-job-adjustment-opportunity-metric {
  background: rgba(var(--admin-primary-rgb), 0.08);
  border: 1px solid rgba(var(--admin-primary-rgb), 0.14);
  color: var(--admin-blue-strong);
}

.admin-job-compare-toggle {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid var(--admin-border);
  box-shadow: 0 0.75rem 1.75rem rgba(20, 39, 90, 0.04);
}

.admin-job-question-section-header {
  border-bottom-color: var(--admin-border);
  color: var(--admin-navy);
}

.admin-job-bic-match {
  background: rgba(var(--admin-primary-rgb), 0.12);
  color: var(--admin-blue);
}

.nav-tabs {
  gap: 0.2rem;
}

.nav-tabs .nav-link {
  border: 1px solid rgba(216, 225, 240, 0.8);
  background: rgba(255, 255, 255, 0.78);
  color: var(--admin-muted);
  font-weight: 600;
  box-shadow: 0 0.4rem 1rem rgba(20, 39, 90, 0.03);
}

.nav-tabs .nav-link.active {
  color: var(--admin-navy);
  background: var(--admin-surface);
  border-color: rgba(var(--admin-primary-rgb), 0.2);
}

.dx-texteditor,
.dx-dropdowneditor,
.dx-numberbox,
.dx-selectbox,
.dx-datagrid,
.dx-overlay-content {
  border-radius: 1rem;
}

.dx-texteditor.dx-editor-outlined,
.dx-dropdowneditor.dx-editor-outlined {
  background: var(--admin-surface);
  border-color: var(--admin-form-border);
  box-shadow: 0 0.5rem 1.5rem rgba(20, 39, 90, 0.03);
}

.dx-texteditor.dx-state-focused.dx-editor-outlined,
.dx-dropdowneditor.dx-state-focused.dx-editor-outlined {
  border-color: rgba(var(--admin-primary-rgb), 0.45);
  box-shadow: 0 0 0 0.25rem rgba(var(--admin-primary-rgb), 0.12);
}

.dx-datagrid {
  overflow: hidden;
  border: 1px solid rgba(216, 225, 240, 0.9);
  box-shadow: 0 1rem 2.25rem rgba(20, 39, 90, 0.06);
}

.dx-datagrid-headers {
  background: linear-gradient(180deg, var(--admin-card-start) 0%, var(--admin-card-end) 100%);
}

.dx-datagrid-headers .dx-datagrid-text-content {
  color: var(--admin-muted);
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  font-size: 0.78rem;
}

.modal-backdrop.show {
  background-color: rgba(9, 33, 95, 0.7);
  opacity: 1;
}

.modal-content {
  overflow: hidden;
  border: 1px solid rgba(216, 225, 240, 0.9);
  border-radius: 1.3rem;
  box-shadow: 0 1.5rem 3.5rem rgba(9, 33, 95, 0.22);
  background: linear-gradient(180deg, var(--admin-card-start) 0%, var(--admin-card-end) 100%);
}

.admin-theme-dark .admin-page-card,
.admin-theme-dark .candidate-search-match-section,
.admin-theme-dark .admin-job-why-match-summary-card,
.admin-theme-dark .admin-job-why-match-note,
.admin-theme-dark .admin-job-adjustment-opportunity,
.admin-theme-dark .admin-playback-card,
.admin-theme-dark .tab-content,
.admin-theme-dark .tab-pane {
  color: var(--admin-ink);
}

.admin-theme-dark .admin-dashboard-referrals-table,
.admin-theme-dark .admin-dashboard-referrals-table td,
.admin-theme-dark .admin-dashboard-referrals-table tbody th,
.admin-theme-dark .admin-dashboard-referrals-table thead th {
  color: var(--admin-ink);
  border-color: rgba(255, 255, 255, 0.12);
}

.admin-theme-dark .admin-dashboard-referrals-table tbody tr {
  background: rgba(255, 255, 255, 0.02);
}

.admin-theme-dark .form-control,
.admin-theme-dark .form-select,
.admin-theme-dark .input-group-text {
  background-color: #d7dee8 !important;
  color: #131C30 !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
}

.admin-theme-dark .btn-outline-secondary {
  --bs-btn-color: #131C30;
  color: #131C30;
}

.admin-theme-dark .nav-tabs .nav-link:not(.active) {
  color: #131C30;
}

.admin-theme-dark .form-control::placeholder,
.admin-theme-dark .form-select::placeholder {
  color: #52627d !important;
}

.admin-theme-dark .form-control[type="file"]::file-selector-button,
.admin-theme-dark .form-control[type="file"]::-webkit-file-upload-button {
  color: #131C30 !important;
  background-color: #c9d2de !important;
  border-color: rgba(19, 28, 48, 0.12) !important;
}

.admin-theme-dark .dx-texteditor.dx-editor-outlined,
.admin-theme-dark .dx-dropdowneditor.dx-editor-outlined,
.admin-theme-dark .dx-numberbox.dx-editor-outlined,
.admin-theme-dark .dx-selectbox.dx-editor-outlined {
  background: #d7dee8 !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
  box-shadow: 0 0.5rem 1.5rem rgba(3, 8, 18, 0.12);
}

.admin-theme-dark .dx-texteditor-input,
.admin-theme-dark .dx-placeholder,
.admin-theme-dark .dx-texteditor .dx-texteditor-input,
.admin-theme-dark .dx-dropdowneditor .dx-texteditor-input {
  color: #14213a !important;
  background: transparent !important;
}

.admin-theme-dark .dx-placeholder::before {
  color: #52627d !important;
}

.admin-theme-dark .dx-field-item-label-text,
.admin-theme-dark .dx-field-item-label-content,
.admin-theme-dark .dx-field-item-label {
  color: #eef4ff !important;
}

.admin-theme-dark .admin-page-card h1,
.admin-theme-dark .admin-page-card h2,
.admin-theme-dark .admin-page-card h3,
.admin-theme-dark .admin-page-card h4,
.admin-theme-dark .admin-page-card h5,
.admin-theme-dark .admin-page-card h6,
.admin-theme-dark .candidate-search-match-section h1,
.admin-theme-dark .candidate-search-match-section h2,
.admin-theme-dark .candidate-search-match-section h3,
.admin-theme-dark .candidate-search-match-section h4,
.admin-theme-dark .candidate-search-match-section h5,
.admin-theme-dark .candidate-search-match-section h6,
.admin-theme-dark .admin-playback-card h1,
.admin-theme-dark .admin-playback-card h2,
.admin-theme-dark .admin-playback-card h3,
.admin-theme-dark .admin-playback-card h4,
.admin-theme-dark .admin-playback-card h5,
.admin-theme-dark .admin-playback-card h6,
.admin-theme-dark .admin-page-card p,
.admin-theme-dark .candidate-search-match-section p,
.admin-theme-dark .admin-playback-card p,
.admin-theme-dark .candidate-search-match-section li,
.admin-theme-dark .admin-playback-card li,
.admin-theme-dark .admin-page-card .fw-semibold:not(.text-body-secondary),
.admin-theme-dark .admin-page-card .text-primary,
.admin-theme-dark .admin-page-card .text-success {
  color: var(--admin-ink) !important;
}

.admin-theme-dark .admin-job-question-section-header,
.admin-theme-dark .admin-job-question-table tbody th,
.admin-theme-dark .admin-job-question-table tbody td,
.admin-theme-dark .admin-job-question-table tbody td strong,
.admin-theme-dark .admin-job-question-table tbody td span {
  color: var(--admin-ink) !important;
}

.admin-theme-dark .admin-job-question-table thead th {
  color: #d7e3f6;
  border-color: rgba(255, 255, 255, 0.12);
}

.admin-theme-dark .admin-job-question-table tbody tr {
  border-color: rgba(255, 255, 255, 0.08);
}

.admin-theme-dark .dx-datagrid {
  background: linear-gradient(180deg, #13203a 0%, #0f182b 100%) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 1rem 2.25rem rgba(3, 8, 18, 0.28);
}

.admin-theme-dark .dx-datagrid-headers,
.admin-theme-dark .dx-datagrid-header-panel,
.admin-theme-dark .dx-datagrid-filter-panel,
.admin-theme-dark .dx-datagrid-pager,
.admin-theme-dark .dx-datagrid-total-footer {
  background: #16233d !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
}

.admin-theme-dark .dx-datagrid-headers .dx-datagrid-table,
.admin-theme-dark .dx-datagrid-headers .dx-header-row > td,
.admin-theme-dark .dx-datagrid-headers .dx-row > td,
.admin-theme-dark .dx-datagrid-header-panel .dx-toolbar,
.admin-theme-dark .dx-datagrid-filter-panel .dx-datagrid-filter-panel-text,
.admin-theme-dark .dx-datagrid-filter-panel .dx-icon,
.admin-theme-dark .dx-datagrid-total-footer .dx-row > td {
  background: #16233d !important;
  color: #eef4ff !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
}

.admin-theme-dark .dx-datagrid-headers .dx-datagrid-text-content,
.admin-theme-dark .dx-datagrid-header-panel .dx-toolbar-label,
.admin-theme-dark .dx-datagrid-headers .dx-header-row > td,
.admin-theme-dark .dx-datagrid-pager,
.admin-theme-dark .dx-page,
.admin-theme-dark .dx-page-size,
.admin-theme-dark .dx-info {
  color: #eef4ff !important;
}

.admin-theme-dark .dx-datagrid-rowsview,
.admin-theme-dark .dx-datagrid-rowsview .dx-row,
.admin-theme-dark .dx-datagrid-rowsview .dx-data-row > td,
.admin-theme-dark .dx-datagrid-content .dx-row > td {
  background: #101a2d !important;
  color: #eef4ff !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

.admin-theme-dark .dx-datagrid-rowsview .dx-datagrid-table,
.admin-theme-dark .dx-datagrid-content,
.admin-theme-dark .dx-datagrid-content .dx-datagrid-table,
.admin-theme-dark .dx-datagrid-rowsview .dx-freespace-row,
.admin-theme-dark .dx-datagrid-rowsview .dx-freespace-row td {
  background: #101a2d !important;
}

.admin-theme-dark .dx-datagrid-rowsview .dx-row-alt > td,
.admin-theme-dark .dx-datagrid-rowsview .dx-row-alt.dx-data-row > td {
  background: #14213a !important;
}

.admin-theme-dark .dx-datagrid-rowsview .dx-row:hover > td {
  background: #182741 !important;
}

.admin-theme-dark .dx-datagrid-rowsview .dx-link,
.admin-theme-dark .dx-datagrid-rowsview a:not(.btn) {
  color: #eef4ff !important;
}

.admin-theme-dark .dx-datagrid .dx-header-filter,
.admin-theme-dark .dx-datagrid .dx-sort,
.admin-theme-dark .dx-datagrid .dx-icon,
.admin-theme-dark .dx-datagrid .dx-column-indicators {
  color: #eef4ff !important;
}

.modal-header {
  padding: 1.1rem 1.35rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  background:
    radial-gradient(circle at top right, rgba(255, 255, 255, 0.18), transparent 8rem),
    linear-gradient(135deg, #09215f 0%, #173e94 100%);
  color: #ffffff;
}

.modal-header .modal-title {
  color: #ffffff;
  font-size: 1.05rem;
  font-weight: 700;
}

.modal-header .btn-close {
  padding: 0.7rem;
  border-radius: 999px;
  background-color: rgba(255, 255, 255, 0.94);
  opacity: 1;
  box-shadow: 0 0.5rem 1rem rgba(9, 33, 95, 0.18);
}

.modal-body {
  padding: 1.35rem 1.45rem 1.5rem;
}

.modal-body .table-responsive,
.modal-body .alert,
.modal-body .candidate-search-match-section,
.modal-body .admin-job-why-match-summary-card {
  margin-top: 0.35rem;
}

@media (max-width: 991.98px) {
  .admin-app-shell .admin-sidebar {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    min-height: auto;
  }
}
