@tailwind base;@tailwind components;@tailwind utilities;html,body,#root{margin:0;padding:0;min-height:100%;background:#fefcf8}html.dark,html.dark body,html.dark #root{background:#080808}body{font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.dark body{background:#080808;color:#f4f7fb}*:focus-visible{outline:2px solid #3B82F6;outline-offset:3px}::selection{background:#3b82f640;color:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a}::-webkit-scrollbar-thumb:hover{background:#ffffff2e}.bg-grid{background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:60px 60px}@keyframes pulse-node{0%,to{opacity:.3}50%{opacity:1}}.memory-node{animation:pulse-node 3s ease-in-out infinite}.memory-node:nth-child(2){animation-delay:.5s}.memory-node:nth-child(3){animation-delay:1s}.memory-node:nth-child(4){animation-delay:1.5s}.memory-node:nth-child(5){animation-delay:2s}.memory-node:nth-child(6){animation-delay:2.5s}.inline-code{font-family:JetBrains Mono,monospace;font-size:.875rem;color:#60a5fa}.btn-4m{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;min-height:44px;background-color:#1a1c1e;color:#fff;font-family:JetBrains Mono,monospace;font-weight:700;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;transition:all .15s ease;border:none}.btn-4m:hover{background-color:#2e3034}.dark .btn-4m{background-color:#3b82f6;color:#fff;border:1px solid #60A5FA}.dark .btn-4m:hover{background-color:#60a5fa}.btn-4m:active{transform:scale(.98)}.btn-4m-secondary{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;min-height:44px;background-color:transparent;color:#1a1c1e;font-family:JetBrains Mono,monospace;font-weight:700;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;border:1px solid #1A1C1E;transition:all .15s ease}.btn-4m-secondary:hover{background-color:#1a1c1e;color:#fff}.btn-4m-secondary:active{transform:scale(.98)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce-arrow{0%,to{transform:translateY(0);opacity:.3}50%{transform:translateY(6px);opacity:1}}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease-out,transform .7s ease-out}.reveal.visible{opacity:1;transform:translateY(0)}
