:root{--brand-green: #8dc63f;--brand-blue: #1d67d4;--brand-red: #c63d2f;--brand-orange: #db8a35;--brand-light: #f2f6fb;--brand-dark: #0f1b36}:root{--nvp-blue-950: #061b3f;--nvp-blue-900: #08285a;--nvp-blue-800: #123a72;--nvp-blue-700: #1f4f93;--nvp-blue-300: #8fa9d1;--nvp-blue-200: #b7c8e5;--nvp-blue-100: #d7e2f4;--nvp-blue-50: #eef4ff;--nvp-green-600: #5d9f22;--nvp-green-500: #69b51d;--nvp-green-100: #ecf7da;--nvp-link-600: #1c66d5;--nvp-link-500: #2a7cf0;--nvp-link-100: #dcebff;--nvp-warning-600: #be7224;--nvp-warning-500: #db8a35;--nvp-warning-100: #fff3e3;--nvp-critical-600: #b44235;--nvp-critical-500: #c63d2f;--nvp-critical-100: #fdebe8;--nvp-bg: #f7f9fc;--nvp-bg-accent: #eef8e2;--nvp-surface: #ffffff;--nvp-surface-soft: #f3f7fc;--nvp-border: #dfe6f1;--nvp-border-strong: #c8d5e7;--nvp-text: #1c2f4d;--nvp-text-muted: #5f7495;--nvp-white: #ffffff;--nvp-table-header-bg: #e8f3d5;--nvp-table-row-hover: #f4f8ff;--nvp-font-family: "Futura PT", "Avenir Next", "Segoe UI", sans-serif;--nvp-font-size-xs: clamp(.74rem, .71rem + .1vw, .82rem);--nvp-font-size-sm: clamp(.84rem, .81rem + .14vw, .92rem);--nvp-font-size-md: clamp(.94rem, .91rem + .11vw, 1rem);--nvp-font-size-lg: clamp(1rem, .95rem + .22vw, 1.12rem);--nvp-font-size-xl: clamp(1.24rem, 1.12rem + .46vw, 1.5rem);--nvp-font-size-2xl: clamp(1.42rem, 1.25rem + .6vw, 1.76rem);--nvp-font-weight-500: 500;--nvp-font-weight-600: 600;--nvp-font-weight-700: 700;--nvp-space-1: clamp(.22rem, .2rem + .08vw, .28rem);--nvp-space-2: clamp(.38rem, .34rem + .14vw, .5rem);--nvp-space-3: clamp(.58rem, .52rem + .2vw, .76rem);--nvp-space-4: clamp(.82rem, .74rem + .28vw, 1.04rem);--nvp-space-5: clamp(1.04rem, .94rem + .34vw, 1.34rem);--nvp-space-6: clamp(1.3rem, 1.16rem + .46vw, 1.68rem);--nvp-space-7: clamp(1.62rem, 1.42rem + .64vw, 2.2rem);--nvp-space-8: clamp(2rem, 1.74rem + .86vw, 2.72rem);--nvp-radius-sm: .5rem;--nvp-radius-md: .75rem;--nvp-radius-lg: .9rem;--nvp-radius-xl: 1rem;--nvp-radius-pill: 999px;--nvp-shadow-sm: 0 1px 6px rgba(19, 38, 74, .07);--nvp-shadow-md: 0 8px 18px rgba(14, 31, 63, .12);--nvp-shadow-lg: 0 14px 30px rgba(14, 31, 63, .15);--nvp-sidebar-width: clamp(8.85rem, 8.6rem + .32vw, 9.4rem);--nvp-sidebar-width-collapsed: clamp(3.5rem, 3.38rem + .12vw, 3.8rem);--nvp-topbar-height: 3.1rem;--nvp-header-main-height: clamp(2.68rem, 2.56rem + .24vw, 2.94rem);--nvp-header-meta-height: 0rem;--nvp-header-total-height: var(--nvp-header-main-height);--nvp-control-height-sm: clamp(1.92rem, 1.86rem + .16vw, 2.06rem);--nvp-control-height-md: clamp(2.08rem, 2.02rem + .18vw, 2.24rem);--nvp-control-height-lg: clamp(2.42rem, 2.32rem + .24vw, 2.62rem);--nvp-table-row-height: clamp(2.28rem, 2.2rem + .16vw, 2.44rem);--nvp-bp-sm: 640px;--nvp-bp-md: 900px;--nvp-bp-lg: 1200px;--nvp-bp-xl: 1480px;--nvp-bp-2xl: 1680px;--nvp-page-max-width: 112rem;--nvp-page-padding-inline: clamp(.42rem, .38rem + .24vw, .68rem);--nvp-page-padding-block: clamp(.28rem, .24rem + .16vw, .48rem);--nvp-z-sidebar: 40;--nvp-z-topbar: 70;--nvp-z-overlay: 75;--nvp-z-drawer: 80;--nvp-status-active-bg: #e9f8dd;--nvp-status-active-text: #3f6811;--nvp-status-active-border: #b6da86;--nvp-status-maintenance-bg: #fff3e3;--nvp-status-maintenance-text: #8a551a;--nvp-status-maintenance-border: #efc79a;--nvp-status-defect-bg: #fdebe8;--nvp-status-defect-text: #8f3229;--nvp-status-defect-border: #e4b2ad;--nvp-status-stock-bg: #e8eef8;--nvp-status-stock-text: #37517f;--nvp-status-stock-border: #ccd9ec;--nvp-status-ordered-bg: #dcebff;--nvp-status-ordered-text: #1b4f9d;--nvp-status-ordered-border: #bfd6fa;--nvp-status-critical-bg: #fdebe8;--nvp-status-critical-text: #8f3229;--nvp-status-critical-border: #e6adab;--nvp-status-warning-bg: #fff3e3;--nvp-status-warning-text: #8a551a;--nvp-status-warning-border: #f0c999;--nvp-status-info-bg: #eaf3ff;--nvp-status-info-text: #1f4f96;--nvp-status-info-border: #bfd4f2;--nep-color-navy-950: var(--nvp-blue-950);--nep-color-navy-900: var(--nvp-blue-900);--nep-color-navy-800: var(--nvp-blue-800);--nep-color-navy-700: var(--nvp-blue-700);--nep-color-navy-600: var(--nvp-blue-700);--nep-color-navy-300: var(--nvp-blue-300);--nep-color-navy-200: var(--nvp-blue-200);--nep-color-navy-100: var(--nvp-blue-100);--nep-color-navy-50: var(--nvp-blue-50);--nep-color-accent-600: var(--nvp-green-600);--nep-color-accent-500: var(--nvp-green-500);--nep-color-accent-100: var(--nvp-green-100);--nep-color-link-600: var(--nvp-link-600);--nep-color-link-500: var(--nvp-link-500);--nep-color-link-100: var(--nvp-link-100);--nep-color-warning-600: var(--nvp-warning-600);--nep-color-warning-500: var(--nvp-warning-500);--nep-color-warning-100: var(--nvp-warning-100);--nep-color-critical-600: var(--nvp-critical-600);--nep-color-critical-500: var(--nvp-critical-500);--nep-color-critical-100: var(--nvp-critical-100);--nep-color-app-bg: var(--nvp-bg);--nep-color-surface: var(--nvp-surface);--nep-color-surface-soft: var(--nvp-surface-soft);--nep-color-border: var(--nvp-border);--nep-color-border-strong: var(--nvp-border-strong);--nep-color-text: var(--nvp-text);--nep-color-text-muted: var(--nvp-text-muted);--nep-color-white: var(--nvp-white);--nep-font-family: var(--nvp-font-family);--nep-font-size-xs: var(--nvp-font-size-xs);--nep-font-size-sm: var(--nvp-font-size-sm);--nep-font-size-md: var(--nvp-font-size-md);--nep-font-size-lg: var(--nvp-font-size-lg);--nep-font-size-xl: var(--nvp-font-size-xl);--nep-font-size-2xl: var(--nvp-font-size-2xl);--nep-font-weight-500: var(--nvp-font-weight-500);--nep-font-weight-600: var(--nvp-font-weight-600);--nep-font-weight-700: var(--nvp-font-weight-700);--nep-space-1: var(--nvp-space-1);--nep-space-2: var(--nvp-space-2);--nep-space-3: var(--nvp-space-3);--nep-space-4: var(--nvp-space-4);--nep-space-5: var(--nvp-space-5);--nep-space-6: var(--nvp-space-6);--nep-space-7: var(--nvp-space-7);--nep-radius-sm: var(--nvp-radius-sm);--nep-radius-md: var(--nvp-radius-md);--nep-radius-lg: var(--nvp-radius-lg);--nep-radius-xl: var(--nvp-radius-xl);--nep-radius-pill: var(--nvp-radius-pill);--nep-shadow-sm: var(--nvp-shadow-sm);--nep-shadow-md: var(--nvp-shadow-md);--nep-shadow-lg: var(--nvp-shadow-lg);--nep-bp-sm: var(--nvp-bp-sm);--nep-bp-md: var(--nvp-bp-md);--nep-bp-lg: var(--nvp-bp-lg);--nep-bp-xl: var(--nvp-bp-xl);--nep-z-sidebar: var(--nvp-z-sidebar);--nep-z-topbar: var(--nvp-z-topbar);--nep-z-drawer: var(--nvp-z-drawer);--nep-z-overlay: var(--nvp-z-overlay)}:root[data-theme=dark]{--nvp-blue-900: #e3edff;--nvp-blue-800: #c8dcff;--nvp-bg-accent: #10213f;--nvp-bg: #0d162b;--nvp-surface: #101d38;--nvp-surface-soft: #142544;--nvp-border: #2a436f;--nvp-border-strong: #365582;--nvp-text: #dfe9fb;--nvp-text-muted: #afc3e3;--nvp-link-100: #193862;--nvp-table-header-bg: #193257;--nvp-table-row-hover: #172e52;--nvp-status-active-bg: #173525;--nvp-status-active-text: #bce7c8;--nvp-status-active-border: #2b6f47;--nvp-status-warning-bg: #3f2c16;--nvp-status-warning-text: #f4d6aa;--nvp-status-warning-border: #7f5c2d;--nvp-status-critical-bg: #4a1e1e;--nvp-status-critical-text: #f6c3c3;--nvp-status-critical-border: #8d3a3a;--nvp-status-info-bg: #1d355a;--nvp-status-info-text: #c6dbff;--nvp-status-info-border: #335f9a;--nvp-status-stock-bg: #1e2c47;--nvp-status-stock-text: #c8d8f4;--nvp-status-stock-border: #3a537e}@media(max-width:960px){:root{--nvp-header-main-height: clamp(2.46rem, 2.38rem + .22vw, 2.74rem);--nvp-header-meta-height: 0rem;--nvp-header-total-height: var(--nvp-header-main-height);--nvp-page-padding-inline: clamp(.38rem, .34rem + .2vw, .56rem);--nvp-page-padding-block: clamp(.25rem, .23rem + .12vw, .38rem)}}*,*:before,*:after{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0;font-family:var(--nep-font-family);font-size:16px;color:var(--nep-color-text);background:radial-gradient(circle at 8% -18%,var(--nvp-bg-accent) 0%,var(--nep-color-app-bg) 36%);line-height:1.42;overflow-x:hidden;overflow-y:hidden;height:100%}img,svg,video,canvas{max-inline-size:100%;block-size:auto}h1,h2,h3,h4{margin:0;color:var(--nep-color-navy-900);font-family:var(--nep-font-family);font-weight:var(--nep-font-weight-700);letter-spacing:.01em}p{margin:0}a{color:var(--nep-color-link-600)}a:hover{color:var(--nep-color-link-500)}.page-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17.5rem),1fr));gap:var(--nep-space-4)}.nvp-page-shell,.nep-page-shell{display:flex;flex-direction:column;gap:var(--nvp-space-4)}.nvp-kpi-grid,.nep-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--nvp-space-3)}.nvp-layout-split,.nep-layout-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(17.25rem,22rem);gap:var(--nvp-space-4);align-items:start}.dashboard-page,.hardware-page,.hardware-inventory,.purchasing-flow-page,.software-page,.reports-page,.settings-page,.master-data-page,.locations-page,.links-page,.notifications-page,.audit-page,.csv-page,.user-detail-page,.users-container.compact{max-width:var(--nvp-page-max-width);margin-inline:auto;min-width:0}.dashboard-page,.hardware-inventory,.purchasing-flow-page,.software-page,.reports-page,.settings-page,.master-data-page,.locations-page,.links-page,.notifications-page,.audit-page,.csv-page,.user-detail-page{container-type:inline-size}.content-viewport>*{min-inline-size:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--nep-space-3)}.form-grid .full-width{grid-column:1/-1}.actions,.form-actions{display:flex;flex-wrap:wrap;gap:var(--nep-space-2);align-items:center}.top-gap{margin-top:var(--nep-space-4)}.card,.nep-card{background:var(--nep-color-surface);border:1px solid var(--nep-color-border);border-radius:var(--nep-radius-lg);padding:var(--nep-space-3);box-shadow:var(--nep-shadow-sm)}.nep-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--nep-space-3);padding:var(--nep-space-3);border:1px solid var(--nep-color-border);border-radius:var(--nep-radius-lg);background:var(--nep-color-surface);box-shadow:var(--nep-shadow-sm)}label{display:flex;flex-direction:column;gap:.34rem;font-size:var(--nep-font-size-sm);font-weight:var(--nep-font-weight-600);color:var(--nep-color-text-muted)}input,select,textarea,.nep-input,.nep-select{width:100%;min-height:var(--nvp-control-height-md);padding:.45rem .6rem;border:1px solid var(--nep-color-border-strong);border-radius:var(--nep-radius-sm);background:var(--nep-color-surface);color:var(--nep-color-text);font:inherit;font-size:var(--nep-font-size-md);box-shadow:inset 0 1px 2px #152a4d0d}textarea{min-height:6rem}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--nep-color-link-500);outline-offset:1px}button,.nep-btn{border:1px solid transparent;border-radius:var(--nep-radius-sm);min-height:var(--nvp-control-height-sm);padding:.4rem .76rem;font:inherit;font-size:var(--nep-font-size-sm);font-weight:var(--nep-font-weight-600);cursor:pointer;color:var(--nep-color-text);background:#eef3fb;transition:background-color .12s ease,border-color .12s ease,color .12s ease}button:disabled,.nep-btn:disabled,button[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn-primary,button.btn-primary,.primary,.nep-btn.primary{background:var(--nep-color-accent-500);border-color:var(--nep-color-accent-600);color:var(--nep-color-white)}.btn-secondary,button.btn-secondary,.secondary,.nep-btn.secondary{background:var(--nep-color-link-100);border-color:#c2d9ff;color:#184e9f}.btn-warning,.warning,.nep-btn.warning{background:var(--nep-color-warning-100);border-color:#f0c999;color:#8a551a}.btn-danger,.danger,.nep-btn.danger{background:var(--nep-color-critical-100);border-color:#e6adab;color:#8f3229}.btn-link,button.btn-link{background:transparent;border:none;color:var(--nep-color-link-600);padding-inline:0}.nep-badge,.status-badge,.pill{display:inline-flex;align-items:center;gap:.22rem;border-radius:var(--nep-radius-pill);padding:.18rem .56rem;font-size:var(--nep-font-size-xs);font-weight:var(--nep-font-weight-700)}.status-badge.active,.pill.active,.nep-badge.success{background:var(--nep-color-accent-100);color:#436b12}.status-badge.inactive,.pill.inactive,.nep-badge.neutral{background:#e8eef8;color:#37517f}.nep-badge.warning{background:var(--nep-color-warning-100);color:#8d561a}.nep-badge.critical{background:var(--nep-color-critical-100);color:#8e3228}.hardware-detail-page .status-pill[data-tone=ordered]{background:var(--nvp-status-ordered-bg);color:var(--nvp-status-ordered-text)}.hardware-detail-page .status-pill[data-tone=active]{background:var(--nvp-status-active-bg);color:var(--nvp-status-active-text)}.hardware-detail-page .status-pill[data-tone=warning]{background:var(--nvp-status-critical-bg);color:var(--nvp-status-critical-text)}.hardware-detail-page .status-pill[data-tone=disposed],.hardware-detail-page .status-pill[data-tone=neutral]{background:var(--nvp-status-stock-bg);color:var(--nvp-status-stock-text)}.hardware-detail-page .lifecycle-pill[data-tone=good]{background:var(--nvp-status-active-bg);color:var(--nvp-status-active-text)}.hardware-detail-page .lifecycle-pill[data-tone=warning]{background:var(--nvp-status-warning-bg);color:var(--nvp-status-warning-text)}.hardware-detail-page .lifecycle-pill[data-tone=critical]{background:var(--nvp-status-critical-bg);color:var(--nvp-status-critical-text)}.hardware-detail-page .lifecycle-pill[data-tone=neutral]{background:var(--nvp-status-stock-bg);color:var(--nvp-status-stock-text)}.hardware-detail-page .timeline-marker[data-tone=ordered],.hardware-detail-page .timeline-marker[data-tone=warning]{background:var(--nvp-status-warning-text)}.hardware-detail-page .timeline-marker[data-tone=active],.hardware-detail-page .timeline-marker[data-tone=good]{background:var(--nvp-status-active-text)}.hardware-detail-page .timeline-marker[data-tone=critical],.hardware-detail-page .timeline-marker[data-tone=disposed]{background:var(--nvp-status-critical-text)}.hardware-detail-page .timeline-marker[data-tone=neutral]{background:var(--nvp-status-stock-text)}.table-wrap,.table-container,.nep-table-wrap{overflow:auto;border:1px solid var(--nep-color-border);border-radius:var(--nep-radius-md);background:var(--nep-color-surface)}table,.nep-table{width:100%;border-collapse:collapse}table th,table td,.nep-table th,.nep-table td{text-align:left;border-bottom:1px solid var(--nep-color-border);padding:.46rem .54rem;font-size:var(--nep-font-size-sm);min-height:var(--nvp-table-row-height);vertical-align:middle}table th,.nep-table th{color:var(--nep-color-navy-900);background:var(--nvp-table-header-bg);font-weight:var(--nep-font-weight-700);letter-spacing:.02em}table tbody tr:hover,.nep-table tbody tr:hover{background:var(--nvp-table-row-hover)}.nep-kpi-card{background:var(--nep-color-surface);border:1px solid var(--nep-color-border);border-left:4px solid var(--nep-color-accent-500);border-radius:var(--nep-radius-md);padding:var(--nep-space-4);box-shadow:var(--nep-shadow-sm)}.nep-alert-card,.alert{border:1px solid var(--nep-color-border);border-radius:var(--nep-radius-md);padding:var(--nep-space-3) var(--nep-space-4);background:var(--nep-color-surface-soft)}.alert-success{background:#e9f8dd;color:#3f6811;border-color:#b6da86}.alert-error{background:var(--nep-color-critical-100);color:#8f3229;border-color:#e7b4af}.nep-tabs{display:flex;gap:var(--nep-space-2);flex-wrap:wrap;border-bottom:1px solid var(--nep-color-border);padding-bottom:var(--nep-space-2)}.nep-tab{border:1px solid transparent;border-radius:var(--nep-radius-pill);padding:.32rem .7rem;font-size:var(--nep-font-size-sm);color:var(--nep-color-text-muted)}.nep-tab.active{border-color:#b9d98f;background:var(--nep-color-accent-100);color:#426712}.nep-drawer{background:var(--nep-color-surface);border-left:1px solid var(--nep-color-border);box-shadow:var(--nep-shadow-lg);z-index:var(--nep-z-drawer)}.empty-state,.nep-empty-state{text-align:center;padding:var(--nep-space-6);color:var(--nep-color-text-muted)}.empty-state-icon{font-size:2.2rem;margin-bottom:var(--nep-space-3);opacity:.5}.filters,.filters-bar,.toolbar{background:#f8fbff;border:1px solid var(--nep-color-border);border-radius:var(--nep-radius-md);padding:.76rem}.search-input,.filter-select,input.search-input,select.filter-select{border:1px solid var(--nep-color-border-strong);border-radius:var(--nep-radius-sm);background:var(--nep-color-surface);color:var(--nep-color-text)}.stat-item{border:1px solid var(--nep-color-border);background:var(--nep-color-surface);color:var(--nep-color-navy-900);border-radius:var(--nep-radius-sm)}.stat-item.active{background:var(--nep-color-accent-100);border-color:#b9d98f;color:#3e6410}.stat-item.warning{background:var(--nep-color-warning-100);border-color:#efc79a;color:#8a551a}.stat-item.danger{background:var(--nep-color-critical-100);border-color:#e4b2ad;color:#8d3127}input.input-error,select.input-error,textarea.input-error{border-color:var(--nep-color-critical-500);background-color:#fff5f3}input.input-valid,select.input-valid,textarea.input-valid{border-color:var(--nep-color-accent-500);background-color:#f3fce8}.validation-error,.error-msg{color:var(--nep-color-critical-500);font-size:.76rem;margin-top:.22rem}.loading-inline{display:flex;align-items:center;gap:var(--nep-space-2);color:var(--nep-color-text-muted);font-size:var(--nep-font-size-sm)}@media(max-width:1080px){.form-grid,.nvp-layout-split,.nep-layout-split{grid-template-columns:1fr}}@media(max-width:960px){.nep-page-header{flex-direction:column;align-items:stretch}button,.nep-btn{min-height:max(var(--nvp-control-height-sm),2.75rem)}input,select,textarea,.nep-input,.nep-select{min-height:max(var(--nvp-control-height-md),2.75rem)}}
