/* FoodCare FoodBorne Pathogen Guide 0.20.13
 * Static Risk Analysis workspace, evidence table repair and module loading states.
 */

/* --------------------------------------------------------------------------
 * 1. Risk Analysis workspace: deliberately static.
 * The floating/sticky experiment is disabled in every viewport and theme.
 * ----------------------------------------------------------------------- */
body.fbp-analysis-context .fbp-analysis-shell,
body.fbp-analysis-context .fbp-analysis-shell.fbp-analysis-sticky-active,
body.fbp-analysis-context .fbp-analysis-shell.fbp-fixed-desktop,
body.admin-bar.fbp-analysis-context .fbp-analysis-shell.fbp-analysis-sticky-active{
  position:static!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  transform:none!important;
  z-index:auto!important;
}
body.fbp-analysis-context .fbp-analysis-shell-spacer{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important}
body.fbp-analysis-context [data-pathogen-id],
body.fbp-analysis-context .fbp-risk-legend,
body.fbp-analysis-context .fbp-scientific-wide-toolbar,
body.fbp-analysis-context .fbp-scoring-algorithm{scroll-margin-top:18px!important}

/* --------------------------------------------------------------------------
 * 2. Quick navigation: the permanent navigation for an active Risk Analysis.
 * ----------------------------------------------------------------------- */
.fbp-risk-quicknav{font-size:13px!important}
.fbp-risk-quicknav-panel{width:min(390px,calc(100vw - 28px))!important;max-height:min(76vh,760px)!important;padding:12px!important}
.fbp-qnav-analysis{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:3px 10px!important;align-items:center!important;margin:0 0 10px!important;padding:11px 12px!important;border:1px solid #cbd9ec!important;border-left:4px solid #214b98!important;border-radius:12px!important;background:linear-gradient(135deg,#f6f9ff,#eef4fd)!important;color:#173b82!important}
.fbp-qnav-analysis small{grid-column:1/-1!important;font-size:13px!important;line-height:1.2!important;font-weight:900!important;letter-spacing:.04em!important;text-transform:uppercase!important;color:#61718a!important}
.fbp-qnav-analysis strong{min-width:0!important;font-size:14px!important;line-height:1.3!important;overflow-wrap:anywhere!important}
.fbp-qnav-analysis span{justify-self:end!important;padding:4px 8px!important;border-radius:999px!important;font-size:13px!important;line-height:1.2!important;font-weight:850!important;white-space:normal!important;text-align:center!important}
.fbp-qnav-analysis span.is-dirty{background:#fff1c7!important;color:#805800!important}
.fbp-qnav-analysis span.is-saved{background:#e6f5ea!important;color:#17623a!important}
.fbp-qnav-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;margin:0 0 8px!important}
.fbp-qnav-tabs .fbp-qnav-view{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-height:42px!important;width:100%!important;margin:0!important;padding:8px 10px!important;border:1px solid #d6e0ee!important;border-radius:9px!important;background:#f8faff!important;color:#173b82!important;font-size:13px!important;font-weight:800!important;text-align:left!important;cursor:pointer!important}
.fbp-qnav-tabs .fbp-qnav-view:hover,.fbp-qnav-tabs .fbp-qnav-view:focus-visible{border-color:#7e9fd5!important;background:#edf3ff!important;outline:none!important}
.fbp-qnav-tabs .fbp-qnav-view.active{border-color:#214b98!important;background:#214b98!important;color:#fff!important}
.fbp-qnav-actions{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
.fbp-qnav-actions button{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-height:42px!important;width:100%!important;margin:0!important;padding:8px 10px!important;border:1px solid #d6e0ee!important;border-radius:9px!important;background:#f8faff!important;color:#173b82!important;font-size:13px!important;font-weight:850!important;text-align:left!important;cursor:pointer!important}
.fbp-qnav-actions button.save{border-color:#9cc7aa!important;background:#effaf2!important;color:#17623a!important}
.fbp-qnav-actions button.danger{border-color:#e0b2bb!important;background:#fff5f6!important;color:#a11d35!important}
.fbp-qnav-hazard{min-height:44px!important}
.fbp-qnav-hazard span{white-space:normal!important;line-height:1.25!important}
.fbp-qnav-hazard small{font-size:13px!important}
.fbp-qnav-focus{outline:4px solid rgba(31,76,157,.20)!important;outline-offset:3px!important}

/* --------------------------------------------------------------------------
 * 3. Shared animated loading states.
 * ----------------------------------------------------------------------- */
.fbp-module-loading{position:absolute!important;inset:0!important;z-index:80!important;display:grid!important;place-items:start center!important;padding:80px 18px 24px!important;background:rgba(248,251,255,.92)!important;backdrop-filter:blur(2px)!important;border-radius:14px!important}
.fbp-module-loading[hidden]{display:none!important}
.fbp-loading-panel{display:flex!important;align-items:center!important;gap:14px!important;max-width:560px!important;padding:16px 18px!important;border:1px solid #c9d8ed!important;border-radius:14px!important;background:#fff!important;box-shadow:0 14px 34px rgba(26,57,111,.13)!important;color:#173b82!important}
.fbp-loading-copy{display:grid!important;gap:3px!important}
.fbp-loading-copy strong{font-size:15px!important;line-height:1.25!important}
.fbp-loading-copy span{font-size:13px!important;line-height:1.4!important;color:#61718a!important}
.fbp-loading-spinner{position:relative!important;flex:0 0 38px!important;width:38px!important;height:38px!important;border:4px solid #dce7f6!important;border-top-color:#214b98!important;border-radius:50%!important;animation:fbpSpin2013 .8s linear infinite!important}
.fbp-loading-spinner:after{content:""!important;position:absolute!important;inset:7px!important;border:3px solid transparent!important;border-bottom-color:#f3a313!important;border-radius:50%!important;animation:fbpSpin2013 .55s linear infinite reverse!important}
.fbp-evidence-loading.fbp-loading-panel{margin:18px auto!important}
@keyframes fbpSpin2013{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.fbp-loading-spinner,.fbp-loading-spinner:after{animation-duration:1.8s!important}}
.fbp-reg-explorer,.fbp-evidence-explorer{position:relative!important}

/* --------------------------------------------------------------------------
 * 4. Scientific Evidence Hub: compact auto-height rows, grouped by pathogen.
 * ----------------------------------------------------------------------- */
.fbp-evidence-results{min-height:120px!important}
.fbp-evidence-summary-v2013{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:8px 14px!important;margin:14px 0!important;padding:12px 14px!important;border:1px solid #cfdbec!important;border-radius:12px!important;background:#eef4fc!important;color:#294875!important}
.fbp-evidence-summary-v2013 strong{font-size:15px!important;color:#173b82!important}
.fbp-evidence-summary-v2013 span{font-size:13px!important;font-weight:750!important;text-align:right!important}
.fbp-evidence-context-note{grid-column:1/-1!important;margin:0!important;font-size:13px!important;line-height:1.4!important;color:#5f7089!important}
.fbp-evidence-group{overflow:visible!important}
.fbp-evidence-pathogen-group{margin:12px!important;border:1px solid #d6e1ee!important;border-radius:12px!important;background:#fff!important;overflow:hidden!important}
.fbp-evidence-pathogen-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:8px 12px!important;padding:11px 13px!important;border-bottom:1px solid #dbe4ef!important;background:linear-gradient(90deg,#f5f8fd,#eef4fb)!important}
.fbp-evidence-pathogen-head h4{margin:0!important;font-size:16px!important;line-height:1.3!important;color:#173b82!important;overflow-wrap:anywhere!important}
.fbp-evidence-pathogen-head p{grid-column:1/-1!important;margin:0!important;font-size:13px!important;line-height:1.4!important;color:#65748c!important}
.fbp-evidence-pathogen-head strong{padding:4px 8px!important;border-radius:999px!important;background:#e5eefb!important;color:#214b91!important;font-size:13px!important;white-space:nowrap!important}
.fbp-evidence-pathogen-head .risk-meta{display:inline-flex!important;align-items:center!important;gap:5px!important;margin-left:7px!important;padding:3px 7px!important;border-radius:999px!important;background:#fff!important;border:1px solid #d4deeb!important;font-size:13px!important;color:#586a84!important;vertical-align:middle!important}
.fbp-evidence-table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:visible!important;border:0!important;border-radius:0!important;background:#fff!important;scrollbar-gutter:stable!important}
table.fbp-evidence-table{display:table!important;width:100%!important;min-width:1320px!important;height:auto!important;min-height:0!important;border-collapse:collapse!important;border-spacing:0!important;table-layout:fixed!important;font-size:13px!important}
.fbp-evidence-table thead{display:table-header-group!important;height:auto!important;min-height:0!important}
.fbp-evidence-table tbody{display:table-row-group!important;height:auto!important;min-height:0!important}
.fbp-evidence-table tr{display:table-row!important;height:auto!important;min-height:0!important;max-height:none!important}
.fbp-evidence-table th,.fbp-evidence-table td{display:table-cell!important;height:auto!important;min-height:0!important;max-height:none!important;box-sizing:border-box!important;vertical-align:top!important;padding:11px 10px!important;font-size:13px!important;line-height:1.42!important;overflow-wrap:anywhere!important;word-break:normal!important;white-space:normal!important}
.fbp-evidence-table th{background:#edf2f8!important;color:#465975!important;font-weight:900!important;text-transform:none!important;letter-spacing:0!important;border-right:1px solid #dbe3ee!important;border-bottom:1px solid #ccd7e6!important}
.fbp-evidence-table td{color:#3f506a!important;border-right:1px solid #e1e7ef!important;border-bottom:1px solid #e1e7ef!important}
.fbp-evidence-table th:last-child,.fbp-evidence-table td:last-child{border-right:0!important}
.fbp-evidence-table tbody tr:last-child td{border-bottom:0!important}
.fbp-evidence-table tbody tr:hover td{background:#fafcff!important}
.fbp-evidence-table th:nth-child(1){width:10%!important}
.fbp-evidence-table th:nth-child(2){width:16%!important}
.fbp-evidence-table th:nth-child(3){width:23%!important}
.fbp-evidence-table th:nth-child(4){width:14%!important}
.fbp-evidence-table th:nth-child(5){width:13%!important}
.fbp-evidence-table th:nth-child(6){width:14%!important}
.fbp-evidence-table th:nth-child(7){width:10%!important}
.fbp-evidence-table td b{display:block!important;margin:0 0 4px!important;font-size:13px!important;line-height:1.35!important;color:#173b82!important}
.fbp-evidence-table td span,.fbp-evidence-table td small{display:block!important;font-size:13px!important;line-height:1.4!important}
.fbp-evidence-table td small{margin-top:4px!important;color:#718098!important}
.fbp-evidence-table td p{margin:5px 0 0!important;font-size:13px!important;line-height:1.45!important;color:#465872!important}
.fbp-evidence-table details{margin:7px 0 0!important;padding-top:6px!important;border-top:1px dashed #d6e0ec!important}
.fbp-evidence-table details summary{cursor:pointer!important;font-size:13px!important;font-weight:850!important;color:#214b91!important}
.fbp-evidence-table details p{font-size:13px!important;line-height:1.48!important}
.fbp-ev-source{display:inline-flex!important;align-items:center!important;width:auto!important;max-width:100%!important;padding:4px 8px!important;border-radius:999px!important;font-size:13px!important;font-weight:900!important}
.fbp-evidence-place{display:grid!important;gap:3px!important}
.fbp-evidence-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;margin-top:6px!important}
.fbp-evidence-metrics span{padding:5px 6px!important;border-radius:7px!important;background:#f0f4f9!important;text-align:center!important;color:#354d72!important;font-weight:800!important}
.fbp-evidence-use{font-size:13px!important}
.fbp-evidence-use b,.fbp-evidence-use span,.fbp-evidence-use small{font-size:13px!important}
.fbp-evidence-unresolved{display:inline-flex!important;width:auto!important;padding:4px 7px!important;border-radius:7px!important;background:#fff1d8!important;color:#805800!important;font-weight:850!important}
.fbp-evidence-no-results{margin:18px 0!important;padding:28px 20px!important;border:1px dashed #cbd8e9!important;border-radius:14px!important;background:#f8faff!important;text-align:center!important;color:#586a83!important}

/* JEMRA diagnostics remain readable and do not squeeze into tiny cards. */
.fbp-jemra-diagnostics{grid-template-columns:repeat(6,minmax(145px,1fr))!important;overflow-x:auto!important;scrollbar-gutter:stable!important}
.fbp-jemra-diagnostics>div{min-height:84px!important}
.fbp-jemra-diagnostics small,.fbp-jemra-diagnostics span{font-size:13px!important}
.fbp-jemra-diagnostics b{font-size:17px!important}

@media (max-width:900px){
  .fbp-qnav-tabs{grid-template-columns:1fr!important}
  .fbp-evidence-summary-v2013{grid-template-columns:1fr!important}
  .fbp-evidence-summary-v2013 span{text-align:left!important}
  .fbp-evidence-pathogen-head{grid-template-columns:1fr!important}
  .fbp-evidence-pathogen-head strong{justify-self:start!important}
  .fbp-jemra-diagnostics{grid-template-columns:repeat(6,155px)!important}
}
.fbp-evidence-row-pathogen{margin-bottom:6px!important;padding-bottom:5px!important;border-bottom:1px solid #e1e8f1!important;color:#123d8d!important}
.fbp-evidence-row-food{font-weight:800!important;color:#435773!important}
