
:root{--bg:#061421;--panel:#0b2033;--panel2:#102a42;--line:#214866;--text:#f3f7fb;--muted:#91b3d3;--blue:#2f8cff;--green:#20c77a;--amber:#e8b44c}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#061421,#071b2d);color:var(--text);font-family:Arial,sans-serif}.wrap{max-width:1450px;margin:auto;padding:22px}.head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.brand{display:flex;gap:12px;align-items:center}.brand-badge{width:54px;height:54px;border-radius:14px;background:linear-gradient(180deg,#4da0ff,#2f80ed);display:grid;place-items:center;color:#fff;font-weight:900;font-size:21px;box-shadow:0 8px 24px rgba(47,128,237,.28)}.brand-copy h2{margin:0 0 3px;font-size:23px}.brand-copy .company{font-weight:800}.muted{color:var(--muted);font-size:12px}.card{background:rgba(11,32,51,.96);border:1px solid var(--line);border-radius:16px;padding:18px}.section-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.section-head h2{margin:0 0 4px}.portal-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.navtab{border:1px solid var(--line);border-radius:10px;padding:10px 14px;color:var(--text);text-decoration:none;font-weight:800;background:#081a2a}.navtab.active{background:var(--blue);border-color:#5aa6ff}.navtab span{margin-left:5px;padding:2px 6px;border-radius:999px;background:rgba(0,0,0,.22);font-size:10px}.jobs{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:12px;margin-top:14px}.job{background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:15px}.full-job{grid-column:1/-1}.job h3{margin:7px 0 8px}.jobtop{display:flex;justify-content:space-between;align-items:center;gap:10px}.rate{font-size:17px;color:#8ee7b9}.route{font-size:19px;font-weight:900;margin:10px 0}.meta{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.meta div,.detail-box{background:#081b2b;padding:11px;border-radius:10px}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.detail-box h4{margin:0 0 10px;font-size:16px}.detail-line{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:7px 0;border-bottom:1px solid rgba(145,179,211,.12)}.detail-line:last-child{border-bottom:0}.detail-line span{color:var(--muted);font-size:12px}.instruction{background:#0a1c2c;border:1px solid var(--line);border-radius:9px;padding:10px;margin:8px 0}.btn{display:inline-block;border:1px solid var(--line);border-radius:9px;background:#0b2033;color:white;padding:10px 14px;font-weight:800;text-decoration:none;cursor:pointer}.btn.primary{background:var(--blue);border-color:var(--blue)}.btn.green{background:var(--green);border-color:var(--green);color:#04140c}.btn.compact{padding:7px 10px;font-size:11px}.notice{padding:11px 14px;border:1px solid #765d27;background:#2a2618;border-radius:10px;margin-bottom:14px}.status{display:inline-block;padding:5px 9px;border-radius:999px;background:#173b5d;font-size:11px;font-weight:900}.status.available{background:#143f34}.status.operational{background:#203a5c}.status.verified{background:#15523c;color:#a9f2cd}.job-actions{margin-top:12px}.status-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.status-form select,.finance-form input{background:#061827;color:white;border:1px solid var(--line);border-radius:9px;padding:10px}.status-form select{min-width:150px}.finance-list{display:grid;gap:10px;margin-top:14px}.finance-row{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr auto;gap:12px;align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:13px;padding:13px}.focus-row{outline:2px solid var(--green)}.finance-row details{grid-column:1/-1}.finance-row summary{list-style:none;width:max-content}.finance-form{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:9px;margin-top:12px;align-items:end}.docs-form{grid-template-columns:repeat(3,minmax(160px,1fr))}.finance-form label{font-size:11px;color:var(--muted);display:grid;gap:5px}.finance-form input[type=file]{padding:8px}.submitted-note{margin-top:8px;color:var(--muted);font-size:11px}.empty-state{padding:24px;color:var(--muted);border:1px dashed var(--line);border-radius:12px}.login{max-width:440px;margin:10vh auto}.login input{width:100%;padding:12px;margin:5px 0 12px;border:1px solid var(--line);border-radius:9px;background:#061827;color:white}
@media(max-width:900px){.finance-row{grid-template-columns:1fr 1fr}.finance-form,.docs-form{grid-template-columns:1fr}.meta{grid-template-columns:1fr 1fr}.detail-columns{grid-template-columns:1fr}.head{align-items:flex-start}}@media(max-width:560px){.meta{grid-template-columns:1fr}.detail-line{grid-template-columns:1fr}}


/* Hotfix 28: compact portal cards + wide job detail modal */
.compact-jobs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:14px}
.compact-job-card{width:100%;min-height:185px;text-align:left;background:#102a42;border:1px solid #24506f;border-radius:13px;padding:13px;color:var(--text);cursor:pointer;font:inherit;transition:transform .12s ease,border-color .12s ease,background .12s ease}
.compact-job-card:hover{transform:translateY(-2px);border-color:#4a9cff;background:#12304c}
.compact-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.compact-ref{font-size:15px;font-weight:900;margin-top:12px}
.compact-route{font-size:22px;font-weight:900;margin:9px 0 12px}
.compact-times{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.compact-times>div{background:#081b2b;border-radius:8px;padding:8px}
.compact-times span{display:block;color:var(--muted);font-size:10px;margin-bottom:3px;text-transform:uppercase;letter-spacing:.03em}
.compact-times b{font-size:11px}
.compact-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;color:var(--muted);font-size:11px}
.view-link{color:#74b5ff;font-weight:800}
.my-job-card .compact-route{font-size:20px}

body.modal-open{overflow:hidden}
.job-modal{display:none;position:fixed;inset:0;z-index:9999}
.job-modal.open{display:block}
.job-modal-backdrop{position:absolute;inset:0;background:rgba(0,8,16,.76);backdrop-filter:blur(3px)}
.job-modal-panel{position:relative;z-index:2;width:min(1320px,calc(100vw - 60px));max-height:calc(100vh - 70px);overflow:auto;margin:35px auto;background:#0b2033;border:1px solid #2e5c7e;border-radius:18px;box-shadow:0 28px 80px rgba(0,0,0,.5);padding:22px}
.modal-close{position:absolute;right:16px;top:12px;border:0;background:transparent;color:#b7d1e7;font-size:32px;cursor:pointer}
.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:4px 48px 18px 0;border-bottom:1px solid #214866}
.modal-ref{font-size:24px;font-weight:900}
.modal-route{font-size:28px;font-weight:900;margin-top:6px}
.modal-head-right{display:flex;align-items:center;gap:13px;padding-top:4px}
.modal-head-right strong{font-size:24px;color:#8ee7b9}
.modal-groups{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-top:16px}
.modal-groups section{background:#081b2b;border:1px solid #1d425e;border-radius:13px;padding:15px}
.modal-groups h3{margin:0 0 12px;font-size:18px}
.modal-field{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:start;padding:8px 0;border-bottom:1px solid rgba(145,179,211,.11)}
.modal-field:last-child{border-bottom:0}
.modal-field span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.03em}
.modal-field b{font-size:13px;line-height:1.45}
.modal-actions{display:flex;justify-content:flex-end;gap:9px;align-items:center;padding-top:18px}
.modal-actions-between{justify-content:space-between}
.modal-right-actions{display:flex;gap:9px}
.modal-status{margin:0}
.modal-status select{min-width:160px}

@media(max-width:1250px){.compact-jobs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.compact-jobs{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-groups{grid-template-columns:1fr}.job-modal-panel{width:calc(100vw - 28px);margin:14px auto;max-height:calc(100vh - 28px)}.modal-actions-between{align-items:flex-start;gap:12px;flex-direction:column}.modal-right-actions{width:100%;justify-content:flex-end}}
@media(max-width:560px){.compact-jobs{grid-template-columns:1fr}.compact-job-card{min-height:auto}.modal-head{flex-direction:column}.modal-head-right{padding-top:0}.modal-field{grid-template-columns:1fr}.modal-actions{flex-wrap:wrap}.modal-right-actions{flex-wrap:wrap}}


/* Hotfix 33: quick operational status controls directly under each My Jobs card */
.my-job-wrap{display:flex;flex-direction:column;gap:7px}
.my-job-wrap .compact-job-card{height:100%}
.quick-status-bar{display:grid;grid-template-columns:auto minmax(135px,1fr) auto;gap:7px;align-items:center;background:#081b2b;border:1px solid #24506f;border-radius:10px;padding:8px}
.quick-status-bar label{color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.04em}
.quick-status-bar select{background:#061827;color:#fff;border:1px solid #315274;border-radius:8px;padding:8px 10px;font-weight:800;min-width:0}
.quick-status-bar .btn{padding:8px 10px;font-size:10px}
.quick-status-bar .btn.green{grid-column:1/-1;text-align:center}
.quick-status-wait{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#081b2b;border:1px solid #24506f;border-radius:10px;padding:8px 10px;color:var(--muted);font-size:10px}
@media(max-width:560px){.quick-status-bar{grid-template-columns:1fr}.quick-status-bar label{display:none}.quick-status-bar .btn.green{grid-column:auto}}

.portal-lock-note{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px;padding:11px 13px;border:1px solid #2e5c7e;border-radius:10px;background:#081b2b;color:#91b3d3}.portal-lock-note b{color:#9af0c3}.portal-payment-row{grid-template-columns:1.2fr 1fr 1fr 1fr 1.3fr}@media(max-width:900px){.portal-payment-row{grid-template-columns:1fr 1fr}}


/* Hotfix 40: invoiced job lock */
.status.invoiced{background:#15523c;color:#9af0c3}
.quick-status-wait.invoiced-lock{border-color:#1d6b4a;background:rgba(21,82,60,.16)}
.locked-docs{margin-top:10px;padding:10px 12px;border:1px solid #1d6b4a;border-radius:10px;background:rgba(21,82,60,.12)}


/* HOTFIX 42 — K&D lighter professional portal theme */
:root{
  --page:#dfe8f1;
  --surface:#eef4f9;
  --panel:#e8f0f7;
  --panel2:#dce8f3;
  --border:#b6c9db;
  --text:#13283d;
  --muted:#5e7690;
  --nav:#17314a;
  --nav2:#214663;
  --primary:#173d63;
  --primaryHover:#102f4d;
}
html,body{
  background:var(--page)!important;
  color:var(--text)!important;
}
.portal-shell,.wrap,.container,.page{
  background:transparent!important;
  color:var(--text)!important;
}
.card,.compact-job-card,.my-job-wrap,.quick-status-bar,.quick-status-wait,
.job-modal-panel,.modal-groups section,.finance-card,.payment-card,
.empty-state,.submitted-note{
  background:var(--surface)!important;
  color:var(--text)!important;
  border-color:var(--border)!important;
}
h1,h2,h3,h4,strong,b,.compact-ref,.compact-route,.modal-ref,.modal-route{
  color:#10263b!important;
}
.muted,.sub,.compact-footer,.compact-times span,.modal-field span{
  color:var(--muted)!important;
}

/* Header/navigation */
.portal-header,.topbar,.brandbar{
  background:#102538!important;
  color:#fff!important;
}
.portal-header h1,.portal-header h2,.portal-header strong,
.topbar h1,.topbar h2,.topbar strong,
.brandbar h1,.brandbar h2,.brandbar strong{color:#fff!important}
.tabs a,.nav-tabs a{
  background:#17314a!important;
  color:#fff!important;
  border-color:#315979!important;
  font-weight:900!important;
}
.tabs a.active,.nav-tabs a.active{
  background:#244f72!important;
  color:#fff!important;
}

/* Inputs */
input,select,textarea{
  background:#f8fbfe!important;
  color:#10263b!important;
  border-color:#9eb6ca!important;
}
label{color:#29465f!important;font-weight:900!important}

/* Buttons */
.btn,button.btn,a.btn{
  background:#173d63!important;
  border-color:#173d63!important;
  color:#fff!important;
  font-weight:900!important;
}
.btn:hover,button.btn:hover,a.btn:hover{
  background:#102f4d!important;
  border-color:#102f4d!important;
}
.btn.primary,.primary.btn{
  background:#0f3559!important;
  border-color:#0f3559!important;
}
.btn.green,.green.btn{
  background:#16734f!important;
  border-color:#16734f!important;
  color:#fff!important;
}

/* Compact job cards */
.compact-job-card{
  background:#e7eff6!important;
}
.compact-job-card:hover{
  background:#f5f9fc!important;
  border-color:#6f95b4!important;
}
.compact-times>div{
  background:#dbe7f1!important;
  color:#10263b!important;
}
.view-link{color:#174f7a!important}

/* Modal */
.job-modal-backdrop{
  background:rgba(12,28,43,.64)!important;
}
.job-modal-panel{
  box-shadow:0 24px 70px rgba(27,49,68,.28)!important;
}
.modal-close{color:#17314a!important}

/* Preserve semantic status colours */
.status,.paydate-badge{font-weight:900!important}


/* HOTFIX 43 — visibility corrections for lighter portal */
.tabs a,.nav-tabs a,
.tabs a:visited,.nav-tabs a:visited{
  background:#173d63!important;
  border-color:#315979!important;
  color:#ffffff!important;
  text-shadow:none!important;
}
.tabs a *, .nav-tabs a *{color:#ffffff!important}
.tabs a.active,.nav-tabs a.active,
.tabs a.active *, .nav-tabs a.active *{
  background:#2f86df!important;
  color:#ffffff!important;
  border-color:#2f86df!important;
}

/* Any portal action button must have high-contrast white text */
button,.btn,a.btn,input[type="submit"]{
  color:#ffffff!important;
}
button *, .btn *, a.btn *{color:#ffffff!important}

/* Locked invoice message: use light box rather than dark strip */
.submitted-note,.locked-note,.invoice-locked,.portal-lock-note{
  background:#d7e4ef!important;
  color:#17314a!important;
  border:1px solid #aac1d4!important;
}
.submitted-note *, .locked-note *, .invoice-locked *, .portal-lock-note *{
  color:#17314a!important;
}

/* Submitted/disabled controls should still be readable */
button:disabled,.btn.disabled,.btn[aria-disabled="true"],input[type="submit"]:disabled{
  background:#8298aa!important;
  border-color:#8298aa!important;
  color:#ffffff!important;
  opacity:1!important;
}
button:disabled *, .btn.disabled *{color:#ffffff!important}

/* Header sign-out */
a[href*="logout"],button[name*="logout"],.signout,.sign-out{
  background:#173d63!important;
  color:#ffffff!important;
}


/* HOTFIX 60 — TMS <-> Subcontractor Portal Chat */
.portal-message-badge{background:#df4d5a!important;color:#fff!important;min-width:20px;height:20px;border-radius:999px;display:inline-grid!important;place-items:center;padding:0 5px!important}
.portal-chat-shell{display:grid;grid-template-columns:280px minmax(0,1fr);border:1px solid #b8cad9;border-radius:14px;overflow:hidden;background:#eef4f9;min-height:580px}
.portal-chat-threads{border-right:1px solid #c5d4df;background:#e4edf5;padding:8px}
.portal-chat-thread{display:block;width:100%;text-align:left;border:1px solid transparent;border-radius:10px;background:transparent;color:#10263b;padding:10px;cursor:pointer;margin-bottom:5px}
.portal-chat-thread strong,.portal-chat-thread span{display:block}.portal-chat-thread span{color:#607991;font-size:11px;margin-top:2px}.portal-chat-thread.active,.portal-chat-thread:hover{background:#fff;border-color:#a9c0d2}
.portal-chat-main{display:flex;flex-direction:column;min-width:0}.portal-chat-head{padding:14px;border-bottom:1px solid #c5d4df;display:flex;justify-content:space-between;align-items:center}.portal-chat-head small{color:#607991;font-weight:900}.portal-chat-head h3{margin:2px 0;color:#10263b}.portal-live{background:#dff2e8;color:#18553b;border:1px solid #8fc4a8;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:900}
.portal-chat-messages{height:410px;overflow:auto;padding:15px;background:#f8fbfd;display:flex;flex-direction:column;gap:9px}.portal-msg{max-width:78%;background:#fff;color:#10263b;border:1px solid #c4d4e1;border-radius:13px;padding:9px 11px;white-space:pre-wrap}.portal-msg.mine{align-self:flex-end;background:#dfeefa;border-color:#9fc2df}.portal-msg.theirs{align-self:flex-start}.portal-msg-meta{color:#71879a;font-size:9px;margin-bottom:4px}.portal-chat-file{display:inline-flex;margin-top:6px;background:#edf3f8;border:1px solid #c4d4e1;color:#174f7a;padding:5px 7px;border-radius:8px;text-decoration:none;font-size:10px;font-weight:800}
.portal-chat-composer{padding:10px;border-top:1px solid #c5d4df;background:#eef4f9}.portal-chat-quick{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:7px}.portal-chat-quick button{border:1px solid #aac0d2;background:#dce8f2;color:#17314a;border-radius:999px;padding:5px 8px;font-weight:900;cursor:pointer}.portal-compose-row{display:grid;grid-template-columns:44px 1fr auto;gap:7px;align-items:end}.portal-compose-row textarea{background:#fff!important;color:#10263b!important;resize:none}.portal-attach{height:44px;width:44px;display:grid;place-items:center;background:#173d63;color:#fff;border-radius:10px;cursor:pointer;font-size:18px}
@media(max-width:800px){.portal-chat-shell{grid-template-columns:1fr}.portal-chat-threads{border-right:0;border-bottom:1px solid #c5d4df;display:flex;overflow:auto}.portal-chat-thread{min-width:180px}.portal-chat-messages{height:360px}}


/* HOTFIX 66 — Subcontractor Portal visibility */
.navtab,
a.navtab,
.navtabs .navtab{
  background:#123b61 !important;
  color:#ffffff !important;
  border-color:#0f3150 !important;
  opacity:1 !important;
  text-shadow:none !important;
}
.navtab:hover,
a.navtab:hover,
.navtabs .navtab:hover{
  background:#0d2f4e !important;
  color:#ffffff !important;
}
.navtab.active,
a.navtab.active,
.navtabs .navtab.active{
  background:#3a8ef6 !important;
  color:#0b2b46 !important;
  border-color:#2f80ed !important;
}
.navtab *,
.navtabs .navtab *{
  color:inherit !important;
  opacity:1 !important;
}
.navtab .count,
.navtab .badge,
.navtab .portal-message-badge{
  background:#1f6fc2 !important;
  color:#ffffff !important;
}

/* Advertised job cards */
.jobs-grid .job-card,
.job-card,
.available-job-card,
.portal-job-card{
  background:#eef4f9 !important;
  color:#10263b !important;
  border-color:#a9bfce !important;
}
.job-card h3,.job-card h4,.job-card strong,
.available-job-card h3,.available-job-card h4,.available-job-card strong,
.portal-job-card h3,.portal-job-card h4,.portal-job-card strong{
  color:#10263b !important;
  opacity:1 !important;
  text-shadow:none !important;
}
.job-card .route,.job-card .job-ref,
.available-job-card .route,.available-job-card .job-ref,
.portal-job-card .route,.portal-job-card .job-ref{
  color:#10263b !important;
}
.job-card .mini-box,.job-card .info-box,.job-card .job-meta,
.available-job-card .mini-box,.available-job-card .info-box,.available-job-card .job-meta,
.portal-job-card .mini-box,.portal-job-card .info-box,.portal-job-card .job-meta{
  background:#dfeaf3 !important;
  border-color:#c0d0dc !important;
  color:#10263b !important;
}
.job-card .mini-box *,.job-card .info-box *,.job-card .job-meta *,
.available-job-card .mini-box *,.available-job-card .info-box *,.available-job-card .job-meta *,
.portal-job-card .mini-box *,.portal-job-card .info-box *,.portal-job-card .job-meta *{
  color:#10263b !important;
  opacity:1 !important;
}
.job-card .muted,.job-card small,
.available-job-card .muted,.available-job-card small,
.portal-job-card .muted,.portal-job-card small{
  color:#5d758a !important;
  opacity:1 !important;
}
.job-card .rate,.job-card .price,
.available-job-card .rate,.available-job-card .price,
.portal-job-card .rate,.portal-job-card .price{
  color:#0f4d7a !important;
  font-weight:900 !important;
  opacity:1 !important;
}
.job-card .vehicle,.job-card .vehicle-type,
.available-job-card .vehicle,.available-job-card .vehicle-type,
.portal-job-card .vehicle,.portal-job-card .vehicle-type{
  color:#29465f !important;
  font-weight:800 !important;
  opacity:1 !important;
}
.job-card .view-job,
.available-job-card .view-job,
.portal-job-card .view-job{
  color:#174f7a !important;
  font-weight:900 !important;
}



/* ==========================================================
   HOTFIX 67 — EXACT SELECTOR VISIBILITY FIX
   Uses the real current portal classes:
   .portal-nav .navtab
   .compact-job-card
   .compact-top .rate
   .compact-times
   .compact-footer
   ========================================================== */

/* NAVIGATION — exact current structure */
.portal-nav{
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}

.portal-nav .navtab{
  background:#123b61 !important;
  color:#ffffff !important;
  border:1px solid #0f3150 !important;
  opacity:1 !important;
  text-shadow:none !important;
  font-weight:900 !important;
}

.portal-nav .navtab:hover{
  background:#0d2f4e !important;
  color:#ffffff !important;
}

.portal-nav .navtab.active{
  background:#3a8ef6 !important;
  color:#0b2b46 !important;
  border-color:#2f80ed !important;
}

.portal-nav .navtab > span{
  background:#1f6fc2 !important;
  color:#ffffff !important;
  opacity:1 !important;
}

.portal-nav .navtab.active > span{
  background:#1f6fc2 !important;
  color:#ffffff !important;
}

/* AVAILABLE JOB CARD — exact current markup */
.compact-job-card{
  background:#eef4f9 !important;
  color:#10263b !important;
  border:1px solid #a9bfce !important;
  opacity:1 !important;
  text-shadow:none !important;
}

/* Make all inherited card text dark by default */
.compact-job-card,
.compact-job-card div,
.compact-job-card span,
.compact-job-card b,
.compact-job-card strong{
  color:#10263b !important;
  opacity:1 !important;
  text-shadow:none !important;
}

/* Keep status pill correctly coloured */
.compact-job-card .status,
.compact-job-card .status.available{
  background:#165b46 !important;
  color:#ffffff !important;
  border-color:#165b46 !important;
}

/* Rate */
.compact-job-card .compact-top .rate{
  color:#0f4d7a !important;
  font-weight:900 !important;
  font-size:18px !important;
}

/* Reference and route */
.compact-job-card .compact-ref{
  color:#10263b !important;
  font-weight:900 !important;
}
.compact-job-card .compact-route{
  color:#10263b !important;
  font-weight:900 !important;
}

/* Collection / Delivery boxes */
.compact-job-card .compact-times > div{
  background:#dfeaf3 !important;
  border:1px solid #c0d0dc !important;
  color:#10263b !important;
}

.compact-job-card .compact-times > div > span{
  color:#607991 !important;
  font-weight:700 !important;
}

.compact-job-card .compact-times > div > b{
  color:#10263b !important;
  font-weight:900 !important;
}

/* Footer */
.compact-job-card .compact-footer{
  color:#29465f !important;
}

.compact-job-card .compact-footer > span:first-child{
  color:#29465f !important;
  font-weight:800 !important;
}

.compact-job-card .compact-footer .view-link{
  color:#174f7a !important;
  font-weight:900 !important;
}

/* MY JOBS cards should also remain readable */
.compact-job-card.my-job-card .compact-footer > span:first-child{
  color:#0f4d7a !important;
  font-weight:900 !important;
}

/* Avoid generic old white text rules winning */
.compact-job-card *{
  -webkit-text-fill-color:currentColor !important;
}

/* Sign out / standard buttons remain white on navy */
.head .btn,
.quick-status-bar .btn,
.modal-actions .btn{
  color:#ffffff !important;
}

/* Keep active blue nav text strongly visible */
.portal-nav .navtab.active{
  -webkit-text-fill-color:#0b2b46 !important;
}
.portal-nav .navtab:not(.active){
  -webkit-text-fill-color:#ffffff !important;
}
.portal-nav .navtab > span{
  -webkit-text-fill-color:#ffffff !important;
}
