
/* v4.50.3 Mobile operational shell */
.mobile-menu-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;font-size:24px;margin-right:8px;z-index:1200}.lgft-mobile-backdrop{display:none}.code-textarea{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;width:100%;min-height:220px;white-space:pre;overflow:auto}.stacked-form{display:grid;gap:10px}.mobile-install-prompt{position:fixed;left:12px;right:12px;bottom:12px;z-index:2500;background:#091224;border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 50px rgba(0,0,0,.35);border-radius:18px;padding:14px;color:#fff;display:none}.mobile-install-prompt.show{display:flex;align-items:center;justify-content:space-between;gap:12px}.mobile-install-prompt button{min-height:40px}
@media (max-width: 980px){
  html{font-size:14px}.mobile-menu-toggle{display:flex}.app-shell-header{position:sticky;top:0;z-index:1100;display:flex;align-items:center;gap:8px;padding:8px 10px}.brand-wrap{flex:1;min-width:0}.brand-home{gap:8px}.brand-logo{width:72px!important;height:72px!important}.brand-text small{display:none}.topnav{position:fixed;z-index:1190;left:0;top:0;bottom:0;width:min(88vw,360px);transform:translateX(-110%);transition:transform .2s ease;background:#07101f;border-right:1px solid rgba(255,255,255,.14);box-shadow:24px 0 60px rgba(0,0,0,.45);display:block;overflow:auto;padding:86px 14px 18px}.mobile-nav-open .topnav{transform:translateX(0)}.lgft-mobile-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:1180}.mobile-nav-open .lgft-mobile-backdrop{display:block}.nav-group{display:block;margin:0 0 8px}.nav-group summary{padding:14px 12px;border-radius:14px;background:rgba(255,255,255,.06);font-size:15px}.nav-menu{position:static!important;display:grid!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:6px 0 0!important;min-width:0!important}.nav-link{padding:12px 12px;border-radius:12px;min-height:44px}.nav-utilities{display:grid;gap:8px;margin-top:12px}.command-search-form{display:grid;grid-template-columns:1fr auto;gap:8px}.command-search-form input{min-height:44px}.density-toggle,.nav-logout,.btn.small{min-height:44px}.container{width:100%;max-width:none;padding:10px}.page-tools .toolbar-row,.toolbar-row{display:grid!important;grid-template-columns:1fr!important;gap:10px}.toolbar-actions{display:flex;flex-wrap:wrap;gap:8px}.grid.two,.grid.three,.grid.four{grid-template-columns:1fr!important}.card{padding:14px;border-radius:16px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}.kpi{padding:12px}.footer{padding:20px 12px;text-align:center}.footer-brand{justify-content:center;text-align:center;flex-direction:column}.footer-brand img{margin:auto}input,select,textarea,button,.btn{font-size:16px;min-height:44px}textarea{min-height:110px}table.table{display:block;width:100%;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}table.table th,table.table td{padding:9px 10px}.datatable-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:8px}.datatable-toolbar input,.datatable-toolbar select{width:100%}.breadcrumb,.page-subnav{overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.notification-dropdown{position:fixed!important;left:10px!important;right:10px!important;top:82px!important;width:auto!important;max-height:70vh;overflow:auto}.lgft-tip.auto-help{display:none}.production-document,.invoice-document,.payment-document,.release-pack{overflow-x:auto}.hero,.truck-hero{min-height:auto}.hide-on-mobile{display:none!important}
}
@media (max-width: 560px){.brand-logo{width:56px!important;height:56px!important}.brand-text strong{font-size:13px}.kpi-grid{grid-template-columns:1fr!important}.card h1{font-size:1.35rem}.card h2{font-size:1.12rem}.btn,button{width:100%;justify-content:center}.toolbar-actions .btn,.toolbar-actions button{width:auto;flex:1 1 140px}.nav-utilities .btn,.nav-utilities button,.nav-utilities a{width:100%}.table-card-label{display:block;color:#94a3b8;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.mobile-compact-row{display:grid;gap:4px}}
@media print{.mobile-menu-toggle,.lgft-mobile-backdrop,.mobile-install-prompt{display:none!important}}


/* v4.51.13 Mobile menu top-layer lock: keep drawer above the backdrop and page content on cPanel/mobile browsers. */
@media (max-width: 980px){
  body.mobile-nav-open{overflow:hidden!important;touch-action:none;}
  .app-shell-header{z-index:2147483000!important;isolation:isolate;}
  .mobile-menu-toggle{position:relative!important;z-index:2147483647!important;pointer-events:auto!important;touch-action:manipulation!important;}
  .topnav{z-index:2147483600!important;pointer-events:none!important;visibility:visible!important;will-change:transform;background:#07101f!important;}
  .mobile-nav-open .topnav{pointer-events:auto!important;transform:translateX(0)!important;visibility:visible!important;}
  .topnav a,.topnav button,.topnav summary,.topnav input,.topnav select,.topnav .nav-link,.topnav .btn{position:relative!important;z-index:2147483640!important;pointer-events:auto!important;touch-action:manipulation!important;}
  .lgft-mobile-backdrop{z-index:2147482500!important;pointer-events:auto!important;}
  .mobile-nav-open .lgft-mobile-backdrop{display:block!important;}
  .nav-menu{pointer-events:auto!important;}
  .nav-group[open] .nav-menu{display:grid!important;}
}

/* v4.51.14 Mobile menu full-front lock: drawer becomes a full viewport top layer, never half-hidden behind page content. */
@media (max-width: 980px){
  html.mobile-nav-open, body.mobile-nav-open{overflow:hidden!important;}
  body.mobile-nav-open .app-shell-header{z-index:2147483638!important;}
  body.mobile-nav-open .mobile-menu-toggle{position:fixed!important;top:12px!important;left:12px!important;z-index:2147483647!important;background:#0b1220!important;box-shadow:0 10px 30px rgba(0,0,0,.55)!important;}
  body.mobile-nav-open .topnav,
  .mobile-nav-open .topnav{
    position:fixed!important;
    inset:0!important;
    left:0!important;right:0!important;top:0!important;bottom:0!important;
    width:100vw!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;
    transform:translateX(0)!important;
    z-index:2147483635!important;
    display:block!important;visibility:visible!important;opacity:1!important;
    overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-y!important;
    padding:78px 16px 28px!important;
    background:#07101f!important;
    border:0!important;border-right:0!important;
    box-shadow:0 0 0 9999px rgba(0,0,0,.72), 0 18px 80px rgba(0,0,0,.75)!important;
    pointer-events:auto!important;
  }
  .mobile-nav-open .lgft-mobile-backdrop{display:block!important;position:fixed!important;inset:0!important;z-index:2147483600!important;background:rgba(0,0,0,.72)!important;pointer-events:auto!important;}
  body.mobile-nav-open main, body.mobile-nav-open .container, body.mobile-nav-open .page-shell{pointer-events:none!important;}
  .mobile-nav-open .topnav *{pointer-events:auto!important;}
  .mobile-nav-open .topnav .nav-group{display:block!important;width:100%!important;margin:0 0 10px!important;}
  .mobile-nav-open .topnav .nav-group summary{display:block!important;width:100%!important;min-height:48px!important;line-height:1.25!important;cursor:pointer!important;}
  .mobile-nav-open .topnav .nav-menu{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;width:100%!important;max-width:none!important;position:static!important;opacity:1!important;visibility:visible!important;max-height:none!important;overflow:visible!important;}
  .mobile-nav-open .topnav .nav-link,.mobile-nav-open .topnav a,.mobile-nav-open .topnav button{min-height:46px!important;width:100%!important;max-width:100%!important;text-align:left!important;white-space:normal!important;}
  .mobile-nav-open .topnav .nav-utilities{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important;}
}

/* v4.51.14 Global progress/status rendering fallback used when escaped markup is rehydrated client-side. */
.progress-wrap{display:inline-flex;align-items:center;gap:8px;min-width:140px;justify-content:center;vertical-align:middle;}
.progress-track{display:inline-block;width:92px;height:9px;background:rgba(255,255,255,.08);border:1px solid rgba(214,171,54,.24);border-radius:999px;overflow:hidden;vertical-align:middle;}
.progress-track span{display:block;height:100%;background:linear-gradient(90deg,rgba(214,171,54,.75),rgba(255,103,59,.9));border-radius:999px;}


/* v4.51.25.3 Mobile responsive screen-fit and field-overlap lock.
   SCREEN ONLY. Do not affect portrait print CSS. */
@media screen and (max-width: 768px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  *,*::before,*::after{box-sizing:border-box!important;}
  body{font-size:13px!important;line-height:1.38!important;}
  main,.container,.page-shell,.card,.toolbar-card,.page-tools,.topbar,.footer,
  .production-document,.invoice-document,.payment-document,.statement-document,.kyc-document,
  .release-pack,.bank-reconciliation-document,.vat-document,.uat-document,.trade-finance-document,
  .workflow-document,.notification-document,.email-delivery-document,.portal-document,
  .document-vault-document,.document-register-document,.management-document,.security-document,
  .support-ticket-document,.messaging-document,.price-document,.commercial-document,
  .accounting-document,.analytics-document,.legal-document,.vault-register-document,
  .release-verification-document,.action-inbox-document,.evidence-bundle-document{
    width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;
  }
  .container{padding-left:8px!important;padding-right:8px!important;}
  .card,.toolbar-card,.readiness-panel,.readiness-fail-panel,.permission-matrix-card,
  .helper-card,.email-preview-card,.invoice-box,.details-box{
    padding:12px!important;border-radius:14px!important;min-width:0!important;max-width:100%!important;
  }
  h1{font-size:clamp(1.28rem,5.2vw,1.75rem)!important;line-height:1.12!important;overflow-wrap:anywhere!important;}
  h2{font-size:clamp(1.08rem,4.6vw,1.38rem)!important;line-height:1.16!important;overflow-wrap:anywhere!important;}
  h3{font-size:clamp(1rem,4.1vw,1.18rem)!important;line-height:1.2!important;overflow-wrap:anywhere!important;}
  p,.muted,.smalltext,.value,.label,.pill,.status,.notice,.flash,.description-cell,
  .route,.route-a,.route-b,.route-c,.route-node,.search-result-count{
    max-width:100%!important;overflow-wrap:anywhere!important;word-break:normal!important;
  }
  .grid,.grid.two,.grid.three,.grid.four,.helper-grid,.analytics-grid,.home-feature-grid,
  .readiness-issue-columns,.signature-grid,.truck-hero-metrics,.provider-step-list,
  .dl-inline,.form-row,.stacked-form,.inline-form,.toolbar-row,.page-tools .toolbar-row,
  .workflow-actions,.portal-actions,.document-actions,.message-action-stack,.support-action-stack{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;min-width:0!important;width:100%!important;max-width:100%!important;
  }
  .toolbar-actions,.truck-hero-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;width:100%!important;max-width:100%!important;min-width:0!important;}
  .toolbar-actions > *,.truck-hero-actions > *{flex:1 1 140px!important;min-width:0!important;max-width:100%!important;}
  .field,.provider-step,.helper-item,.kpi,.kpi-mini,.checkline,.permission-document,.email-preview-card{
    min-width:0!important;max-width:100%!important;width:100%!important;
  }
  label,.field-label{display:block!important;max-width:100%!important;overflow-wrap:anywhere!important;}
  input:not([type="checkbox"]):not([type="radio"]),select,textarea,
  .command-search-form input,.datatable-toolbar input,.datatable-toolbar select{
    width:100%!important;max-width:100%!important;min-width:0!important;font-size:14px!important;line-height:1.25!important;
  }
  textarea{white-space:pre-wrap!important;overflow-wrap:anywhere!important;}
  button,.btn,a.btn,input[type="submit"],input[type="button"]{
    max-width:100%!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.2!important;font-size:13px!important;padding-left:10px!important;padding-right:10px!important;
  }
  .toolbar-actions button,.toolbar-actions .btn,.document-actions button,.document-actions .btn,
  .workflow-actions button,.workflow-actions .btn,.portal-actions button,.portal-actions .btn{
    width:auto!important;min-height:42px!important;
  }
  .inline-form button,.inline-form .btn,.stacked-form button,.stacked-form .btn{width:100%!important;justify-content:center!important;}
  .command-search-form{grid-template-columns:minmax(0,1fr)!important;gap:8px!important;}
  .brand-wrap,.brand-home,.brand-text{min-width:0!important;max-width:100%!important;}
  .brand-text strong{display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
  .brand-logo{flex:0 0 auto!important;}
  .topbar{gap:6px!important;padding-left:8px!important;padding-right:8px!important;}
  .kpi-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;width:100%!important;}
  .kpi .value,.kpi-mini .value{font-size:clamp(1rem,5.5vw,1.42rem)!important;overflow-wrap:anywhere!important;}
  .table-wrap,.datatable-wrap,.datatable-container,.permission-matrix-scroll,.price-records-table,
  .finance-table,.invoice-lines,.readiness-panel,.bank-reconciliation-document,
  .table-responsive,.table-scroll,.lgft-mobile-table-scroll{
    width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;
  }
  table,table.table,.permission-matrix-table,.finance-table table{
    max-width:none!important;min-width:100%!important;border-collapse:collapse!important;
  }
  table.table{display:block!important;width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;}
  table.table th,table.table td,
  .permission-matrix-table th,.permission-matrix-table td{
    font-size:12px!important;line-height:1.25!important;padding:8px!important;vertical-align:top!important;
  }
  table.table td,table.table th{white-space:normal!important;overflow-wrap:anywhere!important;min-width:78px!important;}
  table.table td.description-cell,table.table .description-cell,
  table.table td:nth-child(3),table.table td:nth-child(4){min-width:150px!important;}
  .pill,.status{display:inline-flex!important;align-items:center!important;max-width:100%!important;white-space:normal!important;line-height:1.15!important;}
  .progress-wrap{min-width:0!important;width:100%!important;max-width:180px!important;justify-content:flex-start!important;}
  .progress-track{width:72px!important;min-width:72px!important;}
  .notification-dropdown{left:8px!important;right:8px!important;width:auto!important;max-width:calc(100vw - 16px)!important;}
  .modal,.dialog,.dropdown,.menu,.nav-menu{max-width:100vw!important;}
  .invoice-total-box,.invoice-grand,.right{max-width:100%!important;min-width:0!important;float:none!important;text-align:left!important;}
  .truck-hero,.truck-hero-content,.truck-hero-visual,.truck-hero-hud{max-width:100%!important;min-width:0!important;overflow:hidden!important;}
}
@media screen and (max-width: 420px){
  body{font-size:12.5px!important;}
  .container{padding-left:6px!important;padding-right:6px!important;}
  .card,.toolbar-card{padding:10px!important;}
  table.table th,table.table td{font-size:11.5px!important;padding:7px!important;}
  .pill,.status,.btn,button{font-size:12px!important;}
  .brand-text strong{font-size:12px!important;}
}


/* LGFT v4.51.27 mobile customer portal quick-action fit */
@media (max-width: 768px){
  .customer-quick-actions{width:100%;max-width:100%;overflow:hidden}
  .customer-quick-actions a,.customer-quick-actions button{max-width:100%;overflow-wrap:anywhere}
  .gate-list,.gate-pill{min-width:0;max-width:100%}
  .portal-document table td,.portal-document table th{max-width:82vw;overflow-wrap:anywhere;word-break:break-word}
}


/* v4.51.27.2 NON-REGRESSION MOBILE BURGER FRONT-LAYER LOCK
   Restores and hard-locks the mobile burger/menu drawer as the highest interactive layer.
   SCREEN ONLY. Does not alter portrait print CSS or business logic. */
@media screen and (max-width: 980px){
  html,body{max-width:100%!important;}
  body:not(.mobile-nav-open) .lgft-mobile-backdrop,
  html:not(.mobile-nav-open) body:not(.mobile-nav-open) .lgft-mobile-backdrop{
    display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  }
  .app-shell-header{
    position:sticky!important;top:0!important;z-index:2147483600!important;isolation:isolate!important;overflow:visible!important;contain:none!important;
  }
  .mobile-menu-toggle,
  button.mobile-menu-toggle,
  [data-mobile-menu-toggle]{
    display:flex!important;align-items:center!important;justify-content:center!important;
    position:fixed!important;top:10px!important;left:10px!important;
    width:46px!important;height:46px!important;min-width:46px!important;max-width:46px!important;
    border-radius:14px!important;background:#0b1220!important;color:#fff!important;
    border:1px solid rgba(214,171,54,.55)!important;
    box-shadow:0 14px 36px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.07) inset!important;
    z-index:2147483647!important;pointer-events:auto!important;touch-action:manipulation!important;
    opacity:1!important;visibility:visible!important;transform:none!important;
  }
  .topnav{
    position:fixed!important;inset:0!important;left:0!important;top:0!important;right:0!important;bottom:0!important;
    width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;
    z-index:2147483635!important;background:#07101f!important;
    overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;
    padding:78px 16px 28px!important;border:0!important;box-shadow:none!important;
    transform:translateX(-110%)!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
    transition:transform .18s ease, opacity .12s ease, visibility .12s ease!important;
    contain:none!important;isolation:isolate!important;
  }
  html.mobile-nav-open,body.mobile-nav-open{overflow:hidden!important;touch-action:none!important;}
  html.mobile-nav-open .topnav,body.mobile-nav-open .topnav,.mobile-nav-open .topnav{
    transform:translateX(0)!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;
    box-shadow:0 0 0 9999px rgba(0,0,0,.74),0 18px 80px rgba(0,0,0,.78)!important;
  }
  html.mobile-nav-open .lgft-mobile-backdrop,body.mobile-nav-open .lgft-mobile-backdrop,.mobile-nav-open .lgft-mobile-backdrop{
    display:block!important;position:fixed!important;inset:0!important;z-index:2147483620!important;
    background:rgba(0,0,0,.72)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  }
  html.mobile-nav-open [data-mobile-menu-toggle],body.mobile-nav-open [data-mobile-menu-toggle]{
    z-index:2147483647!important;pointer-events:auto!important;visibility:visible!important;opacity:1!important;
  }
  .topnav,.topnav *{max-width:100%!important;box-sizing:border-box!important;}
  .topnav a,.topnav button,.topnav summary,.topnav input,.topnav select,.topnav .nav-link,.topnav .btn{
    position:relative!important;z-index:2147483640!important;pointer-events:auto!important;touch-action:manipulation!important;
  }
  .topnav .nav-group{display:block!important;width:100%!important;margin:0 0 10px!important;}
  .topnav .nav-group summary{display:block!important;width:100%!important;min-height:48px!important;line-height:1.25!important;white-space:normal!important;}
  .topnav .nav-menu{position:static!important;display:grid!important;grid-template-columns:1fr!important;gap:6px!important;width:100%!important;min-width:0!important;max-width:100%!important;opacity:1!important;visibility:visible!important;max-height:none!important;overflow:visible!important;background:transparent!important;border:0!important;box-shadow:none!important;}
  .topnav .nav-link,.topnav a,.topnav button{width:100%!important;max-width:100%!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere!important;}
  body.mobile-nav-open main,body.mobile-nav-open .container,body.mobile-nav-open .page-shell{pointer-events:none!important;}
}
@media print{.mobile-menu-toggle,.lgft-mobile-backdrop{display:none!important;}}


/* v4.51.27.3 MOBILE HEADER BUTTON + SCREEN FIT NON-REGRESSION LOCK
   Keeps the burger in front WITHOUT covering the logo; fixes button text fit and mobile overflow.
   SCREEN ONLY. Portrait print CSS remains untouched. */
@media screen and (max-width: 980px){
  .app-shell-header{
    min-height:64px!important;
    padding:8px 64px 8px 8px!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    overflow:visible!important;
  }
  .app-shell-header .brand-wrap{min-width:0!important;max-width:calc(100vw - 86px)!important;flex:1 1 auto!important;}
  .app-shell-header .brand-home{min-width:0!important;max-width:100%!important;display:flex!important;align-items:center!important;gap:8px!important;}
  .app-shell-header .brand-logo{width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;max-width:54px!important;max-height:54px!important;padding:2px!important;border-radius:12px!important;}
  .app-shell-header .brand-text{min-width:0!important;max-width:100%!important;}
  .app-shell-header .brand-text strong{font-size:12.5px!important;line-height:1.08!important;white-space:normal!important;overflow-wrap:anywhere!important;}
  .app-shell-header .brand-text small{display:none!important;}
  .mobile-menu-toggle,
  button.mobile-menu-toggle,
  [data-mobile-menu-toggle]{
    position:fixed!important;
    top:10px!important;
    right:10px!important;
    left:auto!important;
    width:46px!important;height:46px!important;min-width:46px!important;max-width:46px!important;
    padding:0!important;margin:0!important;
    z-index:2147483647!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    user-select:none!important;
    -webkit-user-select:none!important;
    touch-action:manipulation!important;
    transform:none!important;
  }
  body.mobile-nav-open .mobile-menu-toggle,
  body.mobile-nav-open [data-mobile-menu-toggle],
  html.mobile-nav-open .mobile-menu-toggle,
  html.mobile-nav-open [data-mobile-menu-toggle]{
    position:fixed!important;top:10px!important;right:10px!important;left:auto!important;z-index:2147483647!important;pointer-events:auto!important;
  }
  .topnav{padding-top:72px!important;}
  body.mobile-nav-open main,body.mobile-nav-open .container,body.mobile-nav-open .page-shell{pointer-events:none!important;}
  body.mobile-nav-open .mobile-menu-toggle,body.mobile-nav-open [data-mobile-menu-toggle],body.mobile-nav-open .topnav,body.mobile-nav-open .topnav *{pointer-events:auto!important;}
}

@media screen and (max-width: 768px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  body,.app-shell,.page-shell,main,.container,.content,.main-content,.card,.toolbar-card,.panel,.section,.box,.form-card,.portal-card,.customer-card,.admin-card{
    max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow-wrap:anywhere!important;
  }
  .card,.toolbar-card,.panel,.section,.box,.portal-card,.customer-card,.admin-card{overflow-x:hidden!important;}
  .grid,.grid.two,.grid.three,.grid.four,.form-grid,.form-row,.row,.columns,.split,.two-col,.three-col,.filter-row,.toolbar-row,.summary-grid,.stats-grid,.kpi-grid,.action-grid{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important;min-width:0!important;gap:8px!important;
  }
  .field,.form-field,.input-group,.control-group,label,.field-label,.form-label{min-width:0!important;max-width:100%!important;width:100%!important;overflow-wrap:anywhere!important;}
  input:not([type="checkbox"]):not([type="radio"]),select,textarea,.input,.select,.textarea{
    width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
  }
  .btn,button,a.btn,input[type="submit"],input[type="button"],.button,.action-btn,.nav-link,.pill-action{
    min-width:0!important;max-width:100%!important;height:auto!important;min-height:38px!important;
    white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;hyphens:auto!important;
    line-height:1.12!important;text-align:center!important;padding:9px 10px!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
  }
  .toolbar-actions,.document-actions,.form-actions,.portal-actions,.workflow-actions,.button-row,.action-row,.quick-actions,.customer-quick-actions{
    display:flex!important;flex-wrap:wrap!important;gap:8px!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;
  }
  .toolbar-actions .btn,.toolbar-actions button,.document-actions .btn,.document-actions button,.form-actions .btn,.form-actions button,.button-row .btn,.button-row button,.quick-actions .btn,.quick-actions button,.quick-actions a{
    flex:1 1 130px!important;max-width:100%!important;
  }
  .table-wrap,.table-scroll,.table-responsive,.datatable-wrap,.datatable-container,.lgft-mobile-table-scroll,.bank-reconciliation-document,.document-table-wrap{
    display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch!important;
  }
  table,table.table,.datatable,.permission-matrix-table{width:max-content!important;max-width:none!important;min-width:100%!important;}
  table.table th,table.table td,.datatable th,.datatable td{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;max-width:220px!important;}
  .kpi,.stat,.metric,.summary-card,.gate-card,.timeline-card{min-width:0!important;max-width:100%!important;overflow:hidden!important;}
  .kpi *,.stat *,.metric *,.summary-card *,.gate-card *,.timeline-card *{max-width:100%!important;overflow-wrap:anywhere!important;}
  .badge,.pill,.status,.tag,.ref,.code,.mono,.smalltext{max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;}
}
@media screen and (max-width: 420px){
  .btn,button,a.btn,input[type="submit"],input[type="button"],.button{font-size:12px!important;padding:8px 8px!important;min-height:36px!important;}
  .toolbar-actions .btn,.toolbar-actions button,.document-actions .btn,.document-actions button,.form-actions .btn,.form-actions button,.button-row .btn,.button-row button,.quick-actions .btn,.quick-actions button,.quick-actions a{flex-basis:100%!important;}
  .app-shell-header{padding-right:60px!important;}
  .app-shell-header .brand-logo{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;}
  .app-shell-header .brand-text strong{font-size:11.5px!important;}
  .mobile-menu-toggle,[data-mobile-menu-toggle]{width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;}
}
@media print{.mobile-menu-toggle,.lgft-mobile-backdrop{display:none!important;}}
