/**
 * Bharat Business Directory — global design tokens
 * Change colors and typography here to update admin, owner, and public UI.
 * Mobile layout rules: public/css/mobile-base.css
 */
:root {
  /* Brand */
  --bharat-primary: #ff6821;
  --bharat-primary-rgb: 255 104 33;
  --bharat-primary-hover: #e55a15;
  --bharat-primary-hover-rgb: 229 90 21;
  --bharat-primary-dark: #c44a10;
  --bharat-primary-dark-rgb: 196 74 16;
  --bharat-primary-light: #fff0e8;
  --bharat-primary-muted: #ffd4bc;

  /* Indian flag — Ashoka Chakra navy (dark brand) */
  --bharat-chakra: #07038d;
  --bharat-chakra-rgb: 7 3 141;
  --bharat-chakra-deep: #04026a;
  --bharat-chakra-deep-rgb: 4 2 106;
  --bharat-chakra-bright: #0c06b5;
  --bharat-chakra-bright-rgb: 12 6 181;
  --bharat-chakra-muted: #c7c3f0;

  --bharat-base: #ffffff;
  --bharat-base-rgb: 255 255 255;

  /* Typography */
  --bharat-font-family: Mulish, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";

  /* Legacy aliases (admin / owner / auth) */
  --color-primary: var(--bharat-primary);
  --color-primary-hover: var(--bharat-primary-hover);
  --color-primary-light: var(--bharat-primary-light);
  --color-primary-dark: var(--bharat-primary-dark);
  --skin-primary: var(--bharat-primary);
  --skin-primary-hover: var(--bharat-primary-hover);
  --auth-orange: var(--bharat-primary);
  --auth-orange-dark: var(--bharat-primary-hover);
  --auth-orange-light: var(--bharat-primary-light);

  --tw-ring-color: rgb(var(--bharat-primary-rgb) / 0.35);

  /* Interactive motion */
  --bharat-interactive-duration: 0.22s;
  --bharat-interactive-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

*,
::before,
::after {
  --tw-ring-color: rgb(var(--bharat-primary-rgb) / 0.35);

  /* Interactive motion */
  --bharat-interactive-duration: 0.22s;
  --bharat-interactive-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* Global typography */
html,
body {
  font-family: var(--bharat-font-family);
}

.font-sans {
  font-family: var(--bharat-font-family) !important;
}

/* Tailwind primary scale overrides (public main.css) */
.border-primary-600 {
  border-color: rgb(var(--bharat-primary-rgb) / var(--tw-border-opacity, 1)) !important;
}

.bg-primary-100 {
  background-color: var(--bharat-primary-light) !important;
}

.bg-primary-600 {
  background-color: rgb(var(--bharat-primary-rgb) / var(--tw-bg-opacity, 1)) !important;
}

.bg-primary-700 {
  background-color: rgb(var(--bharat-primary-hover-rgb) / var(--tw-bg-opacity, 1)) !important;
}

.bg-primary-900 {
  background-color: rgb(var(--bharat-primary-dark-rgb) / var(--tw-bg-opacity, 1)) !important;
}

.bg-primary-950 {
  background-color: rgb(102 39 8 / var(--tw-bg-opacity, 1)) !important;
}

.text-primary-300 {
  color: rgb(255 196 163 / var(--tw-text-opacity, 1)) !important;
}

.text-primary-400 {
  color: rgb(255 154 92 / var(--tw-text-opacity, 1)) !important;
}

.text-primary-500,
.text-primary-600 {
  color: rgb(var(--bharat-primary-rgb) / var(--tw-text-opacity, 1)) !important;
}

.hover\:bg-primary-500:hover {
  background-color: rgb(255 122 49 / var(--tw-bg-opacity, 1)) !important;
}

.hover\:bg-primary-800:hover {
  background-color: rgb(var(--bharat-primary-dark-rgb) / var(--tw-bg-opacity, 1)) !important;
}

.hover\:text-primary-600:hover,
.group:hover .group-hover\:text-primary-600 {
  color: rgb(var(--bharat-primary-rgb) / var(--tw-text-opacity, 1)) !important;
}

.hover\:text-primary-700:hover {
  color: rgb(var(--bharat-primary-hover-rgb) / var(--tw-text-opacity, 1)) !important;
}

.focus\:ring-primary-600:focus {
  --tw-ring-color: rgb(var(--bharat-primary-rgb) / var(--tw-ring-opacity, 1)) !important;
}

.focus\:ring-primary-900:focus {
  --tw-ring-color: rgb(var(--bharat-primary-dark-rgb) / var(--tw-ring-opacity, 1)) !important;
}

.focus-visible\:outline-primary-600:focus-visible {
  outline-color: var(--bharat-primary) !important;
}

.focus-visible\:outline-primary-900:focus-visible {
  outline-color: var(--bharat-primary-dark) !important;
}

.prose-a\:text-primary-500 :is(:where(a):not(:where([class~="not-prose"], [class~="not-prose"] *))) {
  color: rgb(var(--bharat-primary-rgb) / var(--tw-text-opacity, 1)) !important;
}

/* Flag chakra navy — dark sections & legacy indigo utility */
.bg-indigo-950,
.bg-bharat-chakra {
  --tw-bg-opacity: 1;
  background-color: var(--bharat-chakra) !important;
}

.text-bharat-chakra-muted {
  color: var(--bharat-chakra-muted) !important;
}
