﻿/* ============================================================
   JobPortalWP â€” Public Styles
   Scoped under .gjwp-* so Astra never interferes
   All critical rules use !important to override theme
   ============================================================ */

/* â”€â”€ Variables â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-single-wrap,
.gjwp-listing-wrap,
.gjwp-account-wrap,
.gjwp-auth-wrap,
.gjwp-apply-wrap {
  --g:   #1D9E75;
  --gd:  #085041;
  --gl:  #E1F5EE;
  --bl:  #378ADD;
  --bll: #E6F1FB;
  --am:  #BA7517;
  --aml: #FAEEDA;
  --rd:  #E24B4A;
  --rdl: #FCEBEB;
  --gr:  #F4F3EF;
  --bdr: #E5E4DF;
  --r:   8px;
  --sh:  0 2px 8px rgba(0,0,0,.08);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  color: #222 !important;
}

/* â”€â”€ Full reset inside plugin wrappers â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-single-wrap *,
.gjwp-listing-wrap *,
.gjwp-account-wrap *,
.gjwp-auth-wrap *,
.gjwp-apply-wrap * {
  box-sizing: border-box !important;
  -webkit-font-smoothing: antialiased;
}

/* Force full width â€” override Astra content width */
.gjwp-single-wrap,
.gjwp-listing-wrap {
  max-width: 860px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 16px 48px !important;
}

/* â”€â”€ Badges â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-badge {
  display: inline-block !important;
  padding: 3px 10px !important;
  border-radius: 20px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
  letter-spacing: .01em !important;
  white-space: nowrap !important;
  font-family: inherit !important;
}
.gjwp-badge-green  { background: #EAF3DE !important; color: #27500A !important; }
.gjwp-badge-teal   { background: #C8EFE0 !important; color: #085041 !important; }
.gjwp-badge-blue   { background: #DAEAF8 !important; color: #0C447C !important; }
.gjwp-badge-amber  { background: #FAEEDA !important; color: #633806 !important; }
.gjwp-badge-red    { background: #FCDEDE !important; color: #791F1F !important; }
.gjwp-badge-gray   { background: #EBEBEB !important; color: #444    !important; }

/* â”€â”€ Buttons â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 9px 18px !important;
  border-radius: var(--r, 8px) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  border: 1.5px solid #D8D6CF !important;
  background: #fff !important;
  color: #333 !important;
  text-decoration: none !important;
  transition: all .15s ease !important;
  white-space: nowrap !important;
  line-height: 1 !important;
  font-family: inherit !important;
  box-shadow: none !important;
  outline: none !important;
}
.gjwp-btn:hover {
  background: #F4F3EF !important;
  text-decoration: none !important;
  color: #111 !important;
}
.gjwp-btn-primary {
  background: #1D9E75 !important;
  color: #fff !important;
  border-color: #1D9E75 !important;
}
.gjwp-btn-primary:hover {
  background: #0F6E56 !important;
  color: #fff !important;
  border-color: #0F6E56 !important;
}
.gjwp-btn-red  { background: #FCDEDE !important; color: #791F1F !important; border-color: #F5C4C4 !important; }
.gjwp-btn-wa   { background: #25D366 !important; color: #fff    !important; border-color: #25D366 !important; }
.gjwp-btn-wa:hover { background: #1aaa52 !important; color: #fff !important; }
.gjwp-btn-sm   { padding: 6px 12px !important; font-size: 12px !important; }
.gjwp-btn-lg   { padding: 13px 24px !important; font-size: 15px !important; }
.gjwp-btn-full { width: 100% !important; }
.gjwp-btn-logout { background: #FCDEDE !important; color: #791F1F !important; border-color: #F5C4C4 !important; }
.gjwp-btn-icon { background: none !important; border: none !important; cursor: pointer !important; font-size: 18px !important; padding: 4px !important; box-shadow: none !important; }
.gjwp-btn.gjwp-saved { color: #E24B4A !important; }

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   SINGLE JOB PAGE
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* â”€â”€ Header Card â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-job-header {
  background: #fff !important;
  border: 1px solid #DDD !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  margin-bottom: 22px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.09) !important;
}

.gjwp-job-header-top {
  background: #085041 !important;
  padding: 16px 20px 14px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
}

.gjwp-header-tags {
  display: flex !important;
  gap: 7px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

/* Badges inside dark header â€” lighter versions */
.gjwp-job-header-top .gjwp-badge-teal  { background: rgba(255,255,255,.18) !important; color: #C8EFE0 !important; }
.gjwp-job-header-top .gjwp-badge-blue  { background: rgba(255,255,255,.15) !important; color: #B8D8F5 !important; }
.gjwp-job-header-top .gjwp-badge-amber { background: #FAEEDA !important; color: #633806 !important; }
.gjwp-job-header-top .gjwp-badge-green { background: #C8EFE0 !important; color: #085041 !important; }
.gjwp-job-header-top .gjwp-badge-red   { background: #FCDEDE !important; color: #791F1F !important; }

.gjwp-header-actions {
  display: flex !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

/* Buttons inside dark header */
.gjwp-job-header-top .gjwp-btn-primary {
  background: #1D9E75 !important;
  color: #fff !important;
  border-color: #1D9E75 !important;
  padding: 9px 18px !important;
}
.gjwp-job-header-top .gjwp-btn {
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.3) !important;
}
.gjwp-job-header-top .gjwp-btn:hover {
  background: rgba(255,255,255,.22) !important;
  color: #fff !important;
}

.gjwp-job-title {
  font-size: 21px !important;
  font-weight: 700 !important;
  color: #fff !important;
  padding: 14px 20px 4px !important;
  margin: 0 !important;
  line-height: 1.4 !important;
  font-family: inherit !important;
  background: #085041 !important;
}

.gjwp-job-meta {
  font-size: 12px !important;
  color: #9FE1CB !important;
  padding: 4px 20px 14px !important;
  margin: 0 !important;
  background: #085041 !important;
  font-family: inherit !important;
}
.gjwp-job-meta strong { color: #C8EFE0 !important; }

/* Stats bar */
.gjwp-stats-bar {
  display: flex !important;
  gap: 0 !important;
  border-top: 1px solid #E8E8E8 !important;
  background: #fff !important;
}
.gjwp-stat-item {
  flex: 1 !important;
  text-align: center !important;
  padding: 12px 10px !important;
  border-right: 1px solid #EBEBEB !important;
}
.gjwp-stat-item:last-child { border-right: none !important; }
.gjwp-stat-item p {
  font-size: 11px !important;
  color: #888 !important;
  margin: 0 0 4px !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}
.gjwp-stat-item strong {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #111 !important;
  font-family: inherit !important;
}

/* â”€â”€ Description box â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-section-desc {
  background: #F9F8F5 !important;
  border: 1px solid #E5E4DF !important;
  border-radius: 10px !important;
  padding: 16px 18px !important;
  margin-bottom: 8px !important;
}
.gjwp-short-desc {
  font-size: 14px !important;
  color: #444 !important;
  line-height: 1.75 !important;
  margin: 0 !important;
  font-family: inherit !important;
}

/* â”€â”€ Section headings (green bar) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-section-heading {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #1D9E75 !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 10px 16px !important;
  border-radius: 10px 10px 0 0 !important;
  margin-top: 22px !important;
  font-family: inherit !important;
  letter-spacing: .01em !important;
}

/* â”€â”€ Tables â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-table-wrap {
  border: 1px solid #E5E4DF !important;
  border-top: none !important;
  border-radius: 0 0 10px 10px !important;
  overflow: hidden !important;
  margin-bottom: 4px !important;
  background: #fff !important;
}
.gjwp-scroll-x { overflow-x: auto !important; }

.gjwp-table {
  width: 100% !important;
  border-collapse: collapse !important;
  font-size: 13px !important;
  background: #fff !important;
  font-family: inherit !important;
}
.gjwp-table th {
  text-align: left !important;
  padding: 9px 14px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #555 !important;
  background: #F7F6F2 !important;
  border-bottom: 1px solid #E5E4DF !important;
  font-family: inherit !important;
}
.gjwp-table td {
  padding: 10px 14px !important;
  border-bottom: 1px solid #EFEFED !important;
  color: #333 !important;
  vertical-align: middle !important;
  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  background: transparent !important;
}
.gjwp-table tr:last-child td { border-bottom: none !important; }
.gjwp-table tr:hover td { background: #FAFAF7 !important; }
.gjwp-table td strong { font-weight: 600 !important; color: #111 !important; }
.gjwp-row-warn td { background: #FFFBEB !important; }
.gjwp-service-fee-row td { background: #E8F7F2 !important; }

.gjwp-fee-note {
  font-size: 11px !important;
  color: #888 !important;
  border: 1px solid #E5E4DF !important;
  border-top: none !important;
  padding: 7px 14px !important;
  border-radius: 0 0 10px 10px !important;
  margin: 0 0 4px !important;
  background: #FAFAF7 !important;
  font-family: inherit !important;
}

/* â”€â”€ Selection Steps â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-selection-steps {
  display: flex !important;
  align-items: stretch !important;
  flex-wrap: wrap !important;
  border: 1px solid #E5E4DF !important;
  border-top: none !important;
  border-radius: 0 0 10px 10px !important;
  overflow: hidden !important;
  background: #fff !important;
}
.gjwp-step {
  flex: 1 !important;
  min-width: 80px !important;
  text-align: center !important;
  padding: 16px 10px !important;
  border-right: 1px solid #EFEFED !important;
}
.gjwp-step:last-child { border-right: none !important; }
.gjwp-step-icon { font-size: 24px !important; margin-bottom: 6px !important; display: block !important; }
.gjwp-step-label {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #222 !important;
  margin: 0 !important;
  font-family: inherit !important;
}
.gjwp-step-num {
  font-size: 11px !important;
  color: #AAA !important;
  margin: 3px 0 0 !important;
  font-family: inherit !important;
}
.gjwp-step-arrow { font-size: 18px !important; color: #CCC !important; }
.gjwp-link { color: #378ADD !important; font-weight: 500 !important; text-decoration: none !important; }
.gjwp-link:hover { text-decoration: underline !important; }

/* â”€â”€ Help Banner â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-help-banner {
  margin-top: 26px !important;
  border: 1px solid #9FD8C5 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: 0 2px 12px rgba(29,158,117,.1) !important;
}
.gjwp-help-banner-top {
  background: #1D9E75 !important;
  padding: 16px 20px !important;
}
.gjwp-help-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 0 4px !important;
  font-family: inherit !important;
}
.gjwp-help-sub {
  font-size: 13px !important;
  color: #B8EDD9 !important;
  margin: 0 !important;
  font-family: inherit !important;
}
.gjwp-help-features {
  display: flex !important;
  gap: 0 !important;
  border-bottom: 1px solid #EFEFED !important;
}
.gjwp-help-feature {
  flex: 1 !important;
  text-align: center !important;
  padding: 16px 10px !important;
  border-right: 1px solid #EFEFED !important;
}
.gjwp-help-feature:last-child { border-right: none !important; }
.gjwp-help-feature span { font-size: 24px !important; display: block !important; }
.gjwp-help-feature p {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #222 !important;
  margin: 6px 0 0 !important;
  font-family: inherit !important;
}
.gjwp-help-feature small {
  font-size: 11px !important;
  color: #888 !important;
  font-family: inherit !important;
}
.gjwp-help-fees {
  display: flex !important;
  justify-content: space-between !important;
  padding: 14px 20px !important;
  background: #EBF9F4 !important;
  border-bottom: 1px solid #B8EDD9 !important;
}
.gjwp-help-fees > div p {
  font-size: 12px !important;
  color: #2D7A5A !important;
  margin: 0 0 3px !important;
  font-family: inherit !important;
}
.gjwp-help-fees > div strong {
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #085041 !important;
  font-family: inherit !important;
}
.gjwp-help-actions {
  display: flex !important;
  gap: 10px !important;
  padding: 16px 20px !important;
  flex-wrap: wrap !important;
  background: #fff !important;
}
.gjwp-help-note {
  font-size: 11px !important;
  color: #AAA !important;
  text-align: center !important;
  padding: 0 20px 14px !important;
  margin: 0 !important;
  background: #fff !important;
  font-family: inherit !important;
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   JOB LISTING PAGE
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gjwp-filter-bar {
  display: flex !important;
  gap: 8px !important;
  margin-bottom: 14px !important;
  flex-wrap: wrap !important;
}
.gjwp-search-input,
.gjwp-filter-select {
  padding: 9px 12px !important;
  border: 1.5px solid #D8D6CF !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  background: #fff !important;
  color: #222 !important;
  font-family: inherit !important;
  outline: none !important;
  appearance: auto !important;
}
.gjwp-search-input:focus,
.gjwp-filter-select:focus {
  border-color: #1D9E75 !important;
  box-shadow: 0 0 0 3px rgba(29,158,117,.12) !important;
}
.gjwp-search-input { flex: 1 !important; min-width: 180px !important; }
.gjwp-filter-select { min-width: 140px !important; }

.gjwp-pill-bar {
  display: flex !important;
  gap: 7px !important;
  flex-wrap: wrap !important;
  margin-bottom: 16px !important;
}
.gjwp-pill {
  padding: 5px 14px !important;
  border-radius: 20px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  border: 1.5px solid #D8D6CF !important;
  color: #555 !important;
  background: #fff !important;
  text-decoration: none !important;
  transition: all .12s !important;
  font-family: inherit !important;
}
.gjwp-pill:hover,
.gjwp-pill-on {
  background: #1D9E75 !important;
  color: #fff !important;
  border-color: #1D9E75 !important;
  text-decoration: none !important;
}
.gjwp-pill-red.gjwp-pill-on   { background: #E24B4A !important; border-color: #E24B4A !important; }
.gjwp-pill-green.gjwp-pill-on { background: #1D9E75 !important; border-color: #1D9E75 !important; }

.gjwp-results-count {
  font-size: 12px !important;
  color: #888 !important;
  margin-bottom: 12px !important;
  font-family: inherit !important;
}

/* Job Card */
.gjwp-job-card {
  background: #fff !important;
  border: 1px solid #E5E4DF !important;
  border-left: 4px solid #1D9E75 !important;
  border-radius: 0 10px 10px 0 !important;
  padding: 16px 18px !important;
  margin-bottom: 12px !important;
  box-shadow: 0 1px 6px rgba(0,0,0,.06) !important;
  transition: box-shadow .15s, transform .15s !important;
}
.gjwp-job-card:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,.11) !important;
  transform: translateY(-1px) !important;
}
.gjwp-card-top {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
}
.gjwp-card-left  { flex: 1 !important; min-width: 0 !important; }
.gjwp-card-right {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 5px !important;
  flex-shrink: 0 !important;
}
.gjwp-card-tags {
  display: flex !important;
  gap: 5px !important;
  flex-wrap: wrap !important;
  margin-bottom: 6px !important;
}
.gjwp-card-title {
  font-size: 15px !important;
  font-weight: 600 !important;
  margin: 0 0 5px !important;
  line-height: 1.4 !important;
  font-family: inherit !important;
}
.gjwp-card-title a {
  color: #111 !important;
  text-decoration: none !important;
}
.gjwp-card-title a:hover { color: #1D9E75 !important; }
.gjwp-card-meta {
  font-size: 12px !important;
  color: #777 !important;
  margin: 0 !important;
  font-family: inherit !important;
}
.gjwp-card-desc {
  font-size: 13px !important;
  color: #555 !important;
  margin: 10px 0 0 !important;
  line-height: 1.6 !important;
  font-family: inherit !important;
}
.gjwp-card-footer {
  display: flex !important;
  gap: 8px !important;
  margin-top: 12px !important;
  padding-top: 12px !important;
  border-top: 1px solid #EFEFED !important;
  flex-wrap: wrap !important;
}

.gjwp-no-results {
  text-align: center !important;
  padding: 48px 20px !important;
  color: #888 !important;
  background: #F9F8F5 !important;
  border-radius: 10px !important;
  font-family: inherit !important;
}

/* Pagination */
.gjwp-pagination { text-align: center !important; margin-top: 24px !important; }
.gjwp-pagination .page-numbers {
  margin: 0 3px !important;
  padding: 7px 13px !important;
  border: 1px solid #D8D6CF !important;
  border-radius: 6px !important;
  color: #333 !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-family: inherit !important;
}
.gjwp-pagination .current {
  background: #1D9E75 !important;
  color: #fff !important;
  border-color: #1D9E75 !important;
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   ACCOUNT / DASHBOARD
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gjwp-account-wrap {
  max-width: 780px !important;
  margin: 0 auto !important;
  padding: 0 16px 48px !important;
}
.gjwp-auth-wrap  {
  max-width: 420px !important;
  margin: 40px auto !important;
  padding: 0 16px !important;
}
.gjwp-apply-wrap {
  max-width: 660px !important;
  margin: 0 auto !important;
  padding: 0 16px 48px !important;
}

/* Profile header */
.gjwp-profile-header {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 16px 20px !important;
  background: #fff !important;
  border: 1px solid #E5E4DF !important;
  border-radius: 12px !important;
  margin-bottom: 14px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.06) !important;
}
.gjwp-avatar {
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  background: #E1F5EE !important;
  color: #085041 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  flex-shrink: 0 !important;
  font-family: inherit !important;
}
.gjwp-profile-info { flex: 1 !important; }
.gjwp-profile-info h2 {
  margin: 0 !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #111 !important;
  font-family: inherit !important;
}
.gjwp-profile-info p {
  margin: 2px 0 0 !important;
  font-size: 13px !important;
  color: #666 !important;
  font-family: inherit !important;
}
.gjwp-member-since { color: #AAA !important; font-size: 11px !important; }

/* Account stats */
.gjwp-account-stats {
  display: flex !important;
  gap: 10px !important;
  margin-bottom: 18px !important;
}
.gjwp-acc-stat {
  flex: 1 !important;
  text-align: center !important;
  padding: 14px 10px !important;
  background: #F9F8F5 !important;
  border-radius: 10px !important;
  border: 1px solid #E5E4DF !important;
}
.gjwp-acc-stat span {
  font-size: 24px !important;
  font-weight: 700 !important;
  display: block !important;
  color: #111 !important;
  font-family: inherit !important;
}
.gjwp-acc-stat p {
  font-size: 12px !important;
  color: #777 !important;
  margin: 3px 0 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

/* Tab bar */
.gjwp-tab-bar {
  display: flex !important;
  border-bottom: 2px solid #EBEBEB !important;
  margin-bottom: 18px !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  gap: 0 !important;
}
.gjwp-tab {
  padding: 10px 18px !important;
  font-size: 13px !important;
  white-space: nowrap !important;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -2px !important;
  color: #666 !important;
  text-decoration: none !important;
  transition: all .12s !important;
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  font-family: inherit !important;
  font-weight: 500 !important;
}
.gjwp-tab:hover { color: #085041 !important; text-decoration: none !important; }
.gjwp-tab-on {
  color: #085041 !important;
  border-bottom-color: #1D9E75 !important;
  font-weight: 600 !important;
}
.gjwp-tab-count {
  background: #EBEBEB !important;
  padding: 1px 7px !important;
  border-radius: 20px !important;
  font-size: 10px !important;
  color: #555 !important;
  font-family: inherit !important;
}
.gjwp-tab-content { min-height: 200px !important; }
.gjwp-tab-desc {
  font-size: 12px !important;
  color: #888 !important;
  margin-bottom: 14px !important;
  font-family: inherit !important;
}

/* Job rows in account */
.gjwp-acc-job-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 16px !important;
  background: #fff !important;
  border: 1px solid #E5E4DF !important;
  border-radius: 10px !important;
  margin-bottom: 9px !important;
  flex-wrap: wrap !important;
}
.gjwp-shortlist-row {
  border-left: 4px solid #1D9E75 !important;
  border-radius: 0 10px 10px 0 !important;
}
.gjwp-acc-job-info { flex: 1 !important; min-width: 0 !important; }
.gjwp-acc-job-info h3 {
  margin: 0 0 4px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  font-family: inherit !important;
}
.gjwp-acc-job-info h3 a { color: #111 !important; text-decoration: none !important; }
.gjwp-acc-job-info h3 a:hover { color: #1D9E75 !important; }
.gjwp-row-meta {
  font-size: 12px !important;
  color: #777 !important;
  margin: 0 !important;
  font-family: inherit !important;
}
.gjwp-acc-job-actions {
  display: flex !important;
  gap: 7px !important;
  flex-shrink: 0 !important;
  flex-wrap: wrap !important;
}

/* Tracker */
.gjwp-tracker-row {
  background: #fff !important;
  border: 1px solid #E5E4DF !important;
  border-radius: 10px !important;
  padding: 14px 16px !important;
  margin-bottom: 9px !important;
}
.gjwp-tracker-title {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 12px !important;
  gap: 8px !important;
}
.gjwp-tracker-stages {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  flex-wrap: wrap !important;
}
.gjwp-stage-btn {
  flex: 1 !important;
  min-width: 64px !important;
  padding: 7px 4px !important;
  text-align: center !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  border: 1px solid #D8D6CF !important;
  background: #F4F3EF !important;
  color: #888 !important;
  transition: all .12s !important;
  font-family: inherit !important;
}
.gjwp-stage-active { background: #1D9E75 !important; color: #fff !important; border-color: #1D9E75 !important; }
.gjwp-stage-done   { background: #D4EDD8 !important; color: #27500A !important; border-color: #9FD38F !important; opacity: .75 !important; }
.gjwp-stage-arrow  { color: #CCC !important; font-size: 16px !important; }

/* Timeline */
.gjwp-timeline { padding: 6px 0 !important; }
.gjwp-tl-item { display: flex !important; gap: 14px !important; padding-bottom: 14px !important; }
.gjwp-tl-dot-wrap { display: flex !important; flex-direction: column !important; align-items: center !important; width: 14px !important; }
.gjwp-tl-dot { width: 12px !important; height: 12px !important; border-radius: 50% !important; flex-shrink: 0 !important; }
.gjwp-tl-line { width: 1px !important; background: #E5E4DF !important; flex: 1 !important; min-height: 16px !important; }
.gjwp-tl-body { flex: 1 !important; display: flex !important; justify-content: space-between !important; align-items: flex-start !important; gap: 8px !important; }
.gjwp-tl-body strong { font-size: 13px !important; display: block !important; margin-bottom: 2px !important; color: #111 !important; font-family: inherit !important; }
.gjwp-tl-body small { font-size: 11px !important; color: #888 !important; font-family: inherit !important; }
.gjwp-tl-date { font-size: 11px !important; white-space: nowrap !important; padding: 3px 9px !important; border-radius: 20px !important; font-family: inherit !important; font-weight: 500 !important; }

/* Applied */
.gjwp-applied-row {
  background: #fff !important;
  border: 1px solid #E5E4DF !important;
  border-radius: 10px !important;
  padding: 14px 16px !important;
  margin-bottom: 9px !important;
}
.gjwp-applied-top {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin-bottom: 10px !important;
}
.gjwp-applied-top h3 {
  margin: 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  font-family: inherit !important;
  color: #111 !important;
}
.gjwp-applied-fees { display: flex !important; gap: 8px !important; flex-wrap: wrap !important; }
.gjwp-fee-pill {
  font-size: 11px !important;
  padding: 3px 10px !important;
  border-radius: 20px !important;
  font-weight: 600 !important;
  font-family: inherit !important;
}
.gjwp-fee-paid    { background: #EAF3DE !important; color: #27500A !important; }
.gjwp-fee-pending { background: #FAEEDA !important; color: #633806 !important; }

/* Empty / loading */
.gjwp-empty-state { text-align: center !important; padding: 48px 20px !important; color: #888 !important; }
.gjwp-empty-state p { font-size: 15px !important; margin-bottom: 14px !important; font-family: inherit !important; }
.gjwp-loading { text-align: center !important; padding: 24px !important; color: #888 !important; font-size: 13px !important; font-family: inherit !important; }

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   AUTH (Login / Register)
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gjwp-auth-box {
  background: #fff !important;
  border: 1px solid #E5E4DF !important;
  border-radius: 12px !important;
  padding: 30px 26px !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.08) !important;
}
.gjwp-auth-logo {
  font-size: 20px !important;
  font-weight: 700 !important;
  text-align: center !important;
  margin-bottom: 22px !important;
  color: #085041 !important;
  font-family: inherit !important;
}
.gjwp-auth-tabs {
  display: flex !important;
  border-bottom: 2px solid #EBEBEB !important;
  margin-bottom: 22px !important;
}
.gjwp-auth-tab {
  flex: 1 !important;
  text-align: center !important;
  padding: 10px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -2px !important;
  color: #666 !important;
  text-decoration: none !important;
  font-family: inherit !important;
}
.gjwp-auth-tab.on {
  color: #085041 !important;
  border-bottom-color: #1D9E75 !important;
  font-weight: 600 !important;
}

.gjwp-field { margin-bottom: 16px !important; }
.gjwp-field label {
  display: block !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #444 !important;
  margin-bottom: 5px !important;
  font-family: inherit !important;
}
.gjwp-field input,
.gjwp-field select {
  width: 100% !important;
  padding: 10px 12px !important;
  border: 1.5px solid #D8D6CF !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  background: #fff !important;
  color: #222 !important;
  font-family: inherit !important;
  outline: none !important;
  -webkit-appearance: none !important;
  appearance: auto !important;
  box-shadow: none !important;
}
.gjwp-field input:focus,
.gjwp-field select:focus {
  border-color: #1D9E75 !important;
  box-shadow: 0 0 0 3px rgba(29,158,117,.12) !important;
}
.gjwp-auth-switch {
  font-size: 12px !important;
  color: #888 !important;
  text-align: center !important;
  margin-top: 14px !important;
  font-family: inherit !important;
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   APPLY FORM
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gjwp-apply-job-summary {
  background: #085041 !important;
  color: #fff !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  margin-bottom: 18px !important;
}
.gjwp-apply-label { font-size: 11px !important; color: #9FE1CB !important; margin: 0 0 4px !important; font-family: inherit !important; }
.gjwp-apply-job-summary h2 {
  font-size: 19px !important;
  font-weight: 700 !important;
  margin: 0 0 4px !important;
  color: #fff !important;
  font-family: inherit !important;
}
.gjwp-apply-job-summary p { font-size: 12px !important; color: #9FE1CB !important; margin: 0 !important; font-family: inherit !important; }

.gjwp-apply-steps { display: flex !important; gap: 0 !important; margin-bottom: 22px !important; }
.gjwp-apply-step {
  flex: 1 !important;
  text-align: center !important;
  padding: 10px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  border-bottom: 2px solid #EBEBEB !important;
  color: #999 !important;
  font-family: inherit !important;
}
.gjwp-step-active {
  border-bottom-color: #1D9E75 !important;
  color: #085041 !important;
  font-weight: 700 !important;
}
.gjwp-form-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  margin-bottom: 18px !important;
}
.gjwp-apply-fee-box {
  background: #F9F8F5 !important;
  border: 1px solid #E5E4DF !important;
  border-radius: 10px !important;
  padding: 16px 18px !important;
  margin-bottom: 18px !important;
}
.gjwp-apply-fee-box h4 {
  margin: 0 0 12px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  font-family: inherit !important;
}
.gjwp-fee-summary > div {
  display: flex !important;
  justify-content: space-between !important;
  padding: 7px 0 !important;
  border-bottom: 1px solid #E5E4DF !important;
  font-size: 13px !important;
  font-family: inherit !important;
}
.gjwp-fee-summary > div:last-child { border-bottom: none !important; }
.gjwp-fee-total { font-weight: 700 !important; }
.gjwp-payment-box {
  background: #fff !important;
  border: 1px solid #E5E4DF !important;
  border-radius: 12px !important;
  padding: 24px !important;
  text-align: center !important;
}
.gjwp-payment-box h3 {
  font-size: 19px !important;
  margin-bottom: 8px !important;
  font-family: inherit !important;
}

/* Modal — FIX: proper stacking + pointer events */
.gjwp-modal {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  background: rgba(0,0,0,.55) !important;
  z-index: 999999 !important;
  /* NO !important on display so inline style="display:none" can override */
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px !important;
}
/* Show when JS adds display:flex via fadeIn */
.gjwp-modal.gjwp-modal-open {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.gjwp-modal-box {
  background: #fff !important;
  border-radius: 14px !important;
  padding: 26px !important;
  max-width: 400px !important;
  width: 100% !important;
  box-shadow: 0 12px 40px rgba(0,0,0,.2) !important;
  position: relative !important;
  z-index: 1000000 !important;
}
.gjwp-modal-box h3 {
  margin: 0 0 8px !important;
  font-size: 16px !important;
  font-family: inherit !important;
}
.gjwp-modal-close-btn {
  margin-top: 14px !important;
  width: 100% !important;
  justify-content: center !important;
}

/* â”€â”€ Responsive â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
@media (max-width: 640px) {
  .gjwp-job-header-top    { flex-direction: column !important; }
  .gjwp-help-actions      { flex-direction: column !important; }
  .gjwp-help-fees         { flex-direction: column !important; gap: 8px !important; }
  .gjwp-stats-bar         { flex-wrap: wrap !important; }
  .gjwp-stat-item         { min-width: 50% !important; }
  .gjwp-selection-steps   { flex-direction: column !important; }
  .gjwp-step              { border-right: none !important; border-bottom: 1px solid #EFEFED !important; }
  .gjwp-step-arrow        { display: none !important; }
  .gjwp-form-grid         { grid-template-columns: 1fr !important; }
  .gjwp-filter-bar        { flex-direction: column !important; }
  .gjwp-search-input,
  .gjwp-filter-select     { width: 100% !important; }
  .gjwp-tracker-stages    { gap: 3px !important; }
  .gjwp-stage-btn         { font-size: 10px !important; padding: 5px 2px !important; }
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   HOMEPAGE â€” Featured Grid + 3 Column Listing
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gjwp-home-wrap {
  /* Elementor compatible — no max-width lock */
  width: 100% !important;
  margin: 0 !important;
  padding: 0 0 48px !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}
/* When inside default page (no Elementor), add inner padding */
.entry-content .gjwp-home-wrap,
.page-content .gjwp-home-wrap,
.post-content .gjwp-home-wrap {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 0 16px 48px !important;
}
.gjwp-home-wrap * { box-sizing: border-box !important; font-family: inherit !important; }
/* Elementor section containing gjwp-home-wrap */
.elementor-widget-shortcode .gjwp-home-wrap {
  max-width: 100% !important;
  padding: 0 0 32px !important;
}

/* â”€â”€ Ticker bar â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-ticker-bar {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  background: #1A1A2E !important;
  border-radius: 8px !important;
  margin-bottom: 20px !important;
  overflow: hidden !important;
}
.gjwp-ticker-label {
  background: #E24B4A !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 10px 14px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
.gjwp-ticker-track {
  flex: 1 !important;
  overflow: hidden !important;
  position: relative !important;
}
.gjwp-ticker-inner {
  display: flex !important;
  gap: 0 !important;
  animation: gjwp-ticker 30s linear infinite !important;
  width: max-content !important;
}
.gjwp-ticker-inner:hover { animation-play-state: paused !important; }
.gjwp-ticker-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 10px 20px !important;
  font-size: 12px !important;
  color: #ddd !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  border-right: 1px solid #333 !important;
  transition: color .15s !important;
}
.gjwp-ticker-item:hover { color: #1D9E75 !important; text-decoration: none !important; }
.gjwp-ticker-tag {
  background: #1D9E75 !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 1px 6px !important;
  border-radius: 4px !important;
}
@keyframes gjwp-ticker {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* â”€â”€ Section title â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-home-section-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #111 !important;
  margin: 0 0 12px !important;
  padding-left: 4px !important;
  border-left: 4px solid #1D9E75 !important;
  padding-left: 10px !important;
}

/* â”€â”€ Featured colorful grid â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-featured-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 8px !important;
  margin-bottom: 28px !important;
}
.gjwp-fg-tile {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  padding: 14px 12px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  min-height: 90px !important;
  transition: transform .15s, box-shadow .15s !important;
  overflow: hidden !important;
}
.gjwp-fg-tile::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0,0,0,.15) !important;
  transition: background .15s !important;
}
.gjwp-fg-tile:hover { transform: translateY(-2px) !important; box-shadow: 0 6px 20px rgba(0,0,0,.2) !important; text-decoration: none !important; }
.gjwp-fg-tile:hover::after { background: rgba(0,0,0,.05) !important; }
.gjwp-fg-tag {
  position: relative !important;
  z-index: 1 !important;
  display: inline-block !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 2px 7px !important;
  border-radius: 4px !important;
  margin-bottom: 6px !important;
  align-self: flex-start !important;
}
.gjwp-fg-tag-red   { background: #E24B4A !important; color: #fff !important; }
.gjwp-fg-tag-green { background: #1D9E75 !important; color: #fff !important; }
.gjwp-fg-tag-blue  { background: #378ADD !important; color: #fff !important; }
.gjwp-fg-title {
  position: relative !important;
  z-index: 1 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 !important;
  line-height: 1.4 !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.4) !important;
}
.gjwp-fg-days {
  position: relative !important;
  z-index: 1 !important;
  display: inline-block !important;
  margin-top: 6px !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  color: #FFE082 !important;
}

/* â”€â”€ 3-Column listing â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-home-columns {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 14px !important;
}
.gjwp-home-col {
  border: 2px solid #E5E4DF !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.06) !important;
}
.gjwp-home-col-head {
  padding: 13px 16px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #fff !important;
  text-align: center !important;
  letter-spacing: .01em !important;
}
.gjwp-col-result { background: #8B1A1A !important; border-bottom: 3px solid #6B1414 !important; }
.gjwp-col-admit  { background: #1A3F8F !important; border-bottom: 3px solid #122D6B !important; }
.gjwp-col-jobs   { background: #1D6A2E !important; border-bottom: 3px solid #134D20 !important; }

.gjwp-home-col-body { padding: 8px 0 4px !important; }

.gjwp-col-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 6px !important;
  padding: 8px 14px !important;
  font-size: 13px !important;
  color: #1A3F8F !important;
  text-decoration: none !important;
  border-bottom: 1px solid #F2F1ED !important;
  line-height: 1.5 !important;
  transition: background .1s !important;
}
.gjwp-col-item:last-of-type { border-bottom: none !important; }
.gjwp-col-item:hover { background: #F4F9FF !important; color: #0D2B6E !important; text-decoration: none !important; }
.gjwp-col-dot { color: #1D9E75 !important; font-size: 16px !important; flex-shrink: 0 !important; line-height: 1.4 !important; font-weight: 700 !important; }
.gjwp-col-urgent {
  display: inline-block !important;
  background: #FCDEDE !important;
  color: #791F1F !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 1px 6px !important;
  border-radius: 4px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
.gjwp-col-empty { font-size: 12px !important; color: #AAA !important; padding: 12px 14px !important; margin: 0 !important; }
.gjwp-col-more {
  display: block !important;
  text-align: center !important;
  padding: 10px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #1D9E75 !important;
  text-decoration: none !important;
  background: #F4F9F7 !important;
  border-top: 1px solid #E5E4DF !important;
  transition: background .12s !important;
}
.gjwp-col-more:hover { background: #E1F5EE !important; text-decoration: none !important; }

/* Responsive */
@media (max-width: 900px) {
  .gjwp-featured-grid { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 640px) {
  .gjwp-featured-grid  { grid-template-columns: 1fr 1fr !important; gap: 6px !important; }
  .gjwp-home-columns   { grid-template-columns: 1fr !important; }
  .gjwp-fg-tile        { min-height: 75px !important; }
  .gjwp-fg-title       { font-size: 12px !important; }
  .gjwp-ticker-bar     { display: none !important; }
}

/* â”€â”€ Homepage extra tag colors â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-fg-ak  { background:#FAC775 !important; color:#412402 !important; }
.gjwp-fg-sy  { background:#B5D4F4 !important; color:#042C53 !important; }
.gjwp-fg-pj  { background:#CECBF6 !important; color:#26215C !important; }

/* â”€â”€ Divider â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.gjwp-home-divider {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 20px 0 12px !important;
}
.gjwp-home-divider span {
  font-size: 12px !important;
  font-weight: 500 !important;
  color: var(--color-text-tertiary) !important;
  white-space: nowrap !important;
  font-family: inherit !important;
}
.gjwp-home-divider::before,
.gjwp-home-divider::after {
  content: '' !important;
  flex: 1 !important;
  height: 1px !important;
  background: var(--color-border-tertiary) !important;
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   DEPARTMENT PROFILE PAGE
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.gjwp-dept-wrap {
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 0 16px 48px !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}
.gjwp-dept-wrap * { box-sizing: border-box !important; }

.gjwp-dept-header {
  border-radius: 12px !important;
  padding: 20px !important;
  margin-bottom: 16px !important;
}
.gjwp-dept-header-inner {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}
.gjwp-dept-logo {
  width: 74px !important; height: 74px !important;
  background: rgba(255,255,255,.95) !important;
  border-radius: 12px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 20px !important; font-weight: 700 !important;
  flex-shrink: 0 !important;
  overflow: hidden !important;
}
.gjwp-dept-header-info { flex: 1 !important; min-width: 200px !important; }
.gjwp-dept-name {
  font-size: 20px !important; font-weight: 600 !important;
  color: #fff !important; margin: 0 0 3px !important; line-height: 1.3 !important;
}
.gjwp-dept-full { font-size: 12px !important; color: rgba(255,255,255,.8) !important; margin: 0 0 8px !important; }
.gjwp-dept-tags { display: flex !important; gap: 6px !important; flex-wrap: wrap !important; }
.gjwp-dept-tag {
  background: rgba(255,255,255,.15) !important; color: #fff !important;
  font-size: 11px !important; font-weight: 500 !important;
  padding: 3px 10px !important; border-radius: 20px !important;
  text-decoration: none !important;
}
.gjwp-dept-tag:hover { background: rgba(255,255,255,.25) !important; text-decoration: none !important; }
.gjwp-dept-header-actions { display: flex !important; gap: 8px !important; flex-shrink: 0 !important; flex-wrap: wrap !important; }
.gjwp-dept-btn-light {
  background: rgba(255,255,255,.15) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.3) !important;
}
.gjwp-dept-btn-light:hover { background: rgba(255,255,255,.25) !important; color: #fff !important; }

/* Stats */
.gjwp-dept-stats {
  display: grid !important;
  grid-template-columns: repeat(4,1fr) !important;
  gap: 10px !important;
  margin-bottom: 18px !important;
}
.gjwp-dstat {
  background: #fff !important;
  border: 1px solid #E5E4DF !important;
  border-radius: 10px !important;
  padding: 12px 10px !important;
  text-align: center !important;
}
.gjwp-dstat span { font-size: 24px !important; font-weight: 600 !important; display: block !important; color: #111 !important; }
.gjwp-dstat p { font-size: 11px !important; color: #777 !important; margin: 3px 0 0 !important; }

/* Grid layout */
.gjwp-dept-grid {
  display: grid !important;
  grid-template-columns: 1fr 1.4fr !important;
  gap: 14px !important;
  align-items: start !important;
}
.gjwp-dept-col-left  { display: flex !important; flex-direction: column !important; }
.gjwp-dept-col-right { position: sticky !important; top: 20px !important; }

/* Cards */
.gjwp-dept-card {
  background: #fff !important;
  border: 1px solid #E5E4DF !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}
.gjwp-dept-card-head {
  padding: 11px 16px !important;
  border-bottom: 1px solid #EFEFED !important;
  font-size: 13px !important; font-weight: 600 !important;
  color: #222 !important;
  display: flex !important; align-items: center !important; gap: 7px !important;
  background: #FAFAF7 !important;
}
.gjwp-dept-card-head i { font-size: 16px !important; color: #1D9E75 !important; }
.gjwp-dept-card-body { padding: 14px 16px !important; }
.gjwp-dept-about-text { font-size: 13px !important; color: #555 !important; line-height: 1.7 !important; margin-bottom: 12px !important; }

/* Info rows */
.gjwp-dept-info-row {
  display: flex !important;
  gap: 10px !important;
  padding: 7px 0 !important;
  border-bottom: 1px solid #F2F1ED !important;
  font-size: 13px !important;
  align-items: flex-start !important;
}
.gjwp-dept-info-row:last-child { border-bottom: none !important; padding-bottom: 0 !important; }
.gjwp-dept-info-row > span:first-child { color: #888 !important; width: 100px !important; flex-shrink: 0 !important; font-size: 12px !important; }
.gjwp-dept-info-row strong { color: #111 !important; font-weight: 500 !important; }

/* Team */
.gjwp-dept-person {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 16px !important;
  border-bottom: 1px solid #EFEFED !important;
}
.gjwp-dept-person:last-child { border-bottom: none !important; }
.gjwp-dept-avatar {
  width: 42px !important; height: 42px !important;
  border-radius: 50% !important;
  background: #E6F1FB !important;
  color: #0C447C !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 13px !important; font-weight: 600 !important;
  flex-shrink: 0 !important;
}
.gjwp-dept-person-info { flex: 1 !important; min-width: 0 !important; }
.gjwp-dept-person-name { font-size: 13px !important; font-weight: 600 !important; color: #111 !important; margin: 0 0 2px !important; }
.gjwp-dept-person-desg { font-size: 12px !important; color: #666 !important; margin: 0 0 4px !important; }
.gjwp-dept-person-contacts { display: flex !important; gap: 10px !important; flex-wrap: wrap !important; }
.gjwp-dept-contact-link { font-size: 11px !important; color: #185FA5 !important; text-decoration: none !important; display: flex !important; align-items: center !important; gap: 3px !important; }
.gjwp-dept-contact-link:hover { text-decoration: underline !important; }
.gjwp-dept-contact-link i { font-size: 12px !important; }

/* Job rows */
.gjwp-dept-job-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 12px 16px !important;
  border-bottom: 1px solid #EFEFED !important;
  text-decoration: none !important;
  transition: background .1s !important;
}
.gjwp-dept-job-row:last-child { border-bottom: none !important; }
.gjwp-dept-job-row:hover { background: #F9F8F5 !important; text-decoration: none !important; }
.gjwp-dept-job-info { flex: 1 !important; min-width: 0 !important; }
.gjwp-dept-job-title { font-size: 13px !important; font-weight: 500 !important; color: #111 !important; margin: 0 0 3px !important; line-height: 1.4 !important; }
.gjwp-dept-job-meta { font-size: 12px !important; color: #777 !important; margin: 0 !important; }

/* Responsive */
@media (max-width: 720px) {
  .gjwp-dept-grid { grid-template-columns: 1fr !important; }
  .gjwp-dept-col-right { position: static !important; }
  .gjwp-dept-stats { grid-template-columns: repeat(2,1fr) !important; }
  .gjwp-dept-header-inner { flex-direction: column !important; align-items: flex-start !important; }
}

/* JobPortalWP private jobs */
.gjwp-job-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
  gap: 14px !important;
  margin-top: 14px !important;
}
.gjwp-job-card textarea {
  width: 100% !important;
  min-height: 72px !important;
  margin: 8px 0 !important;
  border: 1px solid #D8D6CF !important;
  border-radius: 8px !important;
  padding: 8px 10px !important;
}
.gjwp-job-card h3 {
  margin: 0 0 8px !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
}
.gjwp-job-card p {
  margin: 0 0 7px !important;
  font-size: 13px !important;
  color: #555 !important;
}


/* ════════════════════════════════════════════════════════════
   PRIVATE JOBS — Job Grid & Employer Dashboard
════════════════════════════════════════════════════════════ */
.gjwp-job-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px,1fr)) !important;
  gap: 14px !important;
  margin-top: 16px !important;
}
.gjwp-job-grid .gjwp-job-card {
  border-left: 4px solid #7B2D8B !important;
  border-radius: 0 10px 10px 0 !important;
  padding: 16px 18px !important;
  background: #fff !important;
  border-top: 1px solid #E5E4DF !important;
  border-right: 1px solid #E5E4DF !important;
  border-bottom: 1px solid #E5E4DF !important;
}
.gjwp-job-grid .gjwp-job-card h3 {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #111 !important;
  margin: 0 0 6px !important;
  font-family: inherit !important;
}
.gjwp-job-grid .gjwp-job-card p {
  font-size: 12px !important;
  color: #666 !important;
  margin: 0 0 4px !important;
  font-family: inherit !important;
}
.gjwp-job-grid .gjwp-job-card strong {
  color: #333 !important;
  font-weight: 600 !important;
}

/* Employer auth */
.gjwp-auth-wrap {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px !important;
  max-width: 760px !important;
  margin: 0 auto !important;
}
.gjwp-auth-wrap .gjwp-auth-box {
  padding: 20px !important;
}
.gjwp-auth-wrap h3 {
  font-size: 16px !important;
  font-weight: 600 !important;
  margin: 0 0 14px !important;
  color: #111 !important;
  font-family: inherit !important;
}
.gjwp-auth-wrap input {
  display: block !important;
  width: 100% !important;
  margin-bottom: 10px !important;
  padding: 9px 11px !important;
  border: 1.5px solid #D8D6CF !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-family: inherit !important;
}

@media (max-width: 600px) {
  .gjwp-auth-wrap { grid-template-columns: 1fr !important; }
}

/* ════════════════════════════════════════════════════════════
   FIX 19 — Mobile Tab Bar & Touch Improvements
════════════════════════════════════════════════════════════ */

/* Account tab bar — bigger touch targets on mobile */
@media (max-width: 600px) {
  .gjwp-tab-bar {
    gap: 0 !important;
    padding: 0 !important;
    border-bottom: 2px solid #EBEBEB !important;
  }
  .gjwp-tab {
    padding: 12px 10px !important;
    font-size: 12px !important;
    min-width: 0 !important;
    flex: 1 !important;
    justify-content: center !important;
    text-align: center !important;
    flex-direction: column !important;
    gap: 3px !important;
    line-height: 1.2 !important;
  }
  .gjwp-tab i {
    font-size: 16px !important;
    display: block !important;
  }
  .gjwp-tab-count { display: none !important; }

  /* Job cards stacked on mobile */
  .gjwp-job-grid {
    grid-template-columns: 1fr !important;
  }

  /* Account stats — 2 col on mobile */
  .gjwp-account-stats {
    grid-template-columns: 1fr 1fr !important;
    flex-wrap: wrap !important;
  }

  /* Tracker stages wrap on mobile */
  .gjwp-tracker-stages {
    gap: 3px !important;
  }
  .gjwp-stage-btn {
    min-width: 50px !important;
    padding: 6px 2px !important;
    font-size: 10px !important;
  }

  /* Department stats 2 col */
  .gjwp-dept-stats {
    grid-template-columns: 1fr 1fr !important;
  }

  /* Single job — header actions stack */
  .gjwp-header-actions {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  /* Auth box full width */
  .gjwp-auth-box { padding: 20px 16px !important; }

  /* Apply form — full width steps */
  .gjwp-apply-steps .gjwp-apply-step {
    font-size: 11px !important;
    padding: 8px 4px !important;
  }

  /* Featured grid 2 col on small mobile */
  .gjwp-featured-grid {
    grid-template-columns: 1fr 1fr !important;
  }

  /* Home columns — single col */
  .gjwp-home-columns {
    grid-template-columns: 1fr !important;
  }

  /* Filter bar — stacked */
  .gjwp-filter-bar {
    flex-direction: column !important;
  }
  .gjwp-search-input,
  .gjwp-filter-select {
    width: 100% !important;
  }

  /* Pill bar — scrollable */
  .gjwp-pill-bar {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: 4px !important;
  }
  .gjwp-pill { flex-shrink: 0 !important; }
}

/* Medium screens — tablet */
@media (max-width: 768px) and (min-width: 601px) {
  .gjwp-featured-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .gjwp-home-columns {
    grid-template-columns: 1fr 1fr !important;
  }
  .gjwp-dept-grid {
    grid-template-columns: 1fr !important;
  }
}

/* Scrollbar styling for pill-bar on mobile */
.gjwp-pill-bar::-webkit-scrollbar { height: 3px; }
.gjwp-pill-bar::-webkit-scrollbar-track { background: transparent; }
.gjwp-pill-bar::-webkit-scrollbar-thumb { background: #D8D6CF; border-radius: 3px; }

/* Touch feedback */
.gjwp-btn:active,
.gjwp-tab:active,
.gjwp-pill:active,
.gjwp-job-card:active,
.gjwp-col-item:active {
  opacity: 0.75 !important;
  transition: opacity 0.05s !important;
}

/* ============================================================
   Last Date Reminder page  [gjwp_last_date_reminder]
   ============================================================ */
.gjwp-ldr-wrap {
  max-width: 1100px;
  margin: 0 auto;
  padding: 24px 16px 48px;
}
.gjwp-ldr-title {
  font-size: 26px;
  font-weight: 800;
  color: #1A2A6C;
  margin: 0 0 18px;
  line-height: 1.25;
}
.gjwp-ldr-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
}
.gjwp-ldr-tab {
  flex: 1 1 120px;
  min-width: 110px;
  text-align: center;
  background: #fff;
  border: 1px solid #E3E1DA;
  border-radius: 10px;
  padding: 12px 10px;
  text-decoration: none;
  transition: box-shadow .15s, border-color .15s;
}
.gjwp-ldr-tab:hover { box-shadow: 0 2px 10px rgba(0,0,0,.08); }
.gjwp-ldr-tab-label {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #14213D;
}
.gjwp-ldr-tab-count {
  display: block;
  font-size: 12px;
  color: #888;
  margin-top: 2px;
}
.gjwp-ldr-tab-on {
  background: #D9342B;
  border-color: #D9342B;
  box-shadow: 0 3px 10px rgba(217,52,43,.25);
}
.gjwp-ldr-tab-on .gjwp-ldr-tab-label,
.gjwp-ldr-tab-on .gjwp-ldr-tab-count { color: #fff; }

.gjwp-ldr-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #D9342B;
  color: #fff;
  border-radius: 10px;
  padding: 14px 18px;
  margin-bottom: 0;
}
.gjwp-ldr-bar-all { background: #1A2A6C; }
.gjwp-ldr-bar-title { font-size: 16px; font-weight: 700; }
.gjwp-ldr-bar-right { display: flex; align-items: center; gap: 10px; }
.gjwp-ldr-bar-badge {
  background: #fff;
  color: #D9342B;
  font-size: 13px;
  font-weight: 700;
  padding: 5px 14px;
  border-radius: 999px;
}
.gjwp-ldr-bar-all .gjwp-ldr-bar-badge { color: #1A2A6C; }
.gjwp-ldr-collapse {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: none;
  background: rgba(255,255,255,.25);
  color: #fff;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
}

.gjwp-ldr-table-wrap {
  border: 1px solid #F2D4D2;
  border-top: none;
  border-radius: 0 0 10px 10px;
  overflow-x: auto;
  margin-bottom: 16px;
}
.gjwp-ldr-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.gjwp-ldr-table thead th {
  background: #FBE4E2;
  color: #1A2A6C;
  font-weight: 700;
  text-align: left;
  padding: 12px 18px;
  white-space: nowrap;
}
.gjwp-ldr-table thead th:last-child,
.gjwp-ldr-table tbody td.gjwp-ldr-td-action { text-align: right; }
.gjwp-ldr-table thead th:nth-child(2),
.gjwp-ldr-table tbody td.gjwp-ldr-td-date { text-align: center; }
.gjwp-ldr-table tbody td {
  padding: 14px 18px;
  border-top: 1px solid #F0EFEA;
  vertical-align: middle;
}
.gjwp-ldr-td-title { font-weight: 600; color: #222; }
.gjwp-ldr-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #D9342B;
  color: #D9342B;
  background: #fff;
  font-size: 13px;
  font-weight: 600;
  padding: 7px 14px;
  border-radius: 8px;
  text-decoration: none;
  white-space: nowrap;
}
.gjwp-ldr-btn:hover { background: #FBE4E2; }
.gjwp-ldr-empty { padding: 24px 18px; color: #777; text-align: center; }
.gjwp-ldr-pagination { padding: 14px 18px; }

@media (max-width: 640px) {
  .gjwp-ldr-title { font-size: 20px; }
  .gjwp-ldr-tab { flex: 1 1 45%; }
  .gjwp-ldr-bar { flex-direction: row; align-items: center; }
  .gjwp-ldr-table thead { display: none; }
  .gjwp-ldr-table, .gjwp-ldr-table tbody, .gjwp-ldr-table tr, .gjwp-ldr-table td { display: block; width: 100%; }
  .gjwp-ldr-table tr { padding: 12px 16px; border-top: 1px solid #F0EFEA; }
  .gjwp-ldr-table td { padding: 4px 0; border-top: none; text-align: left !important; }
  .gjwp-ldr-td-action { margin-top: 8px; }
}
