:root{--red: #e8001f;--red-b: #ff1a36;--red-glow: rgba(232, 0, 31, .45);--red-dim: rgba(232, 0, 31, .12);--bg: #020205;--surface: rgba(10, 10, 16, .92);--border: rgba(232, 0, 31, .22);--border-hi: rgba(232, 0, 31, .55);--text: #f0f0f5;--text-dim: #5a5a70;--text-mid: #9090a8;--glass: rgba(255, 255, 255, .04)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{width:100%;height:100%;overflow:hidden}body{font-family:Syne,sans-serif;background:var(--bg);color:var(--text);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:8px!important;height:8px!important}::-webkit-scrollbar-track{background:#020205!important}::-webkit-scrollbar-thumb{background:#3a0008!important;border-radius:4px!important;border:1px solid #1a0003!important}::-webkit-scrollbar-thumb:hover{background:#e8001f!important;box-shadow:0 0 12px #e8001f99!important}*{scrollbar-width:thin;scrollbar-color:#3a0008 #020205}button,input,select,textarea{font-family:inherit;font-size:1rem}@keyframes navFloat{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(6px)}}@keyframes navGlow{0%{left:30%;right:30%;opacity:.5}to{left:18%;right:18%;opacity:1}}@keyframes hudFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes dotBlink{0%,to{opacity:1;box-shadow:0 0 8px #2d5c}50%{opacity:.5;box-shadow:0 0 3px #22dd554d}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes drift{0%{transform:translate(-70%,-60%) scale(1)}50%{transform:translate(-30%,-40%) scale(1.2)}to{transform:translate(-60%,-55%) scale(.9)}}button{transition:all .2s ease;position:relative}button:active{transform:scale(.96)}button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--red),0 0 20px var(--red-glow)}button:not(:disabled):hover{box-shadow:0 0 15px var(--red-glow)}.ripple{position:absolute;border-radius:50%;background:var(--red-glow);transform:scale(0);animation:ripple .6s linear;pointer-events:none}@keyframes ripple{to{transform:scale(4);opacity:0}}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:all .3s ease}.slide-enter-from{opacity:0;transform:translateY(20px)}.slide-leave-to{opacity:0;transform:translateY(-20px)}.page-transitioning #app>*{animation:pageOut .25s ease forwards}@keyframes pageOut{to{opacity:0;transform:scale(.98);filter:blur(4px)}}#app>*{animation:pageIn .3s ease forwards}@keyframes pageIn{0%{opacity:0;transform:scale(1.02);filter:blur(8px)}to{opacity:1;transform:scale(1);filter:blur(0)}}
