@import url('_root.css');
@import url('_bootstrap_overrides.css');
@import url('_select2_overrides.css');

.title-font {font-family: var(--manpower-title);}

#global-loading-overlay {position: fixed;inset: 0;z-index: 3000;}
#global-loading-overlay .loading-backdrop {position: absolute;inset: 0;background: rgba(255, 255, 255, 0.75);}
#global-loading-overlay .loading-content {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;}

.toast-success { background-color: var(--color-success) !important; color: #fff !important; border-left: 5px solid color-mix(in srgb, var(--color-success), #000 20%) !important; }
.toast-error   { background-color: var(--color-danger) !important;  color: #fff !important; border-left: 5px solid color-mix(in srgb, var(--color-danger),  #000 20%) !important; }
.toast-warning { background-color: var(--color-warning) !important; color: #333 !important; border-left: 5px solid color-mix(in srgb, var(--color-warning), #000 20%) !important; }
.toast-info    { background-color: var(--color-info) !important;    color: #fff !important; border-left: 5px solid color-mix(in srgb, var(--color-info),    #000 20%) !important; }

.mp-navbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1.25rem;
  height: 60px;
  background: var(--manpower-header);
  border-bottom: 1px solid #e5e5e5;
  box-shadow: 0 2px 4px var(--shadow-faded);
}

.mp-brand {font-weight: 600;font-size: 1.1rem;text-decoration: none;color: var(--manpower-main-font);}
.mp-navbar-right {font-size: 0.9rem;color: var(--manpower-secondary-font);}

.mp-toast-container {
  position: fixed;top: 80px;right: 20px;z-index: 4000;display: flex;flex-direction: column;gap: 10px;
}

.mp-toast {
  min-width: 250px;max-width: 350px;padding: 12px 16px;border-radius: 6px;
  box-shadow: 0 4px 12px var(--shadow-faded);font-size: 0.9rem;animation: fadeInUp 0.2s ease;
}

#theme-toggle .theme-icon {font-size: 1.1rem;line-height: 1;display: inline-block;}
#theme-toggle .theme-label {font-size: 0.85rem;}

.mp-theme-btn {
  --_btn-color: var(--bs-primary, var(--manpower-button-bg));
  --_btn-border: color-mix(in srgb, var(--_bg), #000 70%);
  color: var(--_btn-color);
  border-color: var(--_btn-border);
  padding: 0.25rem 0.5rem;
  line-height: 1;
}

.mp-theme-btn .theme-icon { font-size: 1.05rem; line-height: 1; }
.mp-theme-btn .theme-label { font-size: 0.85rem; }

.mp-theme-btn:hover,
.mp-theme-btn:focus {
  color: var(--manpower-button-bg);
  border-color: color-mix(in srgb, var(--manpower-button-bg), transparent 50%);
  background-color: color-mix(in srgb, var(--manpower-button-bg) 20%, transparent);
}

.mp-theme-btn:active {transform: translateY(0);}
.info-btn {background: none;border: none !important;cursor: pointer;color: var(--bs-primary);}
.hidden {display: none;}

.mp-career-list-item.active {
  color: var(--color-text);
  background: color-mix(in srgb, var(--bs-primary), var(--color-surface) 88%);
  border-color: var(--bs-primary);
  box-shadow: inset 3px 0 0 var(--bs-primary);
}

.mp-career-list-item.active .text-muted {color: var(--color-text-muted) !important;}

.action-bar {
  display: flex;align-items: center;justify-content: space-between;gap: 2rem;
  margin-top: 1.25rem;padding: 1.25rem 1.5rem;
  background: var(--color-bg);border: 1px solid var(--color-border);border-radius: 12px;
}
.action-bar > div:first-child {display: flex;flex-direction: column;gap: 0.2rem;}
.action-bar strong {font-size: 0.82rem;}
.action-bar span {color: var(--color-text-muted);font-size: 0.7rem;}
.action-bar > div:last-child {display: flex;gap: 0.75rem;flex: 0 0 auto;}

@media (max-width: 700px) {
  .action-bar {align-items: stretch;flex-direction: column;}
  .action-bar > div:last-child {justify-content: flex-end;}
}