:root {
  --pm-bg: radial-gradient(1200px 600px at 15% -10%, rgba(220, 38, 38, 0.10), transparent 58%),
    radial-gradient(1000px 520px at 90% 0%, rgba(214, 195, 162, 0.22), transparent 42%),
    #f4f7fb;
  --pm-card: rgba(255, 255, 255, 0.92);
  --pm-ink: #0f172a;
  --pm-muted: #64748b;
  --pm-line: #dbe4ee;
  --pm-primary: #ef4444;
  --pm-primary-2: #dc2626;
  --pm-radius: 16px;
  --pm-shadow: 0 22px 60px rgba(15, 23, 42, 0.1);
}

html, body {
  font-family: Inter, "Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color: var(--pm-ink);
}

body {
  background: var(--pm-bg);
}

.card, .panel, .box, .modal-card {
  border-color: var(--pm-line) !important;
  border-radius: var(--pm-radius) !important;
  box-shadow: var(--pm-shadow) !important;
}

input, select, textarea {
  border-radius: 12px !important;
  border: 1px solid #cbd5e1 !important;
}

input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: var(--pm-primary) !important;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.16) !important;
}

button:not([data-sidebar-nav]) {
  border-radius: 12px !important;
  background: linear-gradient(135deg, var(--pm-primary), var(--pm-primary-2)) !important;
  color: #ffffff !important;
  transition: transform .16s ease, box-shadow .2s ease, opacity .2s ease;
}

button:not([data-sidebar-nav]):hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(185, 28, 28, 0.28);
}

button.secondary:not([data-sidebar-nav]) {
  background: linear-gradient(135deg, #d6c3a2, #c6ae89) !important;
  color: #ffffff !important;
}

table th {
  background: #f8fafc !important;
}

.muted, .k {
  color: var(--pm-muted) !important;
}
