@import url("https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700&display=swap");

:root{
  --dt-bg:#0a0f1c;
  --dt-bg-2:#0f1a2b;
  --dt-card:#111c2f;
  --dt-card-2:#0d1728;
  --dt-border:rgba(255,255,255,.08);
  --dt-text:#eef2ff;
  --dt-muted:#9aa7bd;
  --dt-primary:#3b82f6;
  --dt-primary-2:#2563eb;
  --dt-success:#22c55e;
  --dt-danger:#ef4444;
  --dt-warning:#f59e0b;
  --dt-glow:rgba(34,197,94,.25);
  --dt-accent:rgba(34,197,94,.15);
}

body{
  background:
    radial-gradient(1200px 600px at 85% -10%, rgba(59,130,246,.18), transparent 60%),
    radial-gradient(900px 500px at 10% 110%, rgba(34,197,94,.16), transparent 55%),
    linear-gradient(180deg, var(--dt-bg) 0%, var(--dt-bg-2) 100%);
  color:var(--dt-text);
  font-family:"Barlow", system-ui, -apple-system, "Segoe UI", sans-serif;
  letter-spacing:.2px;
}

body::before{
  content:"";
  position:fixed;
  inset:-30% -10% auto auto;
  width:520px;
  height:520px;
  background:radial-gradient(circle, rgba(59,130,246,.4), transparent 60%);
  filter:blur(30px);
  opacity:.85;
  pointer-events:none;
  z-index:0;
}

body::after{
  content:"";
  position:fixed;
  inset:auto auto -25% -10%;
  width:520px;
  height:520px;
  background:radial-gradient(circle, rgba(34,197,94,.32), transparent 60%);
  filter:blur(30px);
  opacity:.8;
  pointer-events:none;
  z-index:0;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6{
  color:var(--dt-text);
}

p, label, .form-label, .form-text, .form-check-label{
  color:var(--dt-text);
}

small, .small{
  color:var(--dt-muted);
}

a,
.nav-link,
.nav-tabs .nav-link{
  color:var(--dt-text);
}

.nav-tabs .nav-link.active{
  color:var(--dt-text);
  background:rgba(59,130,246,.12);
  border-color:var(--dt-border) var(--dt-border) transparent;
  box-shadow:inset 0 -2px 0 var(--dt-primary);
}

.nav-tabs{
  border-bottom:1px solid var(--dt-border);
}

.dropdown-menu{
  background:var(--dt-card);
  border-color:var(--dt-border);
  box-shadow:0 18px 40px rgba(2,6,23,.45);
}

.dropdown-item{
  color:var(--dt-text);
}

.dropdown-item:hover,
.dropdown-item:focus{
  background:rgba(59,130,246,.12);
  color:var(--dt-text);
}

.card,
.modal-content,
.table{
  background:var(--dt-card);
  border-color:var(--dt-border);
}

.card{
  border-radius:18px;
  box-shadow:0 16px 40px rgba(2,6,23,.4);
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)) , var(--dt-card);
  color:var(--dt-text);
}

.modal-content{
  border-radius:20px;
  box-shadow:0 24px 70px rgba(2,6,23,.55);
  background:linear-gradient(180deg, rgba(59,130,246,.08), rgba(0,0,0,0)) , var(--dt-card);
}

.modal-header,
.modal-footer{
  border-color:var(--dt-border);
}

.table{
  color:var(--dt-text);
  background:linear-gradient(180deg, rgba(17,24,39,.6), rgba(17,24,39,.2)) , var(--dt-card-2);
  border-radius:16px;
  overflow:hidden;
}

.table > :not(caption) > * > *{
  background:transparent;
}

.table tbody td{
  color:rgba(255,255,255,.88);
}

.table thead{
  background:rgba(15,23,42,.75);
  box-shadow:inset 0 -1px 0 var(--dt-border);
}

.table-hover > tbody > tr:hover > *{
  color:var(--dt-text);
  background:rgba(59,130,246,.08);
}

.table thead th{
  color:var(--dt-muted);
  border-bottom:1px solid var(--dt-border);
  text-transform:uppercase;
  letter-spacing:.6px;
  font-size:.72rem;
}

.border-muted{
  border-color:var(--dt-border)!important;
}

.text-muted{
  color:var(--dt-muted)!important;
}

.bg-primary{
  background-color:var(--dt-primary)!important;
}

.bg-success{
  background-color:var(--dt-success)!important;
}

.bg-danger{
  background-color:var(--dt-danger)!important;
}

.bg-warning{
  background-color:var(--dt-warning)!important;
}

.btn-outline-light{
  border-color:var(--dt-border);
}

.btn{
  border-radius:12px;
  font-weight:600;
  letter-spacing:.3px;
}

.btn-primary{
  background:linear-gradient(135deg, var(--dt-primary) 0%, var(--dt-primary-2) 100%);
  border:0;
  box-shadow:0 12px 24px rgba(37,99,235,.28);
}

.btn-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 34px rgba(37,99,235,.4);
}

.btn-outline-light:hover{
  color:var(--dt-text);
  background:rgba(255,255,255,.08);
}

.btn-close{
  filter:invert(1) grayscale(100%);
}

.form-control,
.form-select{
  background:var(--dt-card-2);
  color:var(--dt-text);
  border-color:var(--dt-border);
  box-shadow:none;
}

.form-control::placeholder{
  color:var(--dt-muted);
}

.form-check-label{
  color:var(--dt-text);
}

.form-control:focus,
.form-select:focus{
  box-shadow:0 0 0 .2rem rgba(59,130,246,.15);
  border-color:var(--dt-primary);
}

.alert{
  border-radius:14px;
  border-color:var(--dt-border);
  background:rgba(15,23,42,.7);
  color:var(--dt-text);
}

.badge,
.dt-badge{
  border-radius:999px;
  font-weight:600;
  letter-spacing:.3px;
}
