/* Global Reset & Base Styles */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: 'Inter', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  background-color: var(--bg-app);
  color: var(--text-main);
  min-height: 100vh;
  overflow-x: hidden;
  transition: background-color var(--transition-normal), color var(--transition-normal);
}

a {
  text-decoration: none;
  color: inherit;
}

input, select, button, textarea {
  font-family: inherit;
  font-size: 14px;
  color: inherit;
}

/* Helpers text alignment & utilities */
.text-right { text-align: right; }
.text-center { text-align: center; }
.text-danger { color: var(--color-danger) !important; }
.text-success { color: var(--color-success) !important; }
.text-primary { color: var(--color-primary) !important; }
.text-muted { color: var(--text-muted); }
.text-xs { font-size: 11px; }
.text-sm { font-size: 13px; }
.py-5 { padding-top: 40px; padding-bottom: 40px; }
.mr-2 { margin-right: 8px; }
.mb-3 { margin-bottom: 12px; }
.hidden { display: none !important; }
