:root{
  --bg: #f6f7fb;
  --card: #ffffff;
  --ink: #0f172a;
  --muted: #64748b;
  --shadow: 0 10px 30px rgba(15,23,42,.06);
  --radius: 0rem;
}

body { background: var(--bg); color: var(--ink); }

.appbar { background: rgba(246,247,251,.9); backdrop-filter: blur(8px); position: sticky; top: 0; z-index: 1020; }
.appmark{
  width: 40px; height: 40px; border-radius: 12px;
  display:flex; align-items:center; justify-content:center;
  background: #0f172a; color: #fff;
  box-shadow: var(--shadow);
}
.app-title{ font-weight: 700; line-height: 1.1; }
.app-subtitle{ font-size: .85rem; line-height: 1.1; }

.card-soft { border:0; border-radius: var(--radius); box-shadow: var(--shadow); background: var(--card); }

.kpi { display:flex; gap: .5rem; align-items: baseline; }
.kpi .num{ font-weight: 800; font-size: 1.35rem; }
.kpi .lbl{ color: var(--muted); font-size: .85rem; }

.badge-soft{
  background: rgba(13,110,253,.10);
  border: 1px solid rgba(13,110,253,.25);
  color: #0b5ed7;
  font-weight: 600;
}

.meta { color: var(--muted); font-size: .9rem; }
hr.soft { border:0; height:1px; background: rgba(15,23,42,.08); margin: .75rem 0; }

.list-tight .list-group-item{ border:0; background: transparent; padding: .6rem 0; }
