@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;600&display=swap);:root{--hud-height:64px}.App{color:#e2e8f0;isolation:isolate;min-height:100vh;overflow:hidden;position:relative}.hud-topbar{display:flex;justify-content:center;left:0;padding:0;pointer-events:none;position:fixed;right:0;top:env(safe-area-inset-top,0);z-index:5}.hud-topbar__content{align-items:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(135deg,#0f172af2,#0f172abf);border-bottom:1px solid #94a3b833;box-shadow:0 12px 32px #02061766;display:flex;flex-wrap:wrap;gap:clamp(12px,2vw,24px);justify-content:flex-start;padding:8px clamp(16px,3vw,32px);pointer-events:auto;width:100%}.hud-topbar__left{flex:0 0 auto;gap:10px;min-width:0}.hud-topbar__brand,.hud-topbar__left{align-items:center;display:inline-flex}.hud-topbar__brand{gap:8px}.hud-topbar__brand-icon{border-radius:6px;box-shadow:0 6px 14px #0f172a73;flex-shrink:0;height:22px;width:22px}.hud-topbar__book{align-items:center;background:#22d3ee2e;border:1px solid #7dd3fc80;border-radius:999px;box-shadow:0 10px 24px #0ea5e94d;display:inline-flex;gap:10px;justify-content:center;padding:6px 12px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;white-space:nowrap}.hud-topbar__book:hover{border-color:#7dd3fccc;box-shadow:0 16px 30px #0ea5e961;transform:translateY(-1px)}.hud-topbar__book-art{border-radius:10px;box-shadow:0 6px 16px #02061780;flex-shrink:0;height:58px;object-fit:cover;width:42px}.hud-topbar__book-text{color:#f8fafc;font-size:.76rem;font-weight:600;letter-spacing:.02em}.hud-topbar__logo{color:#f8fafc;font-size:.85rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hud-topbar__tip{color:#e2e8f0ad;font-size:.68rem;white-space:nowrap}.hud-topbar__group{align-items:center;display:inline-flex;flex-wrap:wrap;gap:clamp(8px,1.4vw,16px)}.hud-topbar__controls{flex:1 1 320px;gap:clamp(8px,1.4vw,14px);justify-content:flex-start}.hud-topbar__item{align-items:center;background:#94a3b81f;border:1px solid #94a3b833;border-radius:999px;color:#e2e8f0;display:inline-flex;font-size:.75rem;font-weight:600;gap:6px;padding:4px 10px;white-space:nowrap}.hud-topbar__label{color:#e2e8f0b3;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase}.hud-topbar__language select{-webkit-appearance:none;appearance:none;background:#0000;border:none;color:#f8fafc;cursor:pointer;font-size:.76rem;font-weight:600;outline:none;padding:0}.hud-topbar__language select option{background:#f8fafc;color:#0f172a}.hud-topbar__checkbox{cursor:pointer;gap:8px}.hud-topbar__checkbox input{accent-color:#38bdf8;cursor:pointer;height:14px;width:14px}.hud-topbar__checkbox span{font-weight:500}.hud-topbar__button{background:linear-gradient(135deg,#3b82f6e6,#0ea5e9e6);border:none;border-radius:999px;box-shadow:0 10px 22px #0ea5e947;color:#0f172a;cursor:pointer;font-size:.75rem;font-weight:700;padding:5px 12px;transition:transform .2s ease,box-shadow .2s ease}.hud-topbar__button:hover{box-shadow:0 14px 30px #0ea5e959;transform:translateY(-1px)}.hud-topbar__button:focus{box-shadow:0 0 0 3px #38bdf859;outline:none}.hud-topbar__links{flex:0 0 auto;gap:8px}.hud-topbar__link{align-items:center;background:#0f76f61f;border:1px solid #38bdf847;border-radius:999px;color:#f8fafc;display:inline-flex;font-size:.75rem;font-weight:600;gap:6px;padding:5px 12px;text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;white-space:nowrap}.hud-topbar__link:hover{border-color:#60a5faa6;box-shadow:0 12px 26px #3b82f640;transform:translateY(-1px)}.hud-topbar__link-icon{align-items:center;display:inline-flex;flex-shrink:0;height:14px;justify-content:center;width:14px}.hud-topbar__link-icon svg{height:100%;width:100%}.activity-sidebar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f172adb;border:1px solid #94a3b840;border-radius:14px;bottom:calc(env(safe-area-inset-bottom, 0px) + 16px);box-shadow:0 16px 36px #0f172a52;display:flex;flex-direction:column;gap:12px;padding:12px;pointer-events:auto;position:fixed;right:clamp(12px,3vw,36px);top:calc(env(safe-area-inset-top, 0px) + 104px);top:calc(env(safe-area-inset-top, 0px) + var(--hud-height, 64px) + 40px);transition:transform .3s ease,opacity .3s ease,visibility .3s ease;width:min(260px,calc(100vw - 24px));z-index:4}.activity-sidebar__header{color:#94a3b8b3;font-size:.7rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase}.activity-sidebar__list{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;list-style:none;margin:0;min-height:0;overflow-y:auto;padding:0;scrollbar-width:thin}.activity-sidebar__item{background:#0f76f61a;border:1px solid #38bdf847;border-radius:10px;color:#e2e8f0;font-size:.78rem;line-height:1.35;padding:7px 10px}.activity-sidebar__item--empty{border-style:dashed;font-style:italic;opacity:.6;text-align:center}.activity-sidebar__list::-webkit-scrollbar{width:6px}.activity-sidebar__list::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:999px}.activity-toggle{align-items:center;background:#0f172ad9;border:1px solid #38bdf866;border-radius:999px;bottom:clamp(16px,4vh,32px);box-shadow:0 12px 24px #02061759;color:#f8fafc;cursor:pointer;display:none;font-size:.8rem;font-weight:600;gap:6px;padding:10px 14px;position:fixed;right:clamp(12px,3vw,32px);transition:transform .2s ease,box-shadow .2s ease;z-index:6}.activity-toggle:hover{box-shadow:0 14px 28px #02061773;transform:translateY(-1px)}.activity-toggle.is-open span:first-child{transform:rotate(20deg)}@media (max-width:1024px){.hud-topbar__content{gap:10px}}@media (max-width:820px){.hud-topbar__content{gap:8px}.hud-topbar__controls{flex:1 1 100%}.activity-sidebar{width:min(240px,calc(100vw - 24px))}}@media (max-width:768px){.activity-sidebar{bottom:calc(env(safe-area-inset-bottom, 0px) + 88px);opacity:0;pointer-events:none;right:12px;transform:translateY(12px);visibility:hidden;width:min(220px,calc(100vw - 24px))}.activity-sidebar.is-open{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.activity-toggle{display:inline-flex}}@media (max-width:600px){.hud-topbar__content{padding:10px 12px}.hud-topbar__book-art{height:46px;width:34px}.hud-topbar__group{gap:10px}.hud-topbar__controls{gap:8px;justify-content:space-between}}.playfield{background:radial-gradient(circle at 30% 15%,#0f76f638,#020617f2);cursor:grab;height:100vh;inset:0;overflow:hidden;position:fixed;touch-action:none;width:100vw;z-index:0}.playfield.is-panning{cursor:grabbing}.playfield-overlay{height:100%;left:0;mix-blend-mode:screen;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}:root{color-scheme:dark}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 20% 20%,#1e293b 0,#0f172a 45%,#020617 100%);color:#e2e8f0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;min-height:100vh}code{font-family:JetBrains Mono,source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.particle{animation:fly .8s ease-out forwards;border-radius:50%;height:6px;pointer-events:none;position:absolute;width:6px}@keyframes fly{to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(0)}}@keyframes trail{to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(0)}}.trail{animation:trail .5s ease-out forwards;background:currentColor;border-radius:50%;height:8px;opacity:.7;pointer-events:none;position:absolute;width:8px;will-change:transform,opacity;z-index:0}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.pulse-content{animation:pulse 3s ease-in-out infinite;box-shadow:0 0 8px #fffc,0 0 16px #ffffff80,inset 0 0 4px #0003;will-change:transform}@keyframes dash{to{stroke-dashoffset:10}}.connection{stroke-dasharray:5 5;animation:dash 2s linear infinite;filter:drop-shadow(0 0 4px gray)}
/*# sourceMappingURL=main.cb9a0b30.css.map*/