/* NIZMOTEK Design System v1
   Shared visual foundation. Page templates keep their task-specific layouts. */
:root{
 --nz-bg:#06111d;--nz-bg-deep:#030912;--nz-surface:#0b1a2b;--nz-surface-raised:#0e2136;
 --nz-surface-subtle:#081625;--nz-border:#29445e;--nz-border-soft:#1d3449;
 --nz-text:#f4f7fb;--nz-text-secondary:#c3d0dd;--nz-muted:#93a8bc;
 --nz-primary:#57c8dc;--nz-primary-strong:#25b7d3;--nz-blue:#60a5fa;
 --nz-success:#34d399;--nz-warning:#fbbf24;--nz-danger:#fb7185;--nz-violet:#9b8cff;
 --nz-shadow-sm:0 8px 22px rgba(0,0,0,.16);--nz-shadow-md:0 18px 46px rgba(0,0,0,.22);
 --nz-radius-sm:8px;--nz-radius-md:12px;--nz-radius-lg:16px;
 --nz-space-1:4px;--nz-space-2:8px;--nz-space-3:12px;--nz-space-4:16px;
 --nz-space-5:20px;--nz-space-6:24px;--nz-space-8:32px;
 --nz-content:1480px;--nz-font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
 --nz-text-xs:.68rem;--nz-text-sm:.78rem;--nz-text-md:.9rem;--nz-text-lg:1.1rem;
}
html{color-scheme:dark}body{background:radial-gradient(circle at 12% -10%,rgba(34,91,137,.24),transparent 32%),linear-gradient(180deg,var(--nz-bg),var(--nz-bg-deep) 78%);color:var(--nz-text);font-family:var(--nz-font);font-size:15px;line-height:1.5}
a{color:var(--nz-primary);text-underline-offset:3px}a:hover{color:#8be2ef}
:focus-visible{outline:2px solid var(--nz-primary);outline-offset:2px}
::selection{background:rgba(87,200,220,.28);color:#fff}
.nz-page,.container-fluid main,.page-shell{width:min(var(--nz-content),calc(100% - 32px));margin-inline:auto}
.nz-surface,.card,.panel,.dashboard-card{border:1px solid var(--nz-border);border-radius:var(--nz-radius-lg);background:linear-gradient(145deg,rgba(14,33,54,.98),rgba(6,18,31,.99));box-shadow:var(--nz-shadow-sm)}
.card-header,.panel-header{border-bottom:1px solid var(--nz-border-soft);background:transparent}
h1,h2,h3,h4{color:var(--nz-text);letter-spacing:-.018em}p{color:var(--nz-text-secondary)}
.text-muted,.muted,small{color:var(--nz-muted)!important}
.nz-eyebrow,.eyebrow{color:var(--nz-primary);font-size:var(--nz-text-xs);font-weight:850;letter-spacing:.11em;text-transform:uppercase}
button,.btn,input,select,textarea{font:inherit}.btn,button{border-radius:var(--nz-radius-sm);font-weight:750;min-height:34px}.btn-primary{border-color:var(--nz-primary-strong);background:var(--nz-primary-strong);color:#03121f}.btn-primary:hover{border-color:#69d7e8;background:#69d7e8;color:#03121f}.btn-outline-primary{border-color:#3d7899;color:#9ee8f2}.btn-outline-danger{border-color:#8b3346;color:#ff9aab}
.form-control,.form-select,input[type=text],input[type=search],input[type=email],input[type=password],input[type=number],textarea,select{border:1px solid var(--nz-border);border-radius:var(--nz-radius-sm);background:#071625;color:var(--nz-text)}
.form-control:focus,.form-select:focus,input:focus,textarea:focus,select:focus{border-color:var(--nz-primary);background:#071625;color:var(--nz-text);box-shadow:0 0 0 3px rgba(87,200,220,.13)}
.table{--bs-table-bg:transparent;--bs-table-color:var(--nz-text-secondary);--bs-table-border-color:var(--nz-border-soft)}
.table thead th{color:#a8bed1;font-size:var(--nz-text-xs);letter-spacing:.055em;text-transform:uppercase}.table tbody tr:hover{--bs-table-accent-bg:rgba(87,200,220,.045)}
.badge,.status-badge{border-radius:999px;font-weight:800;letter-spacing:.02em}.alert{border-radius:var(--nz-radius-md);border-color:var(--nz-border);background:#0a1b2d;color:var(--nz-text-secondary)}
.nz-kpi,.kpi-card,.metric-card{padding:var(--nz-space-4);border:1px solid var(--nz-border-soft);border-radius:var(--nz-radius-md);background:var(--nz-surface-subtle)}
.nz-kpi small,.kpi-card small,.metric-card small{display:block;color:var(--nz-muted);font-size:var(--nz-text-xs);font-weight:800;letter-spacing:.065em;text-transform:uppercase}.nz-kpi strong,.kpi-card strong,.metric-card strong{display:block;margin-top:var(--nz-space-2);color:var(--nz-text);font-size:1.2rem}
.nav-tabs{border-color:var(--nz-border)}.nav-tabs .nav-link{border-radius:8px 8px 0 0;color:var(--nz-muted)}.nav-tabs .nav-link.active{border-color:var(--nz-border) var(--nz-border) var(--nz-surface);background:var(--nz-surface);color:var(--nz-text)}
.dropdown-menu{border:1px solid var(--nz-border);border-radius:var(--nz-radius-md);background:#071625;box-shadow:var(--nz-shadow-md)}.dropdown-item{color:var(--nz-text-secondary)}.dropdown-item:hover{background:rgba(87,200,220,.08);color:#fff}
.modal-content{border:1px solid var(--nz-border);border-radius:var(--nz-radius-lg);background:var(--nz-surface)}
.nz-empty,.empty-state{padding:var(--nz-space-8);border:1px dashed var(--nz-border);border-radius:var(--nz-radius-md);color:var(--nz-muted);text-align:center}
.nz-section{margin-top:var(--nz-space-5);padding:var(--nz-space-6)}
.nz-grid{display:grid;gap:var(--nz-space-3)}
@media(max-width:760px){body{font-size:14px}.nz-page,.container-fluid main,.page-shell{width:min(100% - 16px,var(--nz-content))}.nz-section{padding:var(--nz-space-4)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
