:root{--fsi-navy:#071a36;--fsi-navy-2:#0d294f;--fsi-blue:#2468b5;--fsi-gold:#f4b223;--fsi-line:rgba(255,255,255,.1)}
html{overflow-x:hidden;-webkit-text-size-adjust:100%}body{font-family:Inter,"Segoe UI",system-ui,-apple-system,sans-serif;overflow-x:hidden}.fsi-nav-scrim{display:none}

/* Authentication surfaces only */
.fsi-auth-page,.bg-cover{min-height:100vh;min-height:100dvh;background:linear-gradient(135deg,rgba(2,12,30,.88),rgba(5,28,58,.72)),url('/bfp-bg.jpg') center/cover no-repeat fixed;padding:max(18px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
.login-card,.glass,.fsi-auth-card{width:100%!important;max-width:450px!important;background:rgba(250,252,255,.96)!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:16px!important;padding:30px!important;box-shadow:0 22px 60px rgba(2,12,30,.38)!important;backdrop-filter:blur(7px)}
.login-card .brand img,.fsi-auth-logo{display:block;width:72px;height:72px;object-fit:contain;margin:0 auto;background:transparent}.login-card h4,.glass h4,.fsi-auth-card h4{color:var(--fsi-navy);letter-spacing:.015em}.login-card .input-group{flex-wrap:nowrap}.login-card .input-group-text{width:46px;min-width:46px;min-height:48px;display:flex;align-items:center;justify-content:center;background:#fff;border-color:#b9c7d8;color:#34506f}.login-card .input-group-text:first-child{border-radius:9px 0 0 9px}.login-card .input-group-text:last-child{border-radius:0 9px 9px 0;border-left:0;cursor:pointer}.login-card .form-control,.glass .form-control,.fsi-auth-card .form-control{min-height:48px;border-color:#b9c7d8;border-radius:9px;font-size:16px}.login-card .input-group .form-control{border-radius:0;border-left:0}.login-card .form-control:focus,.glass .form-control:focus,.fsi-auth-card .form-control:focus{border-color:#2468b5;box-shadow:0 0 0 3px rgba(36,104,181,.14)}.login-options{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 19px}.login-options .form-check,.login-options .forgot-link{margin:0!important}.login-card .btn-primary,.glass .btn-primary,.fsi-auth-card .btn-primary{width:100%;min-height:48px;border:0;border-radius:9px;background:#124f91!important;box-shadow:none!important;font-weight:700}.login-card .btn-primary:hover,.glass .btn-primary:hover,.fsi-auth-card .btn-primary:hover{background:#0d3e74!important}.login-card .btn-primary:active,.glass .btn-primary:active,.fsi-auth-card .btn-primary:active{transform:translateY(1px)}

.login-card .brand img,.fsi-auth-logo{mix-blend-mode:multiply}

/* Shared top navigation */
.modern-navbar.main-header{height:52px!important;min-height:52px!important;margin-left:248px!important;padding:max(4px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) 4px 10px!important;background:#081b38!important;border-bottom:1px solid var(--fsi-line)!important;transition:margin-left .2s ease!important;z-index:1035!important}.modern-navbar .nav-link{min-width:40px;min-height:40px;display:flex!important;align-items:center;justify-content:center;border-radius:7px;color:#d9e6f6!important}.modern-navbar .nav-link:hover{background:rgba(255,255,255,.08)!important;color:#fff!important}.modern-navbar .nav-brand{display:block!important;color:#fff!important;font-size:.88rem!important;font-weight:800!important;letter-spacing:.08em!important;white-space:nowrap}.modern-navbar .nav-user{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d9e6f6!important;font-size:.78rem}.modern-navbar .text-danger{color:#ff9c9c!important}.modern-navbar .badge{position:absolute;top:2px;right:1px}

/* Shared desktop sidebar */
.modern-sidebar.main-sidebar{position:fixed!important;inset:0 auto 0 0!important;width:248px!important;height:100vh!important;height:100dvh!important;background:#091d3d!important;border-right:1px solid var(--fsi-line)!important;transform:none!important;transition:width .2s ease,transform .2s ease!important;overflow:hidden!important;z-index:1040!important}.modern-sidebar .sidebar{height:100%!important;overflow-y:auto!important;overflow-x:hidden!important;padding:8px 0 calc(16px + env(safe-area-inset-bottom))!important;scrollbar-width:thin}.sidebar-profile{display:flex!important;align-items:center!important;gap:10px!important;margin:4px 9px 8px!important;padding:10px 8px 12px!important;border:0!important;border-bottom:1px solid var(--fsi-line)!important;border-radius:0!important;background:transparent!important;min-width:0}.sidebar-profile .profile-icon{width:34px;min-width:34px;font-size:30px!important;color:#8ab5e8!important;text-align:center}.sidebar-profile>div{min-width:0}.profile-name,.profile-role,.profile-email{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-name{color:#fff!important;font-size:.78rem!important;font-weight:700!important}.profile-role{color:#a9c1dc!important;font-size:.68rem!important}.profile-email{color:#7f9bbb!important;font-size:.64rem!important}.modern-sidebar .nav-sidebar{padding:0 5px}.modern-sidebar .nav-sidebar .nav-item{margin:0!important}.modern-sidebar .nav-sidebar .nav-link{position:relative;display:flex!important;align-items:center!important;min-height:40px!important;margin:2px 3px!important;padding:8px 10px!important;border-radius:7px!important;color:#c8d8eb!important;font-size:.78rem!important;background:transparent!important;box-shadow:none!important;white-space:nowrap}.modern-sidebar .nav-sidebar .nav-link:hover{background:rgba(73,132,197,.14)!important;color:#fff!important}.modern-sidebar .nav-sidebar .nav-link.active{background:rgba(45,111,183,.22)!important;color:#fff!important}.modern-sidebar .nav-sidebar .nav-link.active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:3px;background:#55a5ff}.modern-sidebar .nav-sidebar .nav-icon{width:22px!important;min-width:22px!important;margin:0 9px 0 0!important;text-align:center!important;font-size:.85rem!important}.modern-sidebar .nav-sidebar .nav-link p{margin:0!important;overflow:hidden;text-overflow:ellipsis}.modern-sidebar .nav-header{margin:7px 4px 2px!important;padding:7px 9px 4px!important;color:#7894b5!important;font-size:.62rem!important;font-weight:800!important;letter-spacing:.11em!important;white-space:nowrap}
.content-wrapper{transition:margin-left .2s ease!important}.layout-fixed .content-wrapper,.layout-fixed .main-footer,.content-wrapper{margin-left:248px!important}

/* Neutralize AdminLTE's negative sidebar margin before sizing/collapse. */
.modern-sidebar.main-sidebar{margin-left:0!important}

/* Desktop icon-only collapse */
@media(min-width:769px){body.sidebar-collapse .modern-sidebar.main-sidebar{width:72px!important;transform:none!important}body.sidebar-collapse .modern-navbar.main-header,body.layout-fixed.sidebar-collapse .modern-navbar.main-header,body.sidebar-collapse .content-wrapper,body.layout-fixed.sidebar-collapse .content-wrapper,body.sidebar-collapse .main-footer{margin-left:72px!important;width:auto!important}body.sidebar-collapse .sidebar-profile{justify-content:center!important;margin-left:6px!important;margin-right:6px!important;padding-left:0!important;padding-right:0!important}body.sidebar-collapse .sidebar-profile>div,body.sidebar-collapse .modern-sidebar .nav-header,body.sidebar-collapse .modern-sidebar .nav-link p{display:none!important}body.sidebar-collapse .modern-sidebar .nav-sidebar .nav-link{justify-content:center!important;padding-left:0!important;padding-right:0!important}body.sidebar-collapse .modern-sidebar .nav-sidebar .nav-icon{margin:0!important;font-size:1rem!important}}

/* True mobile drawer; module content remains untouched */
@media(max-width:768px){.modern-navbar.main-header{position:relative!important;margin-left:0!important;width:100%!important;min-height:calc(50px + env(safe-area-inset-top))!important;height:calc(50px + env(safe-area-inset-top))!important;padding-left:max(6px,env(safe-area-inset-left))!important}.modern-navbar .nav-brand{font-size:.8rem!important}.modern-navbar .nav-user{display:none!important}.layout-fixed .content-wrapper,.layout-fixed .main-footer,.content-wrapper{margin-left:0!important}.modern-sidebar.main-sidebar{width:min(84vw,286px)!important;max-width:286px!important;transform:translateX(-102%)!important;padding-top:env(safe-area-inset-top)!important;z-index:1050!important}.sidebar-open .modern-sidebar.main-sidebar{transform:translateX(0)!important}.fsi-nav-scrim{position:fixed;inset:0;z-index:1045;border:0;background:rgba(2,10,24,.64);padding:0}.sidebar-open .fsi-nav-scrim{display:block}.sidebar-open{overflow:hidden!important;touch-action:none}.sidebar-open .modern-sidebar,.sidebar-open .modern-sidebar .sidebar{touch-action:pan-y}.modern-sidebar .nav-sidebar .nav-link{min-height:46px!important;font-size:.82rem!important}.modern-sidebar .nav-header{margin-top:9px!important}.login-card,.glass,.fsi-auth-card{max-width:450px!important;padding:24px 20px!important}.login-options{align-items:flex-start;flex-wrap:wrap}.bg-cover{background-attachment:scroll}}
@media(max-width:359px){.login-card,.glass,.fsi-auth-card{padding:21px 16px!important}.login-options{flex-direction:column;gap:9px}.modern-navbar .navbar-nav:last-child .nav-item:first-child{display:none}}
@media(max-height:520px) and (orientation:landscape){.fsi-auth-page,.bg-cover{align-items:flex-start!important}.login-card,.glass,.fsi-auth-card{margin:8px 0!important}.modern-sidebar .sidebar-profile{padding-top:6px!important;padding-bottom:7px!important}.modern-sidebar .nav-sidebar .nav-link{min-height:40px!important}}

/* Consolidated responsive application layer */
img,svg,video{max-width:100%;height:auto}.content,.container,.container-fluid,.row,[class*="col-"]{min-width:0}input,select,textarea,.form-control,.custom-select{max-width:100%}.modal-dialog{max-width:min(94vw,900px)}.modal-content{overflow-wrap:anywhere}.table-responsive{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-card,.bwc-card,.case-card,.draft-card{max-width:100%;overflow-wrap:anywhere}.dashboard-summary>.col-xl-3:nth-child(1) .sys-card{border-top-color:#3182ce!important}.dashboard-summary>.col-xl-3:nth-child(2) .sys-card{border-top-color:#16a085!important}.dashboard-summary>.col-xl-3:nth-child(3) .sys-card{border-top-color:#d99a16!important}.dashboard-summary>.col-xl-3:nth-child(4) .sys-card{border-top-color:#7b61c9!important}
@media(max-width:768px){
 .modern-navbar.main-header{position:sticky!important;top:0!important;left:0!important;right:0!important;z-index:1040!important}.modern-sidebar .sidebar{padding-top:3px!important}.sidebar-profile{margin:2px 7px 4px!important;padding:7px 6px 8px!important;gap:8px!important}.sidebar-profile .profile-icon{font-size:26px!important;width:30px!important;min-width:30px!important}.profile-name{font-size:.74rem!important}.profile-role{font-size:.63rem!important;line-height:1.15}.profile-email{font-size:.59rem!important;line-height:1.15}.modern-sidebar .nav-sidebar .nav-link{min-height:40px!important;padding:6px 9px!important;margin:1px 3px!important}.modern-sidebar .nav-header{margin:4px 4px 1px!important;padding:5px 9px 2px!important}.content-wrapper{max-width:100vw!important;padding-left:10px!important;padding-right:10px!important;overflow-x:hidden!important}.content,.container-fluid{padding-left:0!important;padding-right:0!important}.form-control,.custom-select,.form-select,input[type=text],input[type=email],input[type=password],input[type=search],input[type=date],input[type=time],select,textarea{font-size:16px;max-width:100%;min-width:0}.btn{min-height:42px;white-space:normal}.modal-dialog{margin:6px!important;max-width:calc(100vw - 12px)!important}.modal-content{max-height:calc(100dvh - 12px);overflow:auto}.modal-footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}.dashboard-summary{margin-left:-5px!important;margin-right:-5px!important}.dashboard-summary>[class*="col-"]{flex:0 0 50%!important;max-width:50%!important;padding-left:5px!important;padding-right:5px!important;margin-bottom:10px}.dashboard-summary .sys-card{height:100%;padding:12px!important;border-radius:10px!important}.dashboard-summary .sys-title{font-size:.7rem!important}.dashboard-summary .sys-value{font-size:1.55rem!important;margin:6px 0!important}.dashboard-summary .sys-row{font-size:.68rem!important;gap:5px!important}.table-card{padding:11px!important;border-radius:10px!important}.table-title{font-size:1rem!important;margin-bottom:10px!important}.table-card>input[type=text],.table-card>input[type=search],#issuedSearch{width:100%!important;margin-bottom:10px!important}.table-responsive{overflow:visible!important}#issuedTable,.backlog-table{display:block!important;width:100%!important;min-width:0!important;background:transparent!important}#issuedTable thead,.backlog-table thead{display:none!important}#issuedTable tbody,.backlog-table tbody{display:block!important}#issuedTable tbody tr,.backlog-table tbody tr{display:block!important;width:100%!important;background:#fff!important;border:1px solid #d9e2ed!important;border-radius:10px!important;padding:9px 10px!important;margin-bottom:9px!important;box-shadow:0 2px 8px rgba(6,24,50,.06)}#issuedTable tbody td,.backlog-table tbody td{display:grid!important;grid-template-columns:minmax(84px,31%) minmax(0,1fr)!important;gap:8px!important;width:100%!important;max-width:100%!important;padding:7px 2px!important;border:0!important;border-bottom:1px solid #e7edf4!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere!important;color:#172033!important}#issuedTable tbody td:last-child,.backlog-table tbody td:last-child{border-bottom:0!important}#issuedTable tbody td:before,.backlog-table tbody td:before{font-size:.62rem;font-weight:800;color:#607087;letter-spacing:.04em;text-transform:uppercase}#issuedTable tbody td:nth-child(1):before,.backlog-table tbody td:nth-child(1):before{content:"Record"}#issuedTable tbody td:nth-child(2):before,.backlog-table tbody td:nth-child(2):before{content:"Establishment"}#issuedTable tbody td:nth-child(3):before,.backlog-table tbody td:nth-child(3):before{content:"Owner"}#issuedTable tbody td:nth-child(4):before,.backlog-table tbody td:nth-child(4):before{content:"Address"}#issuedTable tbody td:nth-child(5):before,.backlog-table tbody td:nth-child(5):before{content:"FSI"}#issuedTable tbody td:nth-child(6):before,.backlog-table tbody td:nth-child(6):before{content:"Details / Action"}#issuedTable tbody td:nth-child(7):before,.backlog-table tbody td:nth-child(7):before{content:"Date Issued"}#issuedTable tbody td:nth-child(8):before,.backlog-table tbody td:nth-child(8):before{content:"Status"}#issuedTable tbody tr>td:only-child,.backlog-table tbody tr>td:only-child{display:block!important;text-align:center!important;padding:24px 8px!important}#issuedTable tbody tr>td:only-child:before,.backlog-table tbody tr>td:only-child:before{content:none!important}.dataTables_wrapper{max-width:100%!important;overflow:visible!important}.dataTables_filter,.dataTables_length{float:none!important;text-align:left!important;margin-bottom:8px}.dataTables_filter input{width:min(100%,280px)!important}.dropdown-menu{max-width:calc(100vw - 28px);white-space:normal}.bwc-card{padding:13px!important;border-radius:11px!important}.toolbar{gap:7px!important}.case-meta{grid-template-columns:repeat(2,minmax(0,1fr))!important}.entry-actions{width:100%;display:flex!important;flex-wrap:wrap}.entry-actions>*{flex:1 1 140px}.entry-actions form .btn{width:100%}.field-grid,.source-grid,.review-grid,.manual-grid,.view-grid,.settings-grid{grid-template-columns:1fr!important}.sticky-actions{padding-bottom:max(10px,env(safe-area-inset-bottom))!important}
}
@media(max-width:350px){.dashboard-summary>[class*="col-"]{flex-basis:100%!important;max-width:100%!important}.modern-navbar .nav-brand{max-width:180px;overflow:hidden;text-overflow:ellipsis}}
@media(max-width:768px){.modern-navbar .nav-brand{max-width:calc(100vw - 145px);font-size:.62rem!important;letter-spacing:.02em!important;overflow:hidden;text-overflow:ellipsis}}
