:root{--qtag-green: #39ff14;--sidebar-width: 240px;--sidebar-collapsed-width: 70px;--sidebar-bg: linear-gradient(165deg, #000 40%, #39ff14 200%);--sidebar-bg-collapsed: #000;--main-bg: #181c23;--toolbar-height: 64px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#222;border-radius:4px}::-webkit-scrollbar-thumb{background:var(--qtag-green);border-radius:4px}::-webkit-scrollbar-corner{background:#222}*{scrollbar-width:thin;scrollbar-color:var(--qtag-green) #222}.expiry-date{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:4px;font-weight:500;font-size:.9rem}.expiry-date.expired{background-color:#dc3545;color:#fff}.expiry-date.expires-soon{background-color:#ffc107;color:#000}.expiry-date.expires-warning{background-color:#fd7e14;color:#fff}.expiry-date.valid{background-color:#28a745;color:#fff}.expiry-date.no-date{background-color:#6c757d;color:#fff}.assets-table td.inspection-date-cell{text-align:center!important;vertical-align:middle!important;font-weight:600;font-size:.85rem;line-height:1.35}.assets-table td.inspection-date-cell.date-quarterly-red,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-quarterly-red{background-color:#dc3545!important;color:#fff!important}.assets-table td.inspection-date-cell.date-quarterly-green,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-quarterly-green{background-color:#198754!important;color:#fff!important}.assets-table td.inspection-date-cell.date-quarterly-blue,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-quarterly-blue{background-color:#0d6efd!important;color:#fff!important}.assets-table td.inspection-date-cell.date-quarterly-yellow,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-quarterly-yellow{background-color:#ffc107!important;color:#000!important}.assets-table td.inspection-date-cell.date-yearly,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-yearly{background-color:#000!important;color:#fff!important}.assets-table td.inspection-date-cell.date-2-yearly,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-2-yearly{background-color:#6c757d!important;color:#fff!important}.assets-table td.inspection-date-cell.date-5-yearly,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-5-yearly{background-color:#8b4513!important;color:#fff!important}.assets-table td.inspection-date-cell.date-bi-orange,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-bi-orange{background-color:#fd7e14!important;color:#000!important}.assets-table td.inspection-date-cell.date-bi-white,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-bi-white{background-color:#fff!important;color:#212529!important;box-shadow:inset 0 0 0 1px #ced4da}.assets-table td.inspection-date-cell.date-monthly,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-monthly{background-color:#6f42c1!important;color:#fff!important}.assets-table td.inspection-date-cell.date-bi-annually,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-bi-annually{background-color:#20c997!important;color:#fff!important}.assets-table td.inspection-date-cell.date-na,.assets-table tr:hover:not(.highlighted-asset) td.inspection-date-cell.date-na{background-color:#e9ecef!important;color:#6c757d!important;font-weight:500}.assets-table td.inspection-date-cell.next-inspection-overdue{box-shadow:inset 0 0 0 2px red!important}.expiry-summary-compact{margin-bottom:16px}.summary-compact-bar{display:flex;align-items:center;gap:24px;padding:12px 20px;background:#1a1e25;border-radius:8px;border:1px solid #333;flex-wrap:wrap}.summary-item{display:flex;align-items:center;gap:8px;font-size:.9rem;cursor:help;position:relative}.summary-item:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-6px);padding:8px 12px;font-family:Segoe UI,Arial,sans-serif;font-size:.85rem;font-weight:400;line-height:1.4;color:#ddd;background:#1a1e25;border:1px solid #333;border-radius:6px;width:max-content;max-width:280px;white-space:normal;text-align:center;box-shadow:0 4px 12px #0006;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1000;pointer-events:none}.summary-item:before{content:"";position:absolute;bottom:100%;left:50%;margin-left:-6px;margin-bottom:-6px;border:6px solid transparent;border-top-color:#333;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1001}.summary-item:hover:after,.summary-item:hover:before{opacity:1;visibility:visible}.summary-item i{font-size:1rem;width:20px;text-align:center}.summary-item .summary-label{color:#aaa;font-weight:500}.summary-item .summary-value{color:#fff;font-weight:700;font-size:1.1rem}.summary-item.expired i,.summary-item.expired .summary-value{color:#dc3545}.summary-item.critical i,.summary-item.critical .summary-value{color:#ffc107}.summary-item.warning i,.summary-item.warning .summary-value{color:#fd7e14}.summary-item.valid i,.summary-item.valid .summary-value{color:#28a745}.summary-item:first-child i,.summary-item:first-child .summary-value{color:#007bff}.expiry-summary{margin-bottom:24px}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.summary-card{display:flex;align-items:center;padding:16px;border-radius:8px;background:#1a1e25;border:1px solid #333;transition:all .3s ease}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.summary-card.expired{border-left:4px solid #dc3545}.summary-card.critical{border-left:4px solid #ffc107}.summary-card.warning{border-left:4px solid #fd7e14}.summary-card.valid{border-left:4px solid #28a745}.summary-card.total{border-left:4px solid #007bff}.card-icon{font-size:2rem;margin-right:16px;width:48px;text-align:center}.summary-card.expired .card-icon{color:#dc3545}.summary-card.critical .card-icon{color:#ffc107}.summary-card.warning .card-icon{color:#fd7e14}.summary-card.valid .card-icon{color:#28a745}.summary-card.total .card-icon{color:#007bff}.card-content{flex:1}.card-number{font-size:2rem;font-weight:700;color:#fff;line-height:1}.card-label{font-size:.9rem;color:#aaa;margin-top:4px}html,body{height:100%;margin:0;padding:0;font-family:Segoe UI,Arial,sans-serif!important;font-size:16px!important;line-height:normal!important;font-weight:400!important;background:var(--main-bg);color:#fff;min-height:100vh;width:100vw;box-sizing:border-box;overflow:hidden}body{min-height:100vh;min-width:100vw;overflow-x:hidden;overflow-y:hidden}.admin-root{display:flex;height:100vh;width:100vw;overflow:hidden;font-family:Segoe UI,Arial,sans-serif;line-height:normal}.sidebar{width:var(--sidebar-width);flex:0 0 var(--sidebar-width);background:var(--sidebar-bg);color:#fff;display:flex;flex-direction:column;align-items:stretch;transition:width .3s;position:relative;z-index:10;height:100vh;max-height:100vh;box-sizing:border-box;font-family:Segoe UI,Arial,sans-serif!important;font-size:16px!important;line-height:normal!important;-webkit-font-smoothing:antialiased}.sidebar.collapsed{width:var(--sidebar-collapsed-width);flex-basis:var(--sidebar-collapsed-width);background:var(--sidebar-bg-collapsed)}.sidebar .logo{display:flex;align-items:center;justify-content:center;height:80px;background:#000;border-bottom:1px solid #222;flex-shrink:0}.sidebar .logo img{height:48px;width:auto}.sidebar.collapsed .logo img{height:35px;width:auto;max-width:100%}.sidebar nav{flex:1 1 auto;display:flex;flex-direction:column;margin-top:16px;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.sidebar nav::-webkit-scrollbar{width:0;height:0}.sidebar nav a{display:flex;align-items:center;gap:16px;padding:12px 24px;color:#fff!important;font-family:Segoe UI,Arial,sans-serif!important;font-size:1.08rem!important;font-weight:500!important;line-height:normal!important;letter-spacing:normal!important;border-left:4px solid transparent;transition:background .2s,border-color .2s;text-decoration:none!important;flex-shrink:0;cursor:pointer;position:relative;z-index:1;box-sizing:border-box}.sidebar nav a.active,.sidebar nav a:hover{background:#39ff141f;border-left:4px solid var(--qtag-green);color:var(--qtag-green)!important}.sidebar nav a i{min-width:22px;text-align:center;font-size:1.2em;line-height:1!important}.sidebar .logout{margin-top:16px;margin-bottom:0;padding:0 24px 16px;flex-shrink:0}.sidebar .logout button{width:100%;background:var(--qtag-green);color:#000;border:none;border-radius:6px;padding:12px 0;font-family:Segoe UI,Arial,sans-serif!important;font-weight:700;font-size:1rem;line-height:normal;cursor:pointer;transition:background .2s}.sidebar .logout button:hover{background:#000;color:#fff;border:1px solid var(--qtag-green)}.sidebar.collapsed nav a span,.sidebar.collapsed .logout button span{display:none}.sidebar.collapsed nav a{justify-content:center;padding:14px 0;font-size:0!important}.sidebar.collapsed nav a i{font-size:1.2rem!important}.sidebar.collapsed .logout button{padding:12px 0;font-size:1.2rem}
