/* Jobs Notice BD Bottom Bar — mobile only (hidden above 768px) */
.jnbb-bar,.jnbb-sheet,.jnbb-backdrop{display:none}

@media (max-width:768px){
  :root{--jnbb-h:calc(56px + env(safe-area-inset-bottom,0px));--jnbb-green:#0e6b3d;--jnbb-red:#e11d2e}
  body.jnbb-has-bar{padding-bottom:var(--jnbb-h)}
  body.jnbb-has-bar .generate-back-to-top{bottom:calc(var(--jnbb-h) + 16px) !important}
  body.jnbb-bar-hidden .generate-back-to-top{bottom:16px !important}
  html.jnbb-lock,html.jnbb-lock body{overflow:hidden}

  /* ----- floating things that sit at the bottom of the screen (app-download popup, etc.) -----
     --jnbb-offset is how much of the bottom edge the bar covers right now: 56px while the bar is
     visible, 0 when it is hidden (scrolling down) or the keyboard is open. Any fixed bottom element
     can use  bottom: var(--jnbb-offset, 0px)  to stay exactly above the bar. */
  :root{--jnbb-offset:0px}
  body.jnbb-has-bar{--jnbb-offset:var(--jnbb-h)}
  body.jnbb-has-bar.jnbb-bar-hidden{--jnbb-offset:0px}
  html.jnbb-kb body.jnbb-has-bar{--jnbb-offset:0px}

  /* the "জবস নোটিশ বিডি অ্যাপ ডাউনলোড করুন" popup: sit above the bar, and step aside while a panel is open */
  body.jnbb-has-bar #bottomPopup{bottom:var(--jnbb-offset) !important;transition:bottom .25s ease}
  html.jnbb-lock #bottomPopup{display:none !important}

  /* ----- the bar ----- */
  .jnbb-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:99990;height:var(--jnbb-h);padding-bottom:env(safe-area-inset-bottom,0px);box-sizing:border-box;max-width:100%;overflow:hidden;background:#fff;border-top:1px solid #dbe9e0;box-shadow:0 -2px 12px rgba(15,23,42,.08);transition:transform .25s ease}
  .jnbb-bar.is-hidden{transform:translateY(100%)}
  .jnbb-bar .jnbb-item{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;margin:0;padding:5px 2px;border:0 !important;border-radius:0;background:transparent !important;box-shadow:none !important;color:var(--jnbb-green) !important;font:inherit;font-size:11.5px;font-weight:600;line-height:1.25;text-decoration:none !important;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .jnbb-bar .jnbb-item span{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .jnbb-bar .jnbb-item svg{display:block;flex:0 0 auto}
  .jnbb-bar .jnbb-item:hover,.jnbb-bar .jnbb-item:focus{color:var(--jnbb-green) !important;background:transparent !important}
  .jnbb-bar .jnbb-item:focus-visible{outline:2px solid var(--jnbb-green);outline-offset:-3px}
  .jnbb-bar .jnbb-item.is-active,.jnbb-bar .jnbb-item.is-active:hover,.jnbb-bar .jnbb-item.is-active:focus{color:var(--jnbb-red) !important;font-weight:700}
  .jnbb-bar .jnbb-item.is-active svg{fill:currentColor;fill-opacity:.14}

  /* ----- panels ----- */
  .jnbb-backdrop{display:block;position:fixed;top:0;left:0;right:0;bottom:var(--jnbb-h);z-index:99987;background:rgba(15,23,42,.45);opacity:0;visibility:hidden;transition:opacity .22s,visibility 0s .22s}
  .jnbb-backdrop.is-open{opacity:1;visibility:visible;transition:opacity .22s}

  .jnbb-sheet{display:flex;flex-direction:column;position:fixed;left:0;right:0;bottom:var(--jnbb-h);z-index:99988;max-height:calc(100vh - var(--jnbb-h) - 56px);max-height:calc(100dvh - var(--jnbb-h) - 56px);background:#fff;border-radius:18px 18px 0 0;box-shadow:0 -8px 30px rgba(15,23,42,.18);transform:translateY(110%);visibility:hidden;transition:transform .26s cubic-bezier(.22,.8,.3,1),visibility 0s .26s}
  .jnbb-sheet.is-open{transform:none;visibility:visible;transition:transform .26s cubic-bezier(.22,.8,.3,1)}
  .jnbb-sheet-top{flex:0 0 auto;touch-action:none}
  .jnbb-grab{display:flex;justify-content:center;padding:9px 0 3px}
  .jnbb-grab span{width:42px;height:4px;border-radius:4px;background:#cfdcd3}
  .jnbb-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 14px 12px}
  .jnbb-title{margin:0;padding:0 0 0 10px;border-left:4px solid var(--jnbb-green);font-size:18px;font-weight:800;line-height:1.3;color:#0f172a}
  .jnbb-sheet .jnbb-close{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin:0;padding:0;border:0 !important;border-radius:50%;background:#eef4f0 !important;color:#334155 !important;box-shadow:none !important;cursor:pointer}
  .jnbb-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:2px 14px 18px}
  .jnbb-msg{padding:28px 8px;text-align:center;font-weight:600;color:#4b5d6e}
  .jnbb-msg .jnbb-retry{margin-left:6px;padding:6px 12px;border:1px solid var(--jnbb-green);border-radius:8px;background:#fff;color:var(--jnbb-green);font-weight:700;cursor:pointer}
  .jnbb-fallback-list{margin:0;padding:0 0 0 18px;line-height:2}

  /* ----- Job Filters forms inside a panel: no extra card, margins or page padding ----- */
  .jnbb-body .jnbf-wrap--contained{max-width:none;margin:0;padding:0}
  .jnbb-body .jnbf-space-top,.jnbb-body .jnbf-space-bottom{margin:0}
  .jnbb-body .jnbf-wrap{padding:0;margin:0;border:0;border-radius:0;box-shadow:none;background:transparent}

  /* ----- on-screen keyboard: hide the bar, lift the panel above the keyboard ----- */
  html.jnbb-kb .jnbb-bar{display:none}
  html.jnbb-kb .jnbb-backdrop{bottom:var(--jnbb-kb,0px)}
  html.jnbb-kb .jnbb-sheet{bottom:var(--jnbb-kb,0px);max-height:calc(var(--jnbb-vvh,100vh) - 12px)}
}

@media (max-width:359px){ .jnbb-bar .jnbb-item{font-size:10.5px} }
@media (max-width:768px) and (max-height:480px){
  .jnbb-sheet{max-height:calc(100vh - var(--jnbb-h) - 8px);max-height:calc(100dvh - var(--jnbb-h) - 8px)}
}
@media print{ .jnbb-bar,.jnbb-sheet,.jnbb-backdrop{display:none !important} }
@media (prefers-reduced-motion:reduce){ .jnbb-bar,.jnbb-sheet,.jnbb-backdrop{transition:none !important} }
