:root {
  --dk-bg: #f5f7fb;
  --dk-surface: #ffffff;
  --dk-surface-2: #f8fafc;
  --dk-border: #e5eaf2;
  --dk-text: #0f172a;
  --dk-muted: #64748b;
  --dk-primary: #1769ff;
  --dk-primary-2: #0b4fd8;
  --dk-success: #16a34a;
  --dk-warning: #f59e0b;
  --dk-danger: #ef4444;
  --dk-radius: 16px;
  --dk-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
}

[data-theme="dark"] {
  --dk-bg: #07111d;
  --dk-surface: #0d1a29;
  --dk-surface-2: #111f31;
  --dk-border: rgba(148, 163, 184, 0.16);
  --dk-text: #f8fafc;
  --dk-muted: #94a3b8;
  --dk-primary: #2f7bff;
  --dk-primary-2: #1769ff;
  --dk-shadow: 0 22px 50px rgba(0, 0, 0, 0.32);
}

body {
  background: var(--dk-bg);
  color: var(--dk-text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.dk-shell {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  min-height: 100vh;
}

.dk-sidebar {
  background: var(--dk-surface);
  border-right: 1px solid var(--dk-border);
  padding: 28px 22px;
}

[data-theme="dark"] .dk-sidebar {
  background: linear-gradient(180deg, #081524 0%, #06101b 100%);
}

.dk-brand {
  display: grid;
  place-items: center;
  text-align: center;
  margin-bottom: 34px;
}

.dk-brand img {
  width: 112px;
  height: auto;
  margin-bottom: 10px;
}

.dk-brand-name {
  font-size: 25px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.dk-brand-tagline {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: var(--dk-muted);
}

.dk-nav-section {
  margin-top: 26px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: var(--dk-muted);
  text-transform: uppercase;
}

.dk-nav-item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 38px;
  padding: 0 12px;
  margin-top: 6px;
  border-radius: 10px;
  color: var(--dk-muted);
  text-decoration: none;
}

.dk-nav-item.active,
.dk-nav-item:hover {
  color: var(--dk-primary);
  background: rgba(47, 123, 255, 0.10);
}

.dk-main {
  padding: 30px;
}

.dk-topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 28px;
}

.dk-grid-kpi {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 22px;
}

.dk-card {
  background: var(--dk-surface);
  border: 1px solid var(--dk-border);
  border-radius: var(--dk-radius);
  box-shadow: var(--dk-shadow);
  padding: 22px;
}

.dk-kpi-label {
  color: var(--dk-muted);
  font-size: 13px;
}

.dk-kpi-value {
  font-size: 30px;
  font-weight: 800;
  margin-top: 8px;
}

.dk-btn {
  border: 0;
  border-radius: 10px;
  background: var(--dk-primary);
  color: #fff;
  font-weight: 700;
  padding: 12px 16px;
  box-shadow: 0 12px 30px rgba(23, 105, 255, 0.28);
}

@media (max-width: 980px) {
  .dk-shell { grid-template-columns: 86px 1fr; }
  .dk-brand-name, .dk-brand-tagline, .dk-nav-label { display: none; }
  .dk-grid-kpi { grid-template-columns: repeat(2, 1fr); }
}
