/*!
 * NXT Neo Dark (Tabler 1.4.0 override)
 * Style target: "Image #2" from the earlier carousel (sleek modern dark, softer surfaces, subtle depth)
 * Drop-in after tabler.min.css
 */

:root,
[data-bs-theme="dark"]{
  /* Core surfaces */
  --nxt-bg: #0f1216;
  --nxt-surface: #141922;
  --nxt-surface-2: #171e29;
  --nxt-card: #131924;
  --nxt-border: rgba(255,255,255,.10);

  /* Text */
  --nxt-text: rgba(255,255,255,.88);
  --nxt-muted: rgba(255,255,255,.62);

  /* Accent (cool blue) */
  --nxt-accent: #4aa3ff;
  --nxt-accent-2: #7bd3ff;

  /* Status */
  --nxt-danger: #ff5c77;
  --nxt-warning: #ffcc66;
  --nxt-success: #36d399;
}

/* Page background + default text */
[data-bs-theme="dark"] body,
body[data-bs-theme="dark"]{
  background: radial-gradient(1200px 700px at 15% 0%, rgba(74,163,255,.10), transparent 60%),
              radial-gradient(900px 600px at 90% 10%, rgba(123,211,255,.08), transparent 55%),
              linear-gradient(180deg, var(--nxt-bg), #0b0e12 70%);
  color: var(--nxt-text);
}

/* Links */
[data-bs-theme="dark"] a{
  color: color-mix(in srgb, var(--nxt-accent) 85%, white 15%);
}
[data-bs-theme="dark"] a:hover{
  color: color-mix(in srgb, var(--nxt-accent-2) 80%, white 20%);
}

/* Navbar / header */
[data-bs-theme="dark"] .navbar,
[data-bs-theme="dark"] .topbar,
[data-bs-theme="dark"] .page-header{
  background: color-mix(in srgb, var(--nxt-surface) 88%, black 12%);
  border-bottom: 1px solid var(--nxt-border);
}

/* Sidebar (works for Tabler aside/menu layouts) */
[data-bs-theme="dark"] .navbar-vertical,
[data-bs-theme="dark"] .navbar-vertical .navbar-collapse,
[data-bs-theme="dark"] .aside,
[data-bs-theme="dark"] .sidebar{
  background: color-mix(in srgb, var(--nxt-surface) 92%, black 8%);
  border-right: 1px solid var(--nxt-border);
}

/* Nav links */
[data-bs-theme="dark"] .navbar-nav .nav-link,
[data-bs-theme="dark"] .nav .nav-link{
  color: var(--nxt-muted);
}
[data-bs-theme="dark"] .navbar-nav .nav-link:hover,
[data-bs-theme="dark"] .nav .nav-link:hover{
  color: var(--nxt-text);
  background: rgba(255,255,255,.04);
}
[data-bs-theme="dark"] .navbar-nav .nav-link.active,
[data-bs-theme="dark"] .nav .nav-link.active{
  color: var(--nxt-text);
  background: linear-gradient(90deg, rgba(74,163,255,.18), rgba(74,163,255,.06));
  border-left: 2px solid var(--nxt-accent);
}

/* Cards: slightly rounded, subtle depth */
[data-bs-theme="dark"] .card{
  background: linear-gradient(180deg, rgba(255,255,255,.02), transparent 40%),
              var(--nxt-card);
  border: 1px solid var(--nxt-border);
  border-radius: 14px;
  box-shadow:
    0 10px 30px rgba(0,0,0,.35),
    inset 0 1px 0 rgba(255,255,255,.04);
}
[data-bs-theme="dark"] .card-header,
[data-bs-theme="dark"] .card-footer{
  background: transparent;
  border-color: var(--nxt-border);
}

/* Tables: cleaner separators */
[data-bs-theme="dark"] .table{
  color: var(--nxt-text);
}
[data-bs-theme="dark"] .table > :not(caption) > * > *{
  border-color: rgba(255,255,255,.08);
}
[data-bs-theme="dark"] .table thead th{
  color: rgba(255,255,255,.70);
  border-bottom-color: rgba(255,255,255,.12);
}

/* Inputs: soft dark fields */
[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select,
[data-bs-theme="dark"] .input-group-text{
  background: color-mix(in srgb, var(--nxt-surface-2) 92%, black 8%);
  color: var(--nxt-text);
  border-color: rgba(255,255,255,.10);
  border-radius: 12px;
}
[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus{
  border-color: color-mix(in srgb, var(--nxt-accent) 70%, white 30%);
  box-shadow: 0 0 0 .2rem rgba(74,163,255,.18);
}

/* Buttons: modern, minimal */
[data-bs-theme="dark"] .btn{
  border-radius: 12px;
}
[data-bs-theme="dark"] .btn-primary{
  background: linear-gradient(180deg, rgba(255,255,255,.10), transparent 55%),
              var(--nxt-accent);
  border-color: rgba(255,255,255,.12);
  box-shadow: 0 10px 22px rgba(74,163,255,.18);
}
[data-bs-theme="dark"] .btn-primary:hover{
  filter: brightness(1.05);
}
[data-bs-theme="dark"] .btn-outline-primary{
  color: color-mix(in srgb, var(--nxt-accent) 90%, white 10%);
  border-color: rgba(74,163,255,.45);
}
[data-bs-theme="dark"] .btn-outline-primary:hover{
  background: rgba(74,163,255,.12);
  border-color: rgba(74,163,255,.65);
}

/* Badges */
[data-bs-theme="dark"] .badge{
  border: 1px solid rgba(255,255,255,.10);
}
[data-bs-theme="dark"] .badge.bg-primary{
  background: rgba(74,163,255,.18) !important;
  color: var(--nxt-text);
  border-color: rgba(74,163,255,.35);
}
[data-bs-theme="dark"] .badge.bg-success{
  background: rgba(54,211,153,.14) !important;
  border-color: rgba(54,211,153,.28);
}
[data-bs-theme="dark"] .badge.bg-warning{
  background: rgba(255,204,102,.14) !important;
  border-color: rgba(255,204,102,.28);
}
[data-bs-theme="dark"] .badge.bg-danger{
  background: rgba(255,92,119,.14) !important;
  border-color: rgba(255,92,119,.28);
}

/* Alerts */
[data-bs-theme="dark"] .alert{
  background: rgba(255,255,255,.03);
  border-color: rgba(255,255,255,.10);
  border-radius: 14px;
}

/* Dropdowns / menus */
[data-bs-theme="dark"] .dropdown-menu{
  background: color-mix(in srgb, var(--nxt-surface) 92%, black 8%);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  box-shadow: 0 18px 45px rgba(0,0,0,.45);
}
[data-bs-theme="dark"] .dropdown-item{
  color: var(--nxt-muted);
}
[data-bs-theme="dark"] .dropdown-item:hover,
[data-bs-theme="dark"] .dropdown-item:focus{
  color: var(--nxt-text);
  background: rgba(255,255,255,.05);
}

/* Progress bars */
[data-bs-theme="dark"] .progress{
  background: rgba(255,255,255,.06);
}
[data-bs-theme="dark"] .progress-bar{
  background-color: var(--nxt-accent);
}

/* Small polish: dividers */
[data-bs-theme="dark"] hr,
[data-bs-theme="dark"] .dropdown-divider{
  border-color: rgba(255,255,255,.10);
}
