:root {
  /* Colors */
  --bg-primary: #140800;
  --bg-secondary: #1e0d00;
  --bg-card: #2a1500;
  --bg-card-hover: #351a00;
  --bg-input: #3a1e05;
  --bg-overlay: rgba(0, 0, 0, 0.7);

  --accent: #E35A2B;
  --accent-dark: #c94d22;
  --accent-light: #ff7245;
  --accent-glow: rgba(227, 90, 43, 0.3);

  --text-primary: #ffffff;
  --text-secondary: #cbb49e;
  --text-muted: #9e7b6a;
  --text-accent: #E35A2B;

  --border-color: #3d2010;
  --border-accent: rgba(227, 90, 43, 0.5);

  --status-available: #22c55e;
  --status-available-bg: rgba(34, 197, 94, 0.15);
  --status-occupied: #ef4444;
  --status-occupied-bg: rgba(239, 68, 68, 0.15);
  --status-bill: #f59e0b;
  --status-bill-bg: rgba(245, 158, 11, 0.15);
  --status-reserved: #6366f1;

  --success: #22c55e;
  --warning: #f59e0b;
  --danger: #ef4444;
  --info: #3b82f6;

  /* Typography */
  --font-main: 'Inter', sans-serif;
  --font-display: 'Outfit', sans-serif;

  /* Spacing */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 999px;

  /* Shadows */
  --shadow-card: 0 4px 24px rgba(0, 0, 0, 0.4);
  --shadow-accent: 0 0 20px rgba(227, 90, 43, 0.25);
  --shadow-elevated: 0 8px 32px rgba(0, 0, 0, 0.5);

  /* Transitions */
  --transition: 0.2s ease;
  --transition-slow: 0.4s ease;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  -webkit-tap-highlight-color: transparent;
}

html, body {
  height: 100%;
  font-family: var(--font-main);
  background-color: var(--bg-primary);
  color: var(--text-primary);
  overflow-x: hidden;
}

/* Scrollbar */
::-webkit-scrollbar { width: 4px; }
::-webkit-scrollbar-track { background: var(--bg-secondary); }
::-webkit-scrollbar-thumb { background: var(--border-color); border-radius: 4px; }
