:root {
  --background: 42 55% 96%;
  --foreground: 35 26% 10%;
  --primary: 43 94% 54%;
  --primary-foreground: 36 32% 8%;
  --secondary: 36 25% 18%;
  --secondary-foreground: 43 80% 92%;
  --muted: 40 18% 82%;
  --muted-foreground: 35 12% 36%;
  --destructive: 2 76% 58%;
  --destructive-foreground: 0 0% 100%;
  --border: 42 22% 76%;
  --card: 42 55% 99%;
  --shadow-sm: 0 6px 18px hsl(36 36% 10% / 0.08);
  --shadow-md: 0 18px 44px hsl(36 36% 10% / 0.14);
  --shadow-lg: 0 28px 80px hsl(36 36% 10% / 0.24);
  --transition-fast: 160ms ease;
  --transition-smooth: 280ms cubic-bezier(.2,.8,.2,1);
  --radius-sm: 12px;
  --radius-md: 20px;
  --radius-lg: 30px;
}
.dark {
  --background: 36 36% 4%;
  --foreground: 43 62% 91%;
  --primary: 43 96% 56%;
  --primary-foreground: 36 36% 5%;
  --secondary: 38 24% 12%;
  --secondary-foreground: 43 72% 88%;
  --muted: 38 16% 18%;
  --muted-foreground: 42 18% 66%;
  --destructive: 2 82% 61%;
  --destructive-foreground: 0 0% 100%;
  --border: 40 22% 20%;
  --card: 38 30% 8%;
}
* { box-sizing: border-box; }
html { background: hsl(var(--background)); color: hsl(var(--foreground)); }
body { margin: 0; min-height: 100vh; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: radial-gradient(circle at top left, hsl(var(--primary) / .20), transparent 30%), radial-gradient(circle at 80% 10%, hsl(42 88% 38% / .14), transparent 30%), hsl(var(--background)); color: hsl(var(--foreground)); overflow-x: hidden; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
input, textarea, select { font-size: max(16px, 1rem); }
.glass { background: linear-gradient(145deg, hsl(var(--card) / .82), hsl(var(--secondary) / .54)); border: 1px solid hsl(var(--border) / .75); box-shadow: var(--shadow-md); backdrop-filter: blur(18px); }
.gold-text { background: linear-gradient(135deg, hsl(var(--primary)), hsl(38 100% 74%)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.safe-bottom { padding-bottom: calc(88px + env(safe-area-inset-bottom)); }
.bottom-nav { padding-bottom: calc(10px + env(safe-area-inset-bottom)); }
.pulse-orb { animation: floatOrb 5s ease-in-out infinite; }
@keyframes floatOrb { 0%,100% { transform: translateY(0) scale(1); opacity:.72; } 50% { transform: translateY(-10px) scale(1.04); opacity:1; } }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-thumb { background: hsl(var(--primary) / .35); border-radius: 999px; }
