/* CashBack Insured v4.0.15 — mobile keyboard viewport, client toolbar and offline-state reliability */
:root{--cbi-interactive-height:100dvh;--cbi-keyboard-height:0px}
html,body{max-width:100%;}
body.cbi-keyboard-open{overscroll-behavior:none}
.c-view,.m-work,.u-view,.mail-page{scroll-padding-bottom:calc(var(--cbi-keyboard-height,0px) + 24px)}
@media(max-width:900px){
  .c-input,.c-select,.c-textarea,.m-input,.m-select,.m-textarea,.u-input,.u-select,.u-textarea,.mail-input,.mail-select,.mail-textarea,input,select,textarea{font-size:16px!important}
  body.cbi-keyboard-open .c-shell.is-chat-view,body.cbi-keyboard-open .m-shell.is-chat-view,body.cbi-keyboard-open .u-shell.is-chat-view{height:var(--cbi-interactive-height,100dvh)!important;min-height:0!important}
  body.cbi-keyboard-open .c-shell.is-chat-view .c-main,body.cbi-keyboard-open .u-shell.is-chat-view .u-main{height:var(--cbi-interactive-height,100dvh)!important}
  body.cbi-keyboard-open .mail-preview-card{visibility:hidden!important;height:0!important;min-height:0!important;overflow:hidden!important;margin:0!important;border:0!important}
  body.cbi-keyboard-open .mail-layout{grid-template-columns:minmax(0,1fr)!important}
  body.cbi-keyboard-open .mail-page,body.cbi-keyboard-open .mail-compose{min-height:0!important}
}
/* Keep Agent/Console shells painted at their stable full viewport while ordinary form keyboards open.
   This prevents the lower half of the page becoming an unpainted/white region on iOS/Chrome PWAs. */
.m-shell,.c-shell,.u-shell{height:var(--cbi-visual-height,100dvh);max-height:var(--cbi-visual-height,100dvh)}
.m-work,.c-view,.u-view{min-height:0}
body.cbi-keyboard-open .m-work,body.cbi-keyboard-open .c-view,body.cbi-keyboard-open .u-view{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}

/* Client mobile app toolbar — five fully visible controls with safe-area clearance. */
@media(max-width:680px){
  .u-shell{padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))}
  .u-main{min-height:0}
  .u-nav{position:fixed!important;top:auto!important;left:max(8px,env(safe-area-inset-left,0px))!important;right:max(8px,env(safe-area-inset-right,0px))!important;bottom:max(8px,env(safe-area-inset-bottom,0px))!important;width:auto!important;height:76px!important;min-height:76px!important;padding:6px 8px!important;border:1px solid rgba(255,255,255,.08);border-radius:24px!important;box-shadow:0 18px 48px rgba(3,26,33,.3);transform:none!important;overflow:visible!important;z-index:5200!important;transition:transform .18s ease,opacity .18s ease!important}
  .u-nav .u-brand,.u-nav .u-nav-foot{display:none!important}
  .u-navlinks{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;align-items:stretch!important;gap:3px!important;width:100%!important;height:100%!important;min-height:0!important}
  .u-navlinks a{min-width:0!important;height:64px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;padding:5px 2px!important;margin:0!important;border-radius:17px!important;font-size:.69rem!important;font-weight:800!important;line-height:1!important;text-align:center!important;white-space:nowrap!important;overflow:visible!important;color:#e4edf0!important}
  .u-navlinks a i{display:grid!important;place-items:center!important;width:auto!important;height:25px!important;min-height:25px!important;margin:0!important;font-size:1.35rem!important;line-height:1!important;color:#d9bc50!important;overflow:visible!important;transform:none!important}
  .u-navlinks a.active{background:rgba(255,255,255,.12)!important;color:#fff!important}
  .u-mobile-menu{display:none!important}
  .u-view{padding-bottom:calc(106px + env(safe-area-inset-bottom,0px))!important}
  body.cbi-keyboard-open .u-nav{transform:translateY(calc(100% + 26px + env(safe-area-inset-bottom,0px)))!important;opacity:0!important;pointer-events:none!important}
}
@media(max-width:380px){.u-navlinks a{font-size:.62rem!important}.u-navlinks a i{font-size:1.2rem!important}}

/* Shared online/offline status widget. */
.cbi-network-widget{position:fixed;z-index:130000;right:max(14px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));width:min(390px,calc(100vw - 28px));display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 14px;border-radius:17px;border:1px solid rgba(34,67,76,.18);background:rgba(255,255,255,.97);color:#17373d;box-shadow:0 22px 65px rgba(2,28,36,.25);backdrop-filter:blur(14px);transform:translateY(140%);opacity:0;pointer-events:none;transition:transform .2s ease,opacity .2s ease}.cbi-network-widget.is-visible{transform:none;opacity:1;pointer-events:auto}.cbi-network-spinner{width:24px;height:24px;border-radius:50%;border:3px solid #d7e3e5;border-top-color:#0a5363;animation:cbiNetSpin .8s linear infinite}.cbi-network-widget[data-state="offline"] .cbi-network-spinner{border-top-color:#b28d22}.cbi-network-copy{min-width:0;display:grid;gap:2px}.cbi-network-copy b{font-size:.86rem}.cbi-network-copy span{font-size:.72rem;line-height:1.35;color:#667b80}.cbi-network-retry{min-height:38px;border:1px solid #ccdadd;border-radius:11px;background:#fff;color:#17373d;padding:7px 10px;font-weight:800;cursor:pointer}.cbi-network-widget[data-state="online"]{border-color:#bfe0ce}.cbi-network-widget[data-state="online"] .cbi-network-spinner{border-top-color:#19704f}@keyframes cbiNetSpin{to{transform:rotate(360deg)}}
@media(max-width:680px){.cbi-network-widget{left:max(10px,env(safe-area-inset-left,0px));right:max(10px,env(safe-area-inset-right,0px));bottom:max(12px,env(safe-area-inset-bottom,0px));width:auto}.u-shell~.cbi-network-widget{bottom:calc(96px + env(safe-area-inset-bottom,0px))}body.cbi-keyboard-open .cbi-network-widget{bottom:max(10px,env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.cbi-network-spinner{animation:none}.cbi-network-widget{transition:none}}
body.cbi-keyboard-open .cbi-auth-screen{min-height:var(--cbi-visual-height,100dvh)!important;height:auto!important}
