:root{--color-bg-primary: #1a1a2e;--color-bg-secondary: #16213e;--color-bg-card: #0f3460;--color-accent-primary: #c9a96e;--color-accent-secondary: #e8d5b7;--color-text-primary: #f0e6d3;--color-text-secondary: #a89b8c;--color-success: #4a9b6e;--color-locked: #3d3d5c;--color-border: #2a2a4a}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:DM Sans,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.font-display{font-family:Playfair Display,Georgia,serif}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-10px)}20%,40%,60%,80%{transform:translate(10px)}}.animate-shake{animation:shake .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .4s ease-out forwards}@keyframes glowPulse{0%,to{box-shadow:0 0 #c9a96e00}50%{box-shadow:0 0 24px 8px #c9a96e59}}.animate-glow-pulse{animation:glowPulse 1.2s ease-in-out 2}@keyframes flicker{0%,to{opacity:1;transform:scale(1) rotate(-1deg)}25%{opacity:.9;transform:scale(1.05) rotate(1deg)}50%{opacity:1;transform:scale(.97) rotate(-.5deg)}75%{opacity:.95;transform:scale(1.03) rotate(.5deg)}}.animate-flicker{animation:flicker 1.8s ease-in-out infinite}@keyframes bounceIn{0%{transform:scale(.9);opacity:.7}60%{transform:scale(1.08);opacity:1}to{transform:scale(1)}}.animate-bounce-in{animation:bounceIn .35s ease-out forwards}@keyframes revealUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-reveal-up{animation:revealUp .5s ease-out forwards}@keyframes cascadeNode{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.animate-cascade-node{animation:cascadeNode .3s ease-out forwards}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px;border-radius:4px}::selection{background-color:#c9a96e40;color:var(--color-text-primary)}
