:root {
  --sk-navy-950: #071b33;
  --sk-navy-900: #0b2442;
  --sk-blue-600: #2563eb;
  --sk-blue-700: #1d4ed8;
  --sk-teal-500: #14b8a6;
  --sk-teal-600: #0d9488;
  --sk-teal-700: #0f766e;

  --sk-slate-950: #0f172a;
  --sk-slate-700: #334155;
  --sk-slate-500: #64748b;
  --sk-slate-300: #cbd5e1;
  --sk-slate-200: #e2e8f0;
  --sk-slate-100: #f1f5f9;
  --sk-surface: #f7f9fc;
  --sk-white: #ffffff;

  --sk-success: #16a34a;
  --sk-warning: #d97706;
  --sk-danger: #dc2626;
  --sk-info: #0284c7;

  --sk-gradient: linear-gradient(135deg, #2563eb 0%, #14b8a6 100%);
  --sk-gradient-dark: linear-gradient(135deg, #0b2442 0%, #0f766e 100%);

  --sk-font-heading: "Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --sk-font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  --sk-radius-sm: 8px;
  --sk-radius-md: 12px;
  --sk-radius-lg: 18px;
  --sk-radius-xl: 24px;
  --sk-shadow-sm: 0 1px 2px rgb(15 23 42 / 0.06), 0 1px 3px rgb(15 23 42 / 0.08);
  --sk-shadow-md: 0 10px 30px rgb(15 23 42 / 0.10);
  --sk-focus: 0 0 0 4px rgb(37 99 235 / 0.18);
}

body {
  color: var(--sk-slate-950);
  background: var(--sk-surface);
  font-family: var(--sk-font-body);
}

.sk-heading {
  color: var(--sk-navy-900);
  font-family: var(--sk-font-heading);
  font-weight: 700;
  letter-spacing: -0.025em;
}

.sk-button-primary {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 18px;
  border: 0;
  border-radius: var(--sk-radius-md);
  color: var(--sk-white);
  background: var(--sk-gradient);
  box-shadow: var(--sk-shadow-sm);
  font: 600 14px/1 var(--sk-font-body);
  cursor: pointer;
}

.sk-button-primary:hover { filter: brightness(0.96); }
.sk-button-primary:focus-visible { outline: 0; box-shadow: var(--sk-focus); }

.sk-card {
  border: 1px solid var(--sk-slate-200);
  border-radius: var(--sk-radius-lg);
  background: var(--sk-white);
  box-shadow: var(--sk-shadow-sm);
}

.sk-status-success { color: #166534; background: #dcfce7; }
.sk-status-warning { color: #92400e; background: #fef3c7; }
.sk-status-danger { color: #991b1b; background: #fee2e2; }
.sk-status-info { color: #075985; background: #e0f2fe; }
