:root {
  color-scheme: light;

  /* Mango ERP brand tokens, sampled from mangoconsultant.com on 2026-06-07. */
  --mango-primary: #00804c;
  --mango-primary-dark: #006a58;
  --mango-primary-soft: #e9f8ef;
  --mango-lime: #72db5f;
  --mango-teal: #008c92;
  --mango-teal-dark: #003f45;
  --mango-teal-mid: #0b777b;
  --mango-blue: #007dfc;
  --mango-blue-dark: #005fca;
  --mango-blue-mid: #4a9ff8;
  --mango-blue-soft: #e8f2fe;
  --mango-blue-wash: #f0f7ff;
  --mango-navy: #1f2937;
  --mango-navy-mid: #334155;
  --mango-green: var(--mango-primary);
  --mango-green-mid: #116c55;
  --mango-green-soft: var(--mango-lime);
  --mango-cyan: var(--mango-teal);
  --mango-amber: #f59e0b;
  --mango-red: #ef4444;
  --mango-purple: #8b5cf6;
  --mango-pink: #db2777;

  --mango-bg: #f7f9fc;
  --mango-surface: #ffffff;
  --mango-surface-soft: #fbfdff;
  --mango-border: #e3e8ef;
  --mango-border-strong: #cfd9e6;
  --mango-ink: #0f172a;
  --mango-ink-soft: #334155;
  --mango-muted: #6b7589;
  --mango-muted-strong: #4b5565;

  --mango-font-sans: "Plus Jakarta Sans", "Sarabun", "Noto Sans SC", system-ui, sans-serif;
  --mango-font-mono: Menlo, Monaco, "Courier New", ui-monospace, monospace;
  --mango-radius-xs: 4px;
  --mango-radius-sm: 6px;
  --mango-radius: 8px;
  --mango-radius-lg: 12px;
  --mango-radius-xl: 16px;

  --mango-shadow-sm: 0 2px 4px 0 #00804c14, 0 1px 2px -1px #0000000d;
  --mango-shadow-md: 0 6px 10px -2px #0000001a, 0 3px 6px -2px #0000000d;
  --mango-shadow-lg: 0 10px 15px -3px #00804c1f, 0 4px 6px -2px #0000000a;
  --mango-shadow-xl: 0 20px 25px -5px #00804c26, 0 10px 10px -5px #0000000a;

  --mango-gradient-brand: linear-gradient(135deg, var(--mango-primary), var(--mango-lime));
  --mango-gradient-header: linear-gradient(90deg, var(--mango-teal-dark), var(--mango-teal));
  --mango-gradient-success: linear-gradient(135deg, var(--mango-green), var(--mango-green-mid), var(--mango-green-soft));
  --mango-gradient-hero: radial-gradient(circle at 50% 8%, #e9f8ef 0, transparent 34%), linear-gradient(180deg, #ffffff, #fbfcfd);
  --mango-gradient-dark: linear-gradient(135deg, #003f45, #006a58 54%, #008c92);

  --bg: var(--mango-bg);
  --surface: var(--mango-surface);
  --paper: var(--mango-surface);
  --panel: var(--mango-surface);
  --border: var(--mango-border);
  --line: var(--mango-border);
  --fg: var(--mango-ink);
  --ink: var(--mango-ink);
  --ink-soft: var(--mango-ink-soft);
  --text: var(--mango-ink);
  --muted: var(--mango-muted);
  --accent: var(--mango-primary);
  --accent-deep: var(--mango-primary-dark);
  --accent-soft: var(--mango-primary-soft);
  --accent-tint: #f3fbf6;
  --teal: var(--mango-primary);
  --teal-dark: var(--mango-primary-dark);
  --teal-mid: var(--mango-teal-mid);
  --teal-light: var(--mango-primary-soft);
  --navy: var(--mango-navy);
  --green: var(--mango-green);
  --amber: var(--mango-amber);
  --red: var(--mango-red);
  --purple: var(--mango-purple);
  --slate: var(--mango-muted-strong);
  --font: var(--mango-font-sans);
  --font-body: var(--mango-font-sans);
  --font-display: var(--mango-font-sans);
  --font-mono: var(--mango-font-mono);
  --radius: var(--mango-radius);
  --radius-lg: var(--mango-radius-lg);
  --shadow-sm: var(--mango-shadow-sm);
  --shadow-md: var(--mango-shadow-md);
  --shadow-lg: var(--mango-shadow-lg);
}

body {
  font-family: var(--mango-font-sans);
}

.mango-brand-bar {
  height: 4px;
  background: linear-gradient(90deg, var(--mango-teal-dark), var(--mango-teal), var(--mango-primary), var(--mango-lime));
  background-size: 200% 100%;
  animation: mango-gradient-shift 6s ease-in-out infinite;
}

.mango-gradient-text {
  background: var(--mango-gradient-success);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

.mango-card {
  background: var(--mango-surface);
  border: 1px solid var(--mango-border);
  border-radius: var(--mango-radius);
  box-shadow: var(--mango-shadow-sm);
}

.mango-chip {
  align-items: center;
  background: color-mix(in srgb, var(--mango-primary) 10%, white);
  border: 1px solid color-mix(in srgb, var(--mango-primary) 22%, white);
  border-radius: 999px;
  color: var(--mango-primary-dark);
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  gap: 6px;
  letter-spacing: 0;
  padding: 5px 10px;
}

.mango-button-primary {
  align-items: center;
  background: var(--mango-gradient-brand);
  border-radius: var(--mango-radius);
  box-shadow: var(--mango-shadow-md);
  color: white;
  display: inline-flex;
  font-weight: 800;
  gap: 8px;
  justify-content: center;
  min-height: 40px;
  padding: 10px 16px;
  text-decoration: none;
}

@keyframes mango-gradient-shift {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
