.crest{background-color:transparent!important;background-image:url(/kfa-logo.svg)!important;background-repeat:no-repeat!important;background-position:50%!important;background-size:contain!important;color:transparent!important;border-radius:0!important;overflow:visible}.brand .crest{width:46px;height:46px}.portalBrand .crest{width:48px;height:48px}.authCard:before{content:"";display:block;width:72px;height:72px;margin:0 auto 18px;background:url(/kfa-logo.svg) 50%/contain no-repeat}.kfaMobileMore,.kfaMobileNav{display:none}@media (max-width:760px){body,html{max-width:100%;overflow-x:hidden}.shell{width:100%!important;min-width:0!important;overflow-x:hidden!important}.shell>.sidebar{position:relative!important;left:auto!important;top:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:12px 14px!important;border-right:0!important;border-bottom:1px solid hsla(0,0%,100%,.08)!important}.shell>.sidebar .brand{padding:2px 0 0!important;margin:0!important}.shell>.sidebar .nav,.shell>.sidebar .sideUser{display:none!important}.shell>.main{margin-left:0!important;width:100%!important;max-width:none!important;min-width:0!important;padding:18px 14px 94px!important;overflow-x:hidden!important}.shell>.main header{display:flex!important;gap:10px!important;align-items:flex-start!important;margin-bottom:18px!important}.shell>.main header>div:first-child{min-width:0!important;flex:1 1 auto!important}.shell>.main header h1{font-size:25px!important;line-height:1.1!important;overflow-wrap:anywhere}.shell>.main .headerActions{flex:0 0 auto!important;gap:6px!important}.shell>.main .headerActions button{padding:8px 9px!important;font-size:10px!important}.shell>.main .headerActions .active{font-size:9px!important}.shell .card,.shell .panel{width:100%!important;min-width:0!important;box-sizing:border-box!important}.shell .panel{padding:15px!important;border-radius:15px!important}.shell .panelHead{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;margin-bottom:16px!important}.shell .panelHead h2{font-size:19px!important}.shell .toolbar{display:grid!important;grid-template-columns:1fr 1fr!important;grid-gap:8px!important;gap:8px!important;width:100%!important}.shell .toolbar>*{width:100%!important;min-width:0!important;box-sizing:border-box!important}.shell .attendanceConfirm{display:grid!important;grid-template-columns:1fr 1fr!important;grid-gap:8px!important;gap:8px!important}.shell .attendanceConfirm button{width:100%!important;min-width:0!important;min-height:44px!important}.shell .tableWrap{width:100%!important;max-width:100%!important;overflow:visible!important}.shell .tableWrap table{display:block!important;width:100%!important;min-width:0!important;border:0!important}.shell .tableWrap thead{display:none!important}.shell .tableWrap tbody,.shell .tableWrap tbody tr{display:block!important;width:100%!important}.shell .tableWrap tbody tr{box-sizing:border-box!important;margin:0 0 10px!important;padding:12px 13px!important;background:#102238!important;border:1px solid #1b354d!important;border-radius:12px!important}.shell .tableWrap tbody tr:last-child{margin-bottom:0!important}.shell .tableWrap tbody td{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;width:100%!important;box-sizing:border-box!important;padding:7px 0!important;border:0!important;text-align:right!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;color:#a9b9c8!important}.shell .tableWrap tbody td:before{flex:0 0 68px!important;color:#71879e!important;font-size:8px!important;font-weight:800!important;letter-spacing:1px!important;text-align:left!important}.shell .tableWrap:not(:has(th:nth-child(4))) tbody td:first-child:before{content:"DATE"}.shell .tableWrap:not(:has(th:nth-child(4))) tbody td:nth-child(2):before{content:"STATUS"}.shell .tableWrap:not(:has(th:nth-child(4))) tbody td:nth-child(3):before{content:"NOTE"}.shell .tableWrap:has(th:nth-child(4)) tbody td:first-child:before{content:"MONTH"}.shell .tableWrap:has(th:nth-child(4)) tbody td:nth-child(2):before{content:"AMOUNT"}.shell .tableWrap:has(th:nth-child(4)) tbody td:nth-child(3):before{content:"METHOD"}.shell .tableWrap:has(th:nth-child(4)) tbody td:nth-child(4):before{content:"RECEIPT"}.shell .tableWrap:has(th:nth-child(4)) tbody td:nth-child(4){margin-top:3px!important;padding-top:10px!important;border-top:1px solid #19324a!important}.shell .tableWrap tbody td button{max-width:100%!important}.shell .empty{overflow:hidden!important}.shell .empty,.shell .paidBanner,.shell .payButton{width:100%!important;box-sizing:border-box!important}.shell .receiptList,.shell .receiptList>button{width:100%!important;min-width:0!important}.shell>.mobileNav{display:none!important}.kfaMobileNav{position:fixed!important;left:10px!important;right:10px!important;bottom:10px!important;z-index:90!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-gap:4px!important;gap:4px!important;padding:7px!important;box-sizing:border-box!important;border:1px solid #29445c!important;border-radius:16px!important;background:rgba(9,24,39,.97)!important;box-shadow:0 14px 50px rgba(0,0,0,.45)!important;-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important}.kfaMobileNav button{min-width:0!important;min-height:52px!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#7891aa!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;padding:5px 2px!important;font:inherit!important;font-size:9px!important;line-height:1.1!important;cursor:pointer!important}.kfaMobileNav button.active,.kfaMobileNav button:hover{background:#142a40!important;color:#eef5ff!important}.kfaMobileIcon{font-size:17px!important;line-height:1!important;font-weight:800!important}.kfaMobileMore{position:fixed!important;right:14px!important;bottom:82px!important;z-index:95!important;width:min(235px,calc(100vw - 28px))!important;box-sizing:border-box!important;display:grid!important;grid-gap:5px!important;gap:5px!important;padding:8px!important;border:1px solid #29445c!important;border-radius:14px!important;background:#0b1a2a!important;box-shadow:0 18px 60px rgba(0,0,0,.5)!important}.kfaMobileMore button{display:flex!important;align-items:center!important;gap:11px!important;width:100%!important;min-height:44px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#dbe8f3!important;text-align:left!important;padding:9px 11px!important;font:inherit!important;font-size:12px!important;cursor:pointer!important}.kfaMobileMore button:hover{background:#142a40!important}.kfaMobileMore button span{width:22px!important;text-align:center!important;color:#b8f58a!important;font-weight:900!important}}@media (max-width:420px){.shell>.main{padding-left:10px!important;padding-right:10px!important}.shell .panel{padding:13px!important}.shell .attendanceConfirm,.shell .toolbar{grid-template-columns:1fr!important}.shell .tableWrap tbody td:before{flex-basis:58px!important}.kfaMobileNav{left:6px!important;right:6px!important;bottom:6px!important}}.mobileNav{display:none}.table tbody td:nth-child(2) .badge.ok{font-size:0}.table tbody td:nth-child(2) .badge.ok:after{content:"✓ PRESENT";font-size:9px}.table tbody td:nth-child(2) .badge.due{font-size:0}.table tbody td:nth-child(2) .badge.due:after{content:"ABSENT";font-size:9px}@media (max-width:760px){.shell>.main>header .headerActions .ghost{display:none!important}.shell>.mobileNav{position:fixed!important;left:6px!important;right:6px!important;bottom:max(6px,env(safe-area-inset-bottom))!important;z-index:999!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-gap:4px!important;gap:4px!important;padding:7px!important;box-sizing:border-box!important;border:1px solid #29445c!important;border-radius:16px!important;background:rgba(9,24,39,.97)!important;box-shadow:0 14px 50px rgba(0,0,0,.45)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}.shell>.mobileNav button{min-width:0!important;min-height:52px!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#7891aa!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;padding:5px 2px!important;font:inherit!important;font-size:9px!important;line-height:1.1!important;cursor:pointer!important}.shell>.mobileNav button i{display:block!important;width:auto!important;font-style:normal!important;font-size:17px!important;line-height:1!important;font-weight:800!important}.shell>.mobileNav button span{display:block!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}.shell>.mobileNav button.active,.shell>.mobileNav button:hover{background:#142a40!important;color:#eef5ff!important}.shell>.mobileNav button:last-child:not(:focus){background:transparent!important;color:#7891aa!important}.shell>.mobileNav button:last-child.active,.shell>.mobileNav button:last-child:hover{background:#142a40!important;color:#eef5ff!important}.shell>.main{padding-bottom:94px!important}.shell>.back{z-index:1000!important;display:block!important;padding:14px 12px calc(118px + env(safe-area-inset-bottom))!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}.shell>.back .modal{max-height:none!important;width:100%!important;margin:0 auto!important;padding:18px 16px calc(36px + env(safe-area-inset-bottom))!important;overflow:visible!important}.shell>.back .modalActions{padding-bottom:8px!important}}