:root{
  --bg0:#0b1220;
  --bg1:#0f1b33;
  --card:#0f172a;
  --ink:#0f172a;
  --muted:#64748b;
  --brand:#f59e0b;
  --brand2:#f97316;
  --ring:rgba(245,158,11,.22);
}

body{
  background:
    radial-gradient(circle at 8% 12%, rgba(245,158,11,.14), transparent 42%),
    radial-gradient(circle at 92% 18%, rgba(249,115,22,.10), transparent 46%),
    radial-gradient(circle at 45% 110%, rgba(180,83,9,.08), transparent 40%),
    linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
}

.app-nav{
  background: linear-gradient(90deg, var(--bg0), var(--bg1));
  box-shadow: 0 8px 24px rgba(2,6,23,.25);
}

.card{
  border: 0;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(2,6,23,.08);
}

.btn-primary{
  background: linear-gradient(90deg, var(--brand), var(--brand2));
  border: none;
  box-shadow: 0 10px 24px var(--ring);
}
.btn-primary:hover{ filter: brightness(.97); }

.badge-soft{
  background: rgba(15,23,42,.06);
  color: #0f172a;
  border: 1px solid rgba(15,23,42,.08);
}

.table thead th{
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 2;
}

.matrix{
  overflow:auto;
  max-height: 70vh;
  border-radius: 14px;
  border: 1px solid rgba(15,23,42,.08);
  background: #fff;
}

.matrix table td, .matrix table th{
  white-space: nowrap;
}

.form-control:focus, .form-select:focus{
  border-color: rgba(245,158,11,.55);
  box-shadow: 0 0 0 .25rem var(--ring);
}
