
.hr-crm-case-file input,
.hr-crm-case-file button,
.hr-crm-case-file select,
.hr-crm-case-file textarea,
.hr-crm-case-file .hr-crm-profile-name,
.hr-crm-case-file .hr-crm-profile-sub,
.hr-crm-case-file .hr-crm-profile-row,
.hr-crm-case-file .hr-crm-metric,
.hr-crm-case-file .hr-crm-card,
.hr-crm-case-file .hr-crm-action-card,
.hr-crm-case-file .hr-crm-alert,
.hr-crm-case-file .hr-crm-tabs,
.hr-crm-case-file .hr-crm-task {
  font-family: Montserrat, Arial, Helvetica, sans-serif;
}




.hr-crm-case-file .hr-crm-brand-icon i.fa,
.hr-crm-case-file .hr-crm-avatar i.fa {
  margin-right: 0;
}

.hr-crm-case-file {
      --crm-primary: #1769ff;
      --crm-primary-dark: #0a3fbd;
      --crm-navy: #07162f;
      --crm-cyan: #00bcd4;
      --crm-green: #0b8f5a;
      --crm-red: #d92d20;
      --crm-orange: #f79009;
      --crm-purple: #6938ef;
      --crm-bg: #f4f7fb;
      --crm-panel: #ffffff;
      --crm-soft-blue: #eef6ff;
      --crm-border: #e5eaf2;
      --crm-border-strong: #d8e0ec;
      --crm-text: #000000;
      --crm-muted: #4b5563;
      --crm-shadow: 0 18px 50px rgba(7, 22, 47, .08);
      --crm-shadow-sm: 0 10px 26px rgba(7, 22, 47, .06);
      font-family: Montserrat, Arial, Helvetica, sans-serif;
      font-size: 17px;
      line-height: 1.58;
      color: var(--crm-text);
      background: radial-gradient(circle at top right, rgba(23, 105, 255, .12), transparent 28%), linear-gradient(180deg, #f7fbff 0%, #f4f7fb 46%, #ffffff 100%);
      padding: 1rem 0 2.25rem;
    }

/* FontAwesome fix:
   Do not let the case-file Montserrat styles override the icon font. */
.hr-crm-case-file i.fa {
  font-family: FontAwesome, "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  font-style: normal !important;
  display: inline-block;
  min-width: 1.15em;
  text-align: center;
  line-height: 1;
  margin-right: .35rem;
}

.hr-crm-case-file .hr-crm-brand-icon i.fa,
.hr-crm-case-file .hr-crm-avatar i.fa {
  margin-right: 0;
}
.hr-crm-case-file * { box-sizing: border-box; }
    
.hr-crm-case-file .small, .hr-crm-case-file small { font-size: 17px; }
    .hr-crm-case-file .text-muted { color: var(--crm-muted) !important; }
    .hr-crm-case-file a { color: var(--crm-primary); font-weight: 600; }
    .hr-crm-shell { background: rgba(255,255,255,.86); border: 1px solid var(--crm-border); border-radius: 12px; box-shadow: var(--crm-shadow); overflow: hidden; }
    .hr-crm-topbar { min-height: 76px; padding: 1rem 1.25rem; background: #fff; border-bottom: 1px solid var(--crm-border); display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
    .hr-crm-brand { display: flex; align-items: center; gap: .85rem; font-weight: 700; color: var(--crm-navy); letter-spacing: -.02em; }
    .hr-crm-brand-icon { width: 42px; height: 42px; border-radius: 10px; background: linear-gradient(135deg, var(--crm-primary), var(--crm-cyan)); color: #fff; display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 12px 24px rgba(23,105,255,.25); }
    .hr-crm-top-meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .75rem; }
    .hr-crm-chip { display: inline-flex; align-items: center; gap: .45rem; border: 1px solid var(--crm-border); background: #fff; border-radius: 999px; padding: .45rem .85rem; font-weight: 600; color: #000; box-shadow: 0 8px 18px rgba(7,22,47,.04); }
    .hr-crm-body { display: grid; grid-template-columns: 290px minmax(0, 1fr) 380px; min-height: 760px; }
    .hr-crm-profile { background: linear-gradient(180deg, #fff 0%, #f9fbff 100%); border-right: 1px solid var(--crm-border); padding: 1.4rem; }
    .hr-crm-avatar { width: 104px; height: 104px; border-radius: 12px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #dbeafe, #ecfeff); color: var(--crm-primary); font-size: 42px; margin-bottom: 1rem; border: 1px solid #d6e6ff; box-shadow: 0 14px 30px rgba(23,105,255,.12); }
    .hr-crm-profile-name { color: #000; font-weight: 700; font-size: 1.45rem; line-height: 1.18; margin-bottom: .35rem; letter-spacing: -.03em; }
    .hr-crm-profile-sub { color: var(--crm-muted); font-weight: 700; word-break: break-word; }
    .hr-crm-profile-list { display: grid; gap: .85rem; margin-top: 1.25rem; }
    .hr-crm-profile-row { background: #fff; border: 1px solid var(--crm-border); border-radius: 12px; padding: .85rem; }
    .hr-crm-profile-row-label { color: var(--crm-muted); font-size: 17px; font-weight: 600; margin-bottom: .2rem; }
    .hr-crm-profile-row-value { color: #000; font-weight: 600; word-break: break-word; }
    .hr-crm-main { padding: 1.4rem; min-width: 0; }
    .hr-crm-hero { background: radial-gradient(circle at 88% 10%, rgba(0,188,212,.24), transparent 25%), linear-gradient(135deg, #07162f 0%, #0b2a66 58%, #1769ff 100%); color: #fff; border-radius: 12px; padding: 1.35rem; box-shadow: 0 24px 55px rgba(7,22,47,.18); margin-bottom: 1.25rem; overflow: hidden; position: relative; }
    .hr-crm-hero::after { content: ""; position: absolute; width: 220px; height: 220px; right: -90px; bottom: -100px; border-radius: 999px; background: rgba(255,255,255,.09); }
    .hr-crm-eyebrow { color: rgba(255,255,255,.78); font-size: 17px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; margin-bottom: .4rem; }
    .hr-crm-title { color: #fff; font-size: clamp(1.85rem, 2.2vw, 2.75rem); line-height: 1.08; font-weight: 700; letter-spacing: -.05em; margin: 0 0 .45rem; position: relative; z-index: 1; }
    .hr-crm-hero-subtitle { color: rgba(255,255,255,.84); font-weight: 700; position: relative; z-index: 1; }
    .hr-crm-tag-row { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; position: relative; z-index: 1; }
    .hr-crm-tag, .hr-response-tag { display: inline-flex; align-items: center; justify-content: center; gap: .35rem; border-radius: 999px; padding: .45rem .75rem; font-size: 17px; font-weight: 700; color: #000; background: #fff; border: 1px solid rgba(255,255,255,.8); text-transform: none; letter-spacing: 0; }
    .hr-crm-tag--blue { background: #eaf3ff; color: #053a80; border-color: #bfd9ff; }
    .hr-crm-tag--green, .hr-response-tag--yes { background: #eafaf4; color: #045c3a; border-color: #bdebd8; }
    .hr-crm-tag--yellow, .hr-response-tag--unsure { background: #fff7e6; color: #8a5200; border-color: #ffe2a3; }
    .hr-crm-tag--red { background: #fff1f2; color: #9f1239; border-color: #ffd0d8; }
    .hr-crm-tag--purple { background: #f3f0ff; color: #4c2c92; border-color: #ddd6fe; }
    .hr-response-tag--no { background: #f3f4f6; color: #111827; border-color: #d1d5db; }
    .hr-crm-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .85rem; margin-bottom: 1.25rem; }
    .hr-crm-metric { background: #fff; border: 1px solid var(--crm-border); border-radius: 10px; padding: 1rem; box-shadow: var(--crm-shadow-sm); min-height: 114px; }
    .hr-crm-metric-label { color: var(--crm-muted); font-size: 17px; font-weight: 600; margin-bottom: .4rem; }
    .hr-crm-metric-value { color: #000; font-weight: 700; line-height: 1.3; }
    .hr-crm-tabs { background: #fff; border: 1px solid var(--crm-border); border-radius: 10px; padding: .45rem; display: flex; flex-wrap: wrap; gap: .4rem; box-shadow: 0 12px 28px rgba(7,22,47,.05); margin-bottom: 1rem; }
    .hr-crm-tabs .nav-link { border: 0; border-radius: 12px; color: #000; font-size: 17px; font-weight: 700; padding: .72rem 1rem; background: transparent; }
    .hr-crm-tabs .nav-link:hover { background: var(--crm-soft-blue); color: #000; }
    .hr-crm-tabs .nav-link.active { color: #fff; background: var(--crm-primary); box-shadow: 0 10px 20px rgba(23,105,255,.22); }
    .hr-crm-card { background: #fff; border: 1px solid var(--crm-border); border-radius: 12px; box-shadow: var(--crm-shadow-sm); overflow: hidden; margin-bottom: 1rem; }
    .hr-crm-card-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.15rem; border-bottom: 1px solid var(--crm-border); background: linear-gradient(180deg, #fff 0%, #fbfdff 100%); }
    .hr-crm-card-title { margin: 0; color: #000; font-size: 1.15rem; font-weight: 700; letter-spacing: -.02em; }
    .hr-crm-card-help { color: var(--crm-muted); font-size: 17px; font-weight: 650; margin-top: .15rem; }
    .hr-crm-card-body { padding: 1.15rem; }
    .hr-crm-info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; }
    .hr-crm-info-item { border: 1px solid var(--crm-border); background: #fff; border-radius: 12px; padding: .95rem; min-height: 86px; }
    .hr-crm-info-label { color: var(--crm-muted); font-size: 17px; font-weight: 600; margin-bottom: .25rem; }
    .hr-crm-info-value { color: #000; font-weight: 600; word-break: break-word; }
    .hr-crm-side { background: #f8fbff; border-left: 1px solid var(--crm-border); padding: 1.4rem; }
    .hr-crm-sticky { position: sticky; top: 1rem; }
    .hr-crm-action-card { background: #fff; border: 1px solid var(--crm-border); border-radius: 12px; box-shadow: var(--crm-shadow-sm); overflow: hidden; margin-bottom: 1rem; }
    .hr-crm-action-header { padding: 1rem 1.1rem; background: var(--crm-navy); color: #fff; font-size: 1.1rem; font-weight: 700; }
    .hr-crm-action-body { padding: 1rem; display: grid; gap: .75rem; }
    .hr-crm-action-btn { display: flex; justify-content: space-between; align-items: center; gap: .75rem; border-radius: 12px; padding: .85rem .95rem; font-size: 17px; font-weight: 700; text-decoration: none !important; border: 1px solid var(--crm-border-strong); background: #fff; color: #000 !important; box-shadow: 0 6px 0 #dbe2ec; transition: .16s ease; }
    .hr-crm-action-btn:hover { transform: translateY(1px); background: #f8fafc; color: #000 !important; box-shadow: 0 4px 0 #dbe2ec; }
    .hr-crm-action-btn--primary { background: var(--crm-primary); color: #fff !important; border-color: var(--crm-primary); box-shadow: 0 6px 0 var(--crm-primary-dark); }
    .hr-crm-action-btn--primary:hover { background: var(--crm-primary-dark); color: #fff !important; box-shadow: 0 4px 0 #062b82; }
    .hr-crm-action-btn--dark { background: var(--crm-navy); color: #fff !important; border-color: var(--crm-navy); box-shadow: 0 6px 0 #020817; }
    .hr-crm-action-btn--dark:hover { background: #0b2a66; color: #fff !important; box-shadow: 0 4px 0 #020817; }
    .hr-crm-action-btn--warning { background: #fff7e6; color: #000 !important; border-color: #ffd48a; box-shadow: 0 6px 0 #ffd48a; }
    .hr-crm-action-btn--warning:hover { background: #ffefc2; color: #000 !important; box-shadow: 0 4px 0 #ffd48a; }
    .hr-crm-task { list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem; }
    .hr-crm-task-item { display: grid; grid-template-columns: 1fr auto; gap: .8rem; align-items: center; border: 1px solid var(--crm-border); background: #fff; border-radius: 12px; padding: .85rem; }
    .hr-crm-task-name { color: #000; font-weight: 700; }
    .hr-crm-task-hint { color: var(--crm-muted); font-weight: 650; font-size: 17px; margin-top: .15rem; }
    .hr-crm-alert-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; margin-bottom: 1rem; }
    .hr-crm-alert { border-radius: 10px; padding: 1rem; background: #fff; border: 1px solid var(--crm-border); color: #000; box-shadow: var(--crm-shadow-sm); }
    .hr-crm-alert--warning { border-left: 6px solid var(--crm-orange); }
    .hr-crm-alert--danger { border-left: 6px solid var(--crm-red); }
    .hr-crm-alert--info { border-left: 6px solid var(--crm-primary); }
    .hr-review-history-wrapper, .hr-review-history-wrapper *, .hr-review-history-wrapper .card, .hr-review-history-wrapper .card * { font-size: 17px !important; line-height: 1.6 !important; color: #000; }
    .hr-review-history-wrapper .text-muted { color: var(--crm-muted) !important; }
    .hr-review-history-wrapper > .card > .card-header > .d-flex.gap-2.flex-wrap { display: none !important; }
    
/* Alternating reviewer cards in the review trail.
   The workflow module outputs each reviewer recommendation as a bordered card.
   These rules lightly alternate the background so HR can scan one reviewer at a time. */
.hr-review-history-wrapper .d-flex.flex-column.gap-3 > .border:nth-child(odd) {
  background: #ffffff !important;
}

.hr-review-history-wrapper .d-flex.flex-column.gap-3 > .border:nth-child(even) {
  background: #f7f9fc !important;
}

.hr-review-history-wrapper .d-flex.flex-column.gap-3 > .border {
  border-color: #dbe3ee !important;
  box-shadow: 0 8px 20px rgba(7, 22, 47, .04);
}

.hr-review-history-wrapper .d-flex.flex-column.gap-3 > .border:nth-child(even) .border-top {
  border-color: #d3dce9 !important;
}

.hr-review-history-wrapper .btn[href*="/send-review"], .hr-review-history-wrapper .btn[href*="/set-review-path"], .hr-review-history-wrapper .btn[href*="/hr-review-action"], .hr-review-history-wrapper .btn[href*="/final-decision"] { display: none !important; }
    .hr-review-history-wrapper .card { border: 1px solid var(--crm-border) !important; border-radius: 14px !important; box-shadow: var(--crm-shadow-sm) !important; overflow: hidden; }
    .hr-review-history-wrapper .border { border-color: var(--crm-border) !important; }

    .hr-crm-case-file h1,
    .hr-crm-case-file h2,
    .hr-crm-case-file h3,
    .hr-crm-case-file h4,
    .hr-crm-case-file h5,
    .hr-crm-case-file h6,
    .hr-crm-case-file strong,
    .hr-crm-case-file .fw-bold {
      font-weight: 700 !important;
    }

    .hr-crm-info-label,
    .hr-crm-profile-row-label,
    .hr-crm-metric-label,
    .hr-crm-card-help,
    .hr-crm-task-hint {
      font-weight: 500 !important;
    }

    .hr-crm-info-value,
    .hr-crm-profile-row-value,
    .hr-crm-metric-value,
    .hr-crm-task-name {
      font-weight: 600 !important;
    }

    @media (max-width: 1399.98px) { .hr-crm-body { grid-template-columns: 260px minmax(0, 1fr) 350px; } .hr-crm-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    @media (max-width: 1199.98px) { .hr-crm-body { grid-template-columns: 1fr; } .hr-crm-profile, .hr-crm-side { border: 0; } .hr-crm-profile { border-bottom: 1px solid var(--crm-border); } .hr-crm-side { border-top: 1px solid var(--crm-border); } .hr-crm-sticky { position: static; } .hr-crm-profile-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    @media (max-width: 767.98px) { .hr-crm-shell { border-radius: 12px; } .hr-crm-topbar { align-items: flex-start; flex-direction: column; } .hr-crm-main, .hr-crm-profile, .hr-crm-side { padding: 1rem; } .hr-crm-info-grid, .hr-crm-profile-list, .hr-crm-metrics, .hr-crm-alert-grid { grid-template-columns: 1fr; } .hr-crm-tabs { display: grid; } .hr-crm-tabs .nav-link { width: 100%; text-align: left; } }



/* Left profile column: name/email removed to avoid repeating applicant details. */
.hr-crm-profile .hr-crm-profile-list:first-child,
.hr-crm-profile > .hr-crm-profile-list {
  margin-top: 0;
}


/* Governor reporting alert shown when the selected post term reports directly to the Governor. */
.hr-crm-tag--orange {
  background: rgba(248, 183, 43, .18) !important;
  color: #fff7d6 !important;
  border-color: rgba(248, 183, 43, .45) !important;
}

.hr-crm-governor-alert {
  display: flex;
  gap: .85rem;
  align-items: flex-start;
  margin-top: 1.15rem;
  padding: 1rem 1.1rem;
  border-radius: 16px;
  background: rgba(248, 183, 43, .15);
  border: 1px solid rgba(248, 183, 43, .45);
  color: #ffffff;
  box-shadow: 0 16px 38px rgba(0, 0, 0, .12);
}

.hr-crm-governor-alert-icon {
  width: 2.2rem;
  height: 2.2rem;
  min-width: 2.2rem;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(248, 183, 43, .26);
  color: #ffffff;
}

.hr-crm-governor-alert-title {
  font-weight: 800;
  line-height: 1.25;
  margin-bottom: .2rem;
}

.hr-crm-governor-alert-text {
  color: rgba(255, 255, 255, .88);
  line-height: 1.45;
  font-weight: 500;
}

.hr-crm-governor-alert-text strong {
  color: #ffffff;
}


/* Readable label lists for multi-value risk fields. */
.hr-crm-value-list > div + div {
  margin-top: .28rem;
}

