
/* NEI Corporate Branding */
:root {
    --nei-bg: #0a0f1a;
    --nei-gold: #c9a227;
    --nei-purple: #a78bfa;
    --nei-text: #e2e8f0;
    --nei-font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body { background: var(--nei-bg) !important; color: var(--nei-text); font-family: var(--nei-font) !important; }
h1, h2, h3 { color: #f1f5f9; }
a { color: var(--nei-gold); }
.btn-primary, button[type="submit"] { background: var(--nei-gold) !important; color: #0a0f1a !important; border: none; font-weight: 700; }
.btn-primary:hover, button[type="submit"]:hover { background: #d4af37 !important; }
.sidebar { background: #0f172a !important; }
.sidebar-brand { color: var(--nei-gold) !important; }
/* Loading spinner */
.nei-spinner { display:none; text-align:center; padding:20px; }
.nei-spinner.active { display:block; }
.nei-spinner::after { content:''; display:inline-block; width:24px; height:24px; border:3px solid #334155; border-top-color:var(--nei-gold); border-radius:50%; animation:spin 0.8s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }


/* Mobile Responsive — NEI Labs */
@media (max-width: 768px) {
    body { padding-bottom: 50px; }
    .container, .page-content, main { padding: 1rem !important; }
    .sidebar { display: none !important; }
    .main-content, main.with-sidebar { margin-left: 0 !important; }
    .nav, .topbar { flex-direction: column; gap: 8px; padding: 8px !important; }
    .stats-grid { grid-template-columns: 1fr !important; gap: 12px !important; }
    .grid-3, .pkg-grid, .ip-grid { grid-template-columns: 1fr !important; }
    .btn, .btn-primary, button[type="submit"] { width: 100% !important; padding: 14px !important; font-size: 1rem !important; }
    input, select, textarea { font-size: 16px !important; width: 100% !important; box-sizing: border-box !important; padding: 12px !important; }
    .auth-container { padding: 16px !important; }
    .auth-card { padding: 24px 16px !important; max-width: 100% !important; }
    h1 { font-size: 1.4rem !important; }
    h2 { font-size: 1.2rem !important; }
    .page-header { flex-direction: column !important; gap: 12px !important; align-items: stretch !important; }
    .topbar-user { flex-wrap: wrap; gap: 4px; }
    table { display: block; overflow-x: auto; }
    .welcome-card { padding: 24px 16px !important; margin: 16px auto !important; }
}

@media (max-width: 480px) {
    body { font-size: 14px; }
    .nei-brand-header img { width: 80px !important; }
    .nei-brand-header h1 { font-size: 1.2rem !important; }
    .stat-card { padding: 12px !important; }
    .flash { font-size: 0.85rem; padding: 8px 12px; }
}

/* Form container centering */
form { max-width: 400px; width: 90%; margin: 0 auto; }
.auth-container form { max-width: 100%; width: 100%; }
