@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap");*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{margin:0;padding:0;overscroll-behavior:none;min-height:100vh;width:100%;background:var(--app-bg,#f4f2ed);color:var(--app-fg,#0e0e0f)}body{overflow-x:clip;font-family:Space Grotesk,system-ui,sans-serif}button{cursor:pointer;padding:0}button,input,textarea{font-family:inherit;border:none;background:none;color:inherit}input,textarea{outline:none}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.no-scroll::-webkit-scrollbar{display:none}.no-scroll{scrollbar-width:none}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}@keyframes scramble{0%{filter:blur(8px);opacity:.3}to{filter:blur(0);opacity:1}}@keyframes slideUp{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes cardSwipeIn{0%{transform:translateX(40px) rotate(2deg);opacity:0}to{transform:translateX(0) rotate(0);opacity:1}}@keyframes cardSwipeOut{to{transform:translateX(-60px) rotate(-3deg);opacity:0}}@keyframes tickPulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes swipeHint{0%,to{transform:translateY(0);opacity:.5}50%{transform:translateY(-6px);opacity:1}}