/* NEXTGEN ADMIN MASTER THEME — internal admin only. Public homepage is intentionally untouched. */
.nx-admin-theme{--nx-navy:#062d57;--nx-blue:#1477e8;--nx-gold:#f3c44f;--nx-bg:#f4f7fb;--nx-text:#14243a;--nx-muted:#64758a;--nx-border:#e3ebf4}
.nx-admin-theme, .nx-admin-theme *{box-sizing:border-box}
.nx-admin-theme{margin:0!important;background:var(--nx-bg)!important;color:var(--nx-text)!important;font-family:Arial,Helvetica,sans-serif!important;overflow-x:hidden!important}
.nx-admin-theme a{text-decoration:none}
.nx-admin-theme .ng-sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:260px!important;background:var(--nx-navy)!important;color:#fff!important;z-index:10000!important;box-shadow:12px 0 35px rgba(0,35,75,.10)!important;display:flex!important;flex-direction:column!important}
.nx-admin-theme .ng-brand{height:86px!important;padding:15px 17px!important;display:flex!important;gap:12px!important;align-items:center!important;border-bottom:1px solid rgba(255,255,255,.10)!important;flex:none!important}
.nx-admin-theme .ng-brand img{width:50px!important;height:50px!important;object-fit:contain!important;border-radius:14px!important;background:#fff!important;padding:3px!important}
.nx-admin-theme .ng-brand b{display:block!important;color:#fff!important;font-size:18px!important;letter-spacing:.2px!important}
.nx-admin-theme .ng-brand small{display:block!important;color:#bfd0e4!important;margin-top:3px!important;font-size:11px!important}
.nx-admin-theme .ng-nav{padding:13px 10px!important;overflow-y:auto!important;overflow-x:hidden!important;flex:1!important}
.nx-admin-theme .ng-nav a{display:flex!important;align-items:center!important;gap:10px!important;padding:11px 12px!important;margin:3px 0!important;border-radius:11px!important;color:#dbe7f4!important;font-weight:700!important;font-size:13px!important;transition:.18s!important}
.nx-admin-theme .ng-nav a:before{content:attr(data-icon)!important;width:22px!important;text-align:center!important;color:#a8bfda!important;font-weight:800!important}
.nx-admin-theme .ng-nav a:hover,.nx-admin-theme .ng-nav a.active{background:#1477e8!important;color:#fff!important;box-shadow:0 8px 20px rgba(20,119,232,.25)!important}
.nx-admin-theme .ng-nav a:hover:before,.nx-admin-theme .ng-nav a.active:before{color:#fff!important}
.nx-admin-theme .ng-section{padding:15px 12px 6px!important;color:#91a9c5!important;font-size:10px!important;font-weight:800!important;letter-spacing:.14em!important}
.nx-admin-theme .ng-side-footer{margin-top:auto!important;padding:14px 17px!important;border-top:1px solid rgba(255,255,255,.10)!important;color:#b8c9dd!important;font-size:10px!important;line-height:1.5!important;flex:none!important}
.nx-admin-theme .ng-side-footer span{color:var(--nx-gold)!important}
.nx-admin-theme .ng-menu{display:none!important}
.nx-admin-theme .ng-overlay{display:none!important}
/* all legacy page shells */
.nx-admin-theme>header{margin-left:260px!important;min-height:74px!important;height:auto!important;padding:15px 28px!important;background:var(--nx-navy)!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:15px!important;position:sticky!important;top:0!important;z-index:9000!important;box-shadow:0 4px 20px rgba(0,35,75,.14)!important}
.nx-admin-theme>header strong{color:#fff!important;font-size:23px!important;font-weight:800!important}
.nx-admin-theme>header a,.nx-admin-theme header .btn,.nx-admin-theme header .back{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:0 16px!important;border-radius:11px!important;font-weight:800!important;border:1px solid rgba(255,255,255,.25)!important;background:rgba(255,255,255,.10)!important;color:#fff!important}
.nx-admin-theme>header a:hover{background:rgba(255,255,255,.18)!important}
.nx-admin-theme>header .btn:not(.back){background:var(--nx-blue)!important;border-color:var(--nx-blue)!important}
/* common content containers */
.nx-admin-theme>.wrap,.nx-admin-theme>.box,.nx-admin-theme>.content,.nx-admin-theme>.main,.nx-admin-theme>.page,.nx-admin-theme>.page-wrap,.nx-admin-theme>.container,.nx-admin-theme>main:not(.dash-wrap){margin-left:260px!important;padding:28px!important;max-width:none!important;width:auto!important;background:transparent!important}
.nx-admin-theme .wrap,.nx-admin-theme .box,.nx-admin-theme .content,.nx-admin-theme .main,.nx-admin-theme .page-wrap{color:var(--nx-text)!important}
.nx-admin-theme h1,.nx-admin-theme h2,.nx-admin-theme h3,.nx-admin-theme h4{color:#0a2949!important;font-weight:800!important}
.nx-admin-theme h2{font-size:28px!important;margin:0 0 18px!important}
.nx-admin-theme h3{font-size:21px!important}
.nx-admin-theme .top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap!important;margin-bottom:18px!important}
.nx-admin-theme .top h2{margin:0!important}
/* cards / panels / boxes */
.nx-admin-theme .card,.nx-admin-theme .box,.nx-admin-theme .panel,.nx-admin-theme .table-card,.nx-admin-theme .tablebox,.nx-admin-theme .table-wrap,.nx-admin-theme .section-card,.nx-admin-theme .widget,.nx-admin-theme .form-card{background:#fff!important;border:1px solid var(--nx-border)!important;border-radius:22px!important;box-shadow:0 9px 28px rgba(19,52,84,.06)!important}
.nx-admin-theme .box{padding:25px!important;overflow:auto!important}
.nx-admin-theme .card{padding:22px!important}
.nx-admin-theme .tablebox,.nx-admin-theme .table-card,.nx-admin-theme .table-wrap{overflow:auto!important;padding:0!important;margin-top:18px!important}
/* buttons */
.nx-admin-theme .btn,.nx-admin-theme button,.nx-admin-theme input[type=submit],.nx-admin-theme input[type=button]{font:inherit!important;font-weight:750!important;border-radius:11px!important;cursor:pointer!important}
.nx-admin-theme .btn,.nx-admin-theme .btn-primary,.nx-admin-theme button.btn-primary,.nx-admin-theme input[type=submit]{background:var(--nx-blue)!important;color:#fff!important;border:1px solid var(--nx-blue)!important;padding:10px 15px!important;box-shadow:0 6px 15px rgba(20,119,232,.16)!important}
.nx-admin-theme .btn:hover,.nx-admin-theme .btn-primary:hover,.nx-admin-theme input[type=submit]:hover{transform:translateY(-1px)!important}
.nx-admin-theme .btn-secondary,.nx-admin-theme .back{background:#fff!important;color:#12385d!important;border:1px solid #d9e3ed!important}
.nx-admin-theme .btn-danger,.nx-admin-theme .danger{background:#dc3545!important;color:#fff!important;border-color:#dc3545!important}
/* tables */
.nx-admin-theme table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;background:#fff!important;min-width:720px}
.nx-admin-theme th{background:var(--nx-navy)!important;color:#fff!important;padding:14px 13px!important;text-align:left!important;font-size:12px!important;letter-spacing:.35px!important;white-space:nowrap!important}
.nx-admin-theme th:first-child{border-radius:14px 0 0 0}.nx-admin-theme th:last-child{border-radius:0 14px 0 0}
.nx-admin-theme td{padding:13px!important;border-bottom:1px solid #edf1f5!important;color:#27384d!important;background:#fff!important;vertical-align:middle!important}
.nx-admin-theme tr:last-child td{border-bottom:0!important}
.nx-admin-theme tbody tr:hover td{background:#f8fbff!important}
.nx-admin-theme .badge,.nx-admin-theme .status,.nx-admin-theme .chip{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 9px!important;border-radius:999px!important;font-size:11px!important;font-weight:800!important}
.nx-admin-theme .badge.active,.nx-admin-theme .status.active{background:#dcfce7!important;color:#166534!important}.nx-admin-theme .badge.inactive,.nx-admin-theme .status.inactive{background:#fee2e2!important;color:#991b1b!important}
.nx-admin-theme .actions a,.nx-admin-theme .actions button,.nx-admin-theme .edit,.nx-admin-theme .toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:7px 10px!important;border-radius:8px!important;border:1px solid #dbe5ef!important;font-weight:700!important;background:#f6f9fd!important;color:#16416b!important}
/* forms */
.nx-admin-theme form{max-width:100%!important}
.nx-admin-theme label{display:block!important;margin:0 0 7px!important;color:#29435f!important;font-weight:750!important;font-size:13px!important}
.nx-admin-theme input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),.nx-admin-theme select,.nx-admin-theme textarea{width:100%!important;min-height:44px!important;padding:10px 12px!important;border:1px solid #d8e2ec!important;border-radius:11px!important;background:#fff!important;color:#1c3048!important;outline:none!important;font:inherit!important}
.nx-admin-theme textarea{min-height:110px!important;resize:vertical!important}
.nx-admin-theme input:focus,.nx-admin-theme select:focus,.nx-admin-theme textarea:focus{border-color:#76aee8!important;box-shadow:0 0 0 3px rgba(20,119,232,.10)!important}
.nx-admin-theme .field,.nx-admin-theme .form-group{margin-bottom:16px!important}
.nx-admin-theme .grid,.nx-admin-theme .cards,.nx-admin-theme .stats,.nx-admin-theme .kpis{gap:18px!important}
.nx-admin-theme .alert,.nx-admin-theme .notice,.nx-admin-theme .message,.nx-admin-theme .err,.nx-admin-theme .ok{border-radius:13px!important;padding:12px 14px!important;border:1px solid #dfe8f1!important;margin:12px 0!important}
/* dashboard stays compatible with its own classes */
.nx-admin-theme .dash-wrap{margin-left:260px!important;padding:30px!important}
/* prevent legacy full-width pseudo overlays */
.nx-admin-theme body:before,.nx-admin-theme body:after{display:none!important}
@media(max-width:900px){
 .nx-admin-theme .ng-sidebar{transform:translateX(-105%)!important;transition:transform .25s ease!important;width:285px!important}
 .nx-admin-theme .ng-sidebar.open{transform:translateX(0)!important}
 .nx-admin-theme .ng-menu{display:flex!important;position:fixed!important;right:14px!important;top:14px!important;z-index:11000!important;width:48px!important;height:48px!important;border:0!important;border-radius:13px!important;background:#fff!important;color:var(--nx-navy)!important;align-items:center!important;justify-content:center!important;font-size:25px!important;box-shadow:0 8px 24px rgba(0,0,0,.16)!important}
 .nx-admin-theme .ng-overlay{position:fixed!important;inset:0!important;display:block!important;background:rgba(2,20,40,.48)!important;z-index:9999!important;opacity:0!important;visibility:hidden!important;transition:.2s!important}
 .nx-admin-theme .ng-overlay.show{opacity:1!important;visibility:visible!important}
 .nx-admin-theme>header{margin-left:0!important;padding:15px 78px 15px 18px!important;min-height:70px!important}
 .nx-admin-theme>header strong{font-size:19px!important}
 .nx-admin-theme>.wrap,.nx-admin-theme>.box,.nx-admin-theme>.content,.nx-admin-theme>.main,.nx-admin-theme>.page,.nx-admin-theme>.page-wrap,.nx-admin-theme>.container,.nx-admin-theme>main:not(.dash-wrap),.nx-admin-theme .dash-wrap{margin-left:0!important;padding:18px 14px!important}
 .nx-admin-theme .box{border-radius:18px!important;padding:18px!important}
 .nx-admin-theme h2{font-size:23px!important}
}
@media(max-width:620px){
 .nx-admin-theme>header strong{font-size:17px!important;line-height:1.25!important}.nx-admin-theme>header a{min-height:40px!important;padding:0 11px!important;font-size:12px!important}.nx-admin-theme>header a.back{display:none!important}
 .nx-admin-theme .card{padding:17px!important;border-radius:18px!important}.nx-admin-theme .top{align-items:flex-start!important}
 .nx-admin-theme .top .btn{width:auto!important}.nx-admin-theme table{min-width:680px!important}
}
