@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Space+Mono:ital,wght@0,400;0,700;1,400&display=swap";:root{--cyan:#3b82f6;--cyan-dim:#60a5fa;--cyan-muted:#93c5fd;--cyan-glow:#3b82f61a;--cyan-glow-strong:#3b82f638;--bg:#080c14;--bg-2:#0f172a;--bg-3:#1e293b;--bg-card:#0f172ad9;--text:#f1f5f9;--text-dim:#94a3b8;--text-muted:#475569;--border:#ffffff12;--border-hover:#ffffff38;--font-sans:"Space Grotesk", sans-serif;--font-mono:"Space Mono", monospace;--stroke-subtle:#ffffff0f;--dot-color:#3b82f62e;--blob-a:#3b82f62e;--blob-b:#60a5fa24;--blob-c:#3b82f621;--canvas-opacity:.55;--navbar-scrolled-bg:#080c14f2}[data-theme=light]{--cyan:#6366f1;--cyan-dim:#818cf8;--cyan-muted:#a5b4fc;--cyan-glow:#6366f114;--cyan-glow-strong:#6366f12e;--bg:#f8f7f4;--bg-2:#f2f0eb;--bg-3:#e8e4dc;--bg-card:#ffffffd9;--text:#111;--text-dim:#555;--text-muted:#999;--border:#00000017;--border-hover:#00000038;--stroke-subtle:#0000000f;--dot-color:#6366f121;--blob-a:#6366f121;--blob-b:#818cf81a;--blob-c:#6366f11c;--canvas-opacity:.4;--navbar-scrolled-bg:#f8f7f4f2}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto}body{background-color:var(--bg);background-image:radial-gradient(circle, var(--dot-color) 1px, transparent 1px);color:var(--text);font-family:var(--font-sans);cursor:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-size:26px 26px;font-size:16px;line-height:1.6;overflow-x:hidden}#root{width:100%;min-height:100vh}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--cyan-muted);border-radius:2px}a{color:inherit;text-decoration:none}button{cursor:none;font-family:var(--font-sans);background:0 0;border:none}::selection{background:var(--cyan-glow-strong);color:var(--text)}*{cursor:none!important}@media (pointer:coarse){*{cursor:auto!important}body{cursor:auto}a,button,[role=button]{cursor:pointer!important}}@media (width<=480px){html{font-size:16px}::-webkit-scrollbar{width:0}}.app-wrapper{background:var(--bg);width:100%;min-height:100vh;position:relative}.cursor-blob{background:var(--cyan);pointer-events:none;z-index:999999;will-change:transform;border-radius:50%;width:10px;height:10px;transition:width .25s,height .25s,opacity .2s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-ring{border:1.5px solid var(--cyan);pointer-events:none;z-index:999998;will-change:transform;opacity:.5;border-radius:50%;width:36px;height:36px;transition:width .3s,height .3s,border-color .3s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-blob.hovering{width:24px;height:24px}.cursor-ring.hovering{border-color:var(--cyan);opacity:.8;width:54px;height:54px}.cursor-blob.clicking{width:8px;height:8px}.fc{z-index:490;pointer-events:all;-webkit-user-select:none;user-select:none;will-change:transform;position:fixed;top:0;left:0}.fc-svg{width:52px;height:32px;color:var(--cyan);opacity:.22;filter:none;transition:opacity .35s,filter .35s,width .2s,height .2s;display:block}.fc-hov .fc-svg{opacity:.85;filter:drop-shadow(0 0 10px #6366f18c)drop-shadow(0 0 24px #6366f140);width:62px;height:39px}.fc-tip{white-space:nowrap;background:var(--bg-card);border:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.25em;text-transform:uppercase;color:var(--text-muted);pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:8px;padding:5px 12px;font-size:9px;animation:.2s tip-in;display:flex;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000014}.fc-tip:after{content:"";border:5px solid #0000;border-top-color:var(--border);position:absolute;top:100%;left:50%;transform:translate(-50%)}.fc-tip-score{font-family:var(--font-mono);color:var(--cyan);font-size:11px;font-weight:700}.fc-pop{font-family:var(--font-mono);color:var(--cyan);pointer-events:none;font-size:16px;font-weight:700;animation:.9s ease-out forwards pop-float;position:absolute;top:-18px;left:50%;transform:translate(-50%)}@keyframes tip-in{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes pop-float{0%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(-28px)}}@media (pointer:coarse){.fc{display:none}}
