/* NEXTMEN v6.2.2 — Device + Sidebar Hotfix
   No DB. No installer. Upload over v6.2/v6.2.1.
*/

:root{
  --nx62-bg:#05070d;
  --nx62-panel:#0b1020;
  --nx62-card:#111827;
  --nx62-line:rgba(212,175,55,.22);
  --nx62-gold:#d4af37;
  --nx62-gold2:#f1d175;
  --nx62-text:#f7f3e9;
  --nx62-muted:#b9c0cc;
  --nx62-green:#7cf29a;
  --nx62-red:#ff9a9a;
  --nx62-blue:#8fd3ff;
}

/* Dashboard approved hero */
.nx510-hero,
.dashboard-hero,
#dashboard-hero,
.nx-dashboard-hero,
body.dashboard .nx53-hero:first-of-type,
section[class*="dashboard"][class*="hero"]{
  background:
    linear-gradient(90deg,rgba(3,5,10,.98),rgba(3,5,10,.76) 48%,rgba(3,5,10,.20)),
    radial-gradient(circle at 75% 44%,rgba(212,175,55,.16),transparent 31%),
    url('/assets/images/global/nextmen-approved-hero.jpg?v=622') center center/cover no-repeat !important;
}

/* Admin Pro base */
.nx62-admin{
  min-height:100vh;
  background:
    radial-gradient(circle at 82% 0%,rgba(212,175,55,.08),transparent 34%),
    radial-gradient(circle at 10% 10%,rgba(80,170,255,.06),transparent 28%),
    linear-gradient(180deg,#05070d,#070b14 54%,#05070d);
  color:var(--nx62-text);
}
.nx62-wrap{width:min(1440px,calc(100% - 44px));margin:0 auto;padding:28px 0}
.nx62-hero,.nx62-card{
  border:1px solid var(--nx62-line);
  border-radius:26px;
  padding:24px;
  background:linear-gradient(180deg,rgba(17,24,39,.96),rgba(7,10,18,.98));
  box-shadow:0 24px 80px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.045);
  margin-bottom:18px;
}
.nx62-hero h1{font-size:clamp(34px,4vw,58px);line-height:1;margin:10px 0 12px;color:#fff;letter-spacing:-.04em}
.nx62-card h2,.nx62-card h3{margin:0 0 10px;color:#fff}
.nx62-muted{color:var(--nx62-muted);line-height:1.65}
.nx62-pill{display:inline-flex;border:1px solid rgba(212,175,55,.30);background:rgba(212,175,55,.09);color:var(--nx62-gold2);border-radius:999px;padding:6px 11px;font-weight:900;font-size:12px;letter-spacing:.04em}
.nx62-grid{display:grid;gap:16px}
.nx62-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nx62-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nx62-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.nx62-tile{display:block;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));padding:20px;min-height:160px;transition:.16s transform,.16s border-color,.16s background}
.nx62-tile:hover{transform:translateY(-2px);border-color:rgba(212,175,55,.34);background:rgba(212,175,55,.07)}
.nx62-icon{font-size:28px;margin-bottom:14px}
.nx62-tile h3{margin:0 0 8px;color:#fff;font-size:19px}
.nx62-tile p{margin:0;color:#cbd5e1;line-height:1.5}
.nx62-stat{border:1px solid rgba(255,255,255,.10);border-radius:20px;background:rgba(255,255,255,.04);padding:18px}
.nx62-stat b{display:block;color:var(--nx62-gold2);font-size:32px;line-height:1}
.nx62-stat span{color:#cbd5e1;font-size:13px}
.nx62-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.15);border-radius:13px;padding:11px 14px;color:#fff;text-decoration:none;background:rgba(255,255,255,.06);font-weight:900;margin:3px}
.nx62-btn.primary{background:linear-gradient(135deg,#d4af37,#f1d175);color:#111827;border-color:rgba(212,175,55,.55)}
.nx62-btn.danger{background:rgba(255,80,80,.12);border-color:rgba(255,80,80,.32);color:#ffd6d6}
.nx62-table{width:100%;border-collapse:collapse}
.nx62-table th,.nx62-table td{text-align:left;vertical-align:top;border-bottom:1px solid rgba(255,255,255,.08);padding:12px 10px;color:#dce3ef}
.nx62-table th{color:var(--nx62-gold2);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.nx62-form{display:grid;gap:14px}
.nx62-field{display:grid;gap:7px}
.nx62-field label{font-weight:900;color:var(--nx62-gold2);font-size:13px}
.nx62-field input,.nx62-field select,.nx62-field textarea{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:#05070d;color:#fff;padding:12px 13px}
.nx62-field textarea{min-height:260px}
.nx62-alert{border:1px solid rgba(80,170,255,.24);background:rgba(80,170,255,.08);border-radius:18px;padding:16px;color:#dceeff;line-height:1.6;margin:12px 0}
.nx62-warn{border:1px solid rgba(255,95,95,.28);background:rgba(255,95,95,.08);border-radius:18px;padding:16px;color:#ffe0e0;line-height:1.6;margin:12px 0}

/* Wider module layout */
.nx50-layout,
.nx49-layout,
.nx510-layout,
.nx511-layout,
.nx53-layout{
  grid-template-columns:320px minmax(0,1fr) !important;
  gap:24px !important;
  width:min(1520px,calc(100% - 56px)) !important;
  align-items:start !important;
}

/* Sidebar much cleaner */
.nx50-sidebar,
.nx49-sidebar,
.nx510-sidebar,
.nx511-sidebar,
.nx53-sidebar,
.nx62-sidebar,
aside[class*="sidebar"]{
  width:320px !important;
  min-width:320px !important;
  max-width:320px !important;
  padding:20px !important;
  border:1px solid rgba(212,175,55,.20)!important;
  border-radius:26px!important;
  background:linear-gradient(180deg,rgba(7,10,18,.96),rgba(5,8,15,.98))!important;
  box-shadow:0 24px 75px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.045)!important;
  overflow:hidden !important;
}

/* Force sidebar text/menu links to look like real buttons */
.nx50-sidebar a,
.nx49-sidebar a,
.nx510-sidebar a,
.nx511-sidebar a,
.nx53-sidebar a,
aside[class*="sidebar"] a{
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  min-height:42px !important;
  padding:11px 13px !important;
  margin:0 0 8px !important;
  border-radius:13px !important;
  color:#e8edf7 !important;
  text-decoration:none !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  border:1px solid transparent !important;
  background:transparent !important;
  white-space:normal !important;
  word-break:normal !important;
}

.nx50-sidebar a:hover,
.nx49-sidebar a:hover,
.nx510-sidebar a:hover,
.nx511-sidebar a:hover,
.nx53-sidebar a:hover,
aside[class*="sidebar"] a:hover,
.nx50-sidebar a.active,
.nx49-sidebar a.active,
.nx510-sidebar a.active,
.nx511-sidebar a.active,
.nx53-sidebar a.active,
aside[class*="sidebar"] a.active{
  color:#fff !important;
  background:rgba(212,175,55,.10)!important;
  border-color:rgba(212,175,55,.25)!important;
}

/* Brand line */
.nx50-brand,
.nx49-brand,
.nx510-brand,
.nx511-brand,
.nx53-brand,
aside .brand,
aside [class*="brand"]{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin-bottom:18px !important;
  color:#fff !important;
  letter-spacing:.12em !important;
  font-weight:950 !important;
}

/* Top header must remain horizontal */
header .nx53-nav,
.nx53-topbar .nx53-nav,
.nx-em-top .nx-em-nav,
header nav{
  display:flex !important;
  grid-template-columns:none !important;
  width:auto !important;
  gap:18px !important;
}
header .nx53-nav a,
.nx53-topbar .nx53-nav a,
.nx-em-top .nx-em-nav a,
header nav a{
  width:auto !important;
  min-height:auto !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
}

/* Device detail hotfix visual: make title not absurdly broken on two lines unless needed */
body.device-vacuum-pump h1,
.nx-device-vacuum h1{
  max-width:720px !important;
}

/* Responsive */
@media(max-width:1180px){
  .nx50-layout,.nx49-layout,.nx510-layout,.nx511-layout,.nx53-layout{
    grid-template-columns:1fr !important;
    width:min(100% - 28px, 980px) !important;
  }
  .nx50-sidebar,.nx49-sidebar,.nx510-sidebar,.nx511-sidebar,.nx53-sidebar,aside[class*="sidebar"]{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
}
@media(max-width:1100px){
  .nx62-grid.cols-4,.nx62-grid.cols-3,.nx62-grid.cols-2{grid-template-columns:1fr}
}
