/* Base & Resets
  - Normalize defaults, typography, colors, CSS variables
  - Minimal global selectors only (html, body, a, button)
*/

:root {
  /* Theme variables (extend as needed) */
  --color-bg: #0f0f12;
  --color-surface: #15151a;
  --color-border: #2a2a31;
  --color-text: #e7e7ee;
  --color-muted: #b9b9c4;
  --color-accent: #6c7cff;
  --color-danger: #ff6c6c;

  /* Legacy vars used across existing styles (kept for compatibility) */
  --bg: #050509;
  --bg-alt: #0b0c14;
  --card: #141624;
  --card-hover: #1b1d2f;
  --accent: #7f5af0;
  --accent-soft: rgba(127, 90, 240, 0.2);
  --text: #f5f5ff;
  --text-soft: #a4a5c0;
  --border-subtle: #26283a;
  --radius-xl: 20px;
  --shadow-soft: 0 18px 40px rgba(0, 0, 0, 0.7);
}

html, body {
  margin: 0;
  padding: 0;
  background: var(--color-bg);
  color: var(--color-text);
  height: 100%;
}

*, *::before, *::after {
  box-sizing: border-box;
}

img { max-width: 100%; display: block; }

button { font: inherit; }

a { color: inherit; text-decoration: none; }

/* Accessibility helpers */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
