/* KKMP — Apple-inspired red & white system */
:root {
  --kk-red: #d70015;
  --kk-red-deep: #9b0010;
  --kk-red-soft: #fff1f2;
  --kk-ink: #1d1d1f;
  --kk-muted: #6e6e73;
  --kk-line: rgba(0, 0, 0, 0.08);
  --kk-bg: #f5f5f7;
  --kk-card: rgba(255, 255, 255, 0.78);
  --bs-primary: #d70015;
  --bs-primary-rgb: 215, 0, 21;
  --bs-danger: #d70015;
  --bs-danger-rgb: 215, 0, 21;
  --bs-link-color: #d70015;
  --bs-link-hover-color: #9b0010;
  --bs-body-bg: #f5f5f7;
  --bs-body-color: #1d1d1f;
  --bs-secondary-color: #6e6e73;
  --bs-border-color: rgba(0, 0, 0, 0.08);
  --bs-font-sans-serif: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Inter", "Segoe UI", sans-serif;
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-border-radius: 1rem;
  --bs-border-radius-lg: 1.25rem;
  --bs-border-radius-xl: 1.5rem;
}

html { scroll-behavior: smooth; }

body {
  font-family: var(--bs-font-sans-serif);
  background:
    radial-gradient(900px 420px at 100% -10%, rgba(215, 0, 21, 0.08), transparent 55%),
    radial-gradient(700px 380px at -10% 20%, rgba(215, 0, 21, 0.05), transparent 50%),
    var(--kk-bg);
  color: var(--kk-ink);
  letter-spacing: -0.011em;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  letter-spacing: -0.03em;
  color: var(--kk-ink);
}

a { text-decoration-thickness: 1px; }

[style*="monospace"] {
  font-family: var(--bs-font-sans-serif) !important;
  font-variant-numeric: tabular-nums;
}
