@keyframes pop-in{0%{opacity:0;transform:scale(.86) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes float-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes chatlas-float{0%{opacity:0;transform:translateY(6px) scale(.7)}18%{opacity:1;transform:translateY(0) scale(1.15)}to{opacity:0;transform:translateY(-52px) scale(1.05)}}.chatlas-float{animation:chatlas-float 1.2s ease-out forwards;will-change:transform,opacity}@keyframes offline-toast{0%{opacity:0;transform:translate(-50%) translateY(-16px)}8%{opacity:1;transform:translate(-50%) translateY(0)}86%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-12px)}}.offline-toast{animation:offline-toast 4s ease forwards;will-change:opacity,transform}@keyframes rarity-flash{0%{opacity:0;transform:scale(.45)}22%{opacity:1}to{opacity:0;transform:scale(2.2)}}@keyframes flash-ring{0%{opacity:.9;transform:scale(.35)}to{opacity:0;transform:scale(2.7)}}@keyframes meter-ready{0%,to{filter:brightness(1)}50%{filter:brightness(1.4)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes ready-pulse{0%,to{box-shadow:0 0 #ff78b400}50%{box-shadow:0 0 18px 2px #ff78b459}}.pop-in{animation:pop-in .32s cubic-bezier(.2,.9,.3,1.25)}.fade-in{animation:fade-in .22s ease}.flash{position:absolute;inset:-10%;border-radius:50%;pointer-events:none;animation:rarity-flash .8s ease-out forwards}.flash-ring{position:absolute;inset:6%;border-radius:50%;pointer-events:none;border:3px solid currentColor;opacity:0;animation:flash-ring .95s ease-out forwards}.meter-ready{animation:meter-ready 1.1s ease-in-out infinite}@keyframes toast-drain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-drain{animation:toast-drain 3.8s linear forwards;transform-origin:left center}@keyframes charge-pulse{0%,to{transform:scale(.92)}50%{transform:scale(1.07)}}.charge-orb{width:124px;height:124px;border-radius:50%;animation:charge-pulse .5s ease-in-out infinite}@keyframes haul-in{0%{opacity:0;transform:scale(.5) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.haul-in{opacity:0;animation:haul-in .4s cubic-bezier(.2,.9,.3,1.3) forwards}@keyframes reveal-shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(7px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.reveal-shake{animation:pop-in .32s cubic-bezier(.2,.9,.3,1.25),reveal-shake .55s ease .12s}@keyframes bubble-in{0%{opacity:0;transform:translate(-50%) scale(.8) translateY(-4px)}60%{opacity:1;transform:translate(-50%) scale(1.03) translateY(0)}to{transform:translate(-50%) scale(1) translateY(0)}}.bubble-in{animation:bubble-in .3s cubic-bezier(.2,.9,.3,1.3)}button{transition:transform .08s ease,filter .12s ease,box-shadow .15s ease,border-color .15s ease}button:not(:disabled):hover{filter:brightness(1.09)}button:not(:disabled):active{transform:scale(.95)}button:disabled{filter:grayscale(.6) brightness(.82);cursor:not-allowed}.chip{transition:transform .12s ease,box-shadow .15s ease,border-color .15s ease}.chip:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0006}.chip-on{animation:float-bob 3.2s ease-in-out infinite}.ready-pulse{animation:ready-pulse 1.8s ease-in-out infinite}@keyframes float-up{0%{opacity:0;transform:translate(-50%,4px) scale(.7)}18%{opacity:1;transform:translate(-50%,-10px) scale(1.15)}to{opacity:0;transform:translate(-50%,-78px) scale(1)}}.floater{position:absolute;transform:translate(-50%);font-weight:800;font-size:20px;letter-spacing:.3px;text-shadow:0 2px 10px rgba(0,0,0,.7);animation:float-up 1.5s cubic-bezier(.2,.8,.3,1) forwards;white-space:nowrap}@keyframes big-pop{0%{opacity:0;transform:translate(-50%) scale(.4)}20%{opacity:1;transform:translate(-50%,-6px) scale(1.4)}70%{opacity:1;transform:translate(-50%,-30px) scale(1)}to{opacity:0;transform:translate(-50%,-70px) scale(1)}}.floater-big{font-size:34px;animation:big-pop 1.7s cubic-bezier(.2,.8,.3,1) forwards}@keyframes upgrade-pop{0%{transform:scale(1);box-shadow:0 0 #5fe0c600}30%{transform:scale(1.05);box-shadow:0 0 26px 4px #5fe0c68c}to{transform:scale(1);box-shadow:0 0 #5fe0c600}}.upgrade-pop{animation:upgrade-pop .46s ease}.gacha-split{display:flex;flex-direction:column;gap:16px;max-width:520px;margin:0 auto}.gacha-controls{display:flex;flex-direction:column;gap:12px}@media(min-width:880px){.gacha-split{flex-direction:row;align-items:center;max-width:1000px}.gacha-split>.gacha-stage{order:2;flex:1.25}.gacha-split>.gacha-controls{order:1;flex:1;justify-content:center}}:root{--brush: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9 0.012' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");--brass: linear-gradient(90deg, transparent, rgba(255,207,107,.45), rgba(255,233,180,.55), rgba(255,207,107,.45), transparent);--c-bg-base: #0d0d16;--c-bg-stage: #0a0a12;--c-surface-0: #0c0d15;--c-surface-1: #101119;--c-surface-2: #13141d;--c-surface-3: #15161f;--c-surface-4: #1a1c28;--c-surface-5: #20222e;--c-surface-6: #262a3e;--c-hairline: #23252f;--c-hairline-soft: #2a2c3a;--c-border: #2c2f3c;--c-border-raised: #34384a;--c-border-raised-lit: #444a5e;--c-text: #e8eaf2;--c-text-bright: #ffffff;--c-text-secondary: #cdd2e0;--c-text-muted: #9aa0b4;--c-text-dim: #8a90a8;--c-text-faint: #6b7088;--c-accent-teal: #5fe0c6;--c-accent-teal-bright: #9ef0ff;--c-accent-teal-soft: #bff0e6;--c-accent-pink: #ff5d8f;--c-accent-pink-bright: #ff9ecf;--c-accent-pink-light: #ffd7e4;--c-accent-coral: #ff9d6b;--c-accent-gold: #ffcf6b;--c-accent-gold-bright: #ffe1a3;--c-accent-gold-deep: #ffd76b;--c-accent-amber: #ffb86b;--c-accent-violet: #b388ff;--c-accent-violet-bright: #d8b4ff;--c-accent-magenta: #c264e6;--c-shard: #5ad4ff;--c-danger: #ff8a8a;--c-danger-border: #a3434f;--c-surface-glass: rgba(13, 14, 22, .78);--blur-panel: 6px;--ink-1: rgba(0,0,0,.3);--ink-2: rgba(0,0,0,.4);--ink-3: rgba(0,0,0,.45);--ink-4: rgba(0,0,0,.5);--ink-5: rgba(0,0,0,.55);--ink-6: rgba(0,0,0,.6);--ink-7: rgba(0,0,0,.7);--edge-1: rgba(255,255,255,.04);--edge-2: rgba(255,255,255,.06);--edge-3: rgba(255,255,255,.08);--edge-4: rgba(255,255,255,.1);--edge-5: rgba(255,255,255,.18);--edge-6: rgba(255,255,255,.45);--metal-fleck: rgba(120,130,160,.1);--brass-1: rgba(255,207,107,.05);--brass-2: rgba(255,207,107,.1);--brass-3: rgba(255,207,107,.12);--brass-4: rgba(255,207,107,.45);--sp-px: 1px;--sp-0_5: 2px;--sp-1: 4px;--sp-1_5: 6px;--sp-2: 8px;--sp-2_5: 10px;--sp-3: 12px;--sp-3_5: 14px;--sp-4: 16px;--sp-4_5: 18px;--sp-5: 20px;--sp-6: 24px;--sp-7: 28px;--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 10px;--r-xl: 12px;--r-2xl: 14px;--r-3xl: 16px;--r-4xl: 18px;--r-pill: 999px;--fs-micro: 10px;--fs-eyebrow: 11px;--fs-caption: 12px;--fs-body-sm: 13px;--fs-body: 14px;--fs-h4: 15px;--fs-h3: 16px;--fs-h2: 18px;--fs-numeral: 20px;--fs-h1: 24px;--fs-display: 28px;--fs-hero: 34px;--fw-regular: 400;--fw-medium: 600;--fw-bold: 700;--fw-heavy: 800;--fw-black: 900;--lh-tight: 1;--lh-snug: 1.25;--lh-normal: 1.4;--lh-relaxed: 1.5;--font-display: "IM Fell English", "New Tegomin", Georgia, "Songti SC", "Yu Mincho", serif;--font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-app: var(--font-display);--glow-teal: inset 0 -3px 0 -1px var(--c-accent-teal);--glow-teal-ring: 0 0 10px var(--c-accent-teal), inset 0 0 0 1px var(--c-accent-teal)}nav,header{background-image:var(--brush),none;background-blend-mode:overlay;background-size:180px 180px}header{position:relative}header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--brass);pointer-events:none}button:not(:disabled):active{transform:translateY(1px) scale(.99);filter:brightness(.96)}button.pull-cap:not(:disabled):active,button.forge-cap:not(:disabled):active{transform:translateY(2px) scale(.985);box-shadow:inset 0 2px 5px #00000080,inset 0 1px #ffffff2e,0 1px 2px #0006!important}button:not(:disabled):hover{filter:brightness(1.06)}.pull-cap{position:relative;overflow:hidden}.pull-cap:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(150px circle at var(--mx, 50%) var(--my, 50%),rgba(255,255,255,.45),transparent 55%);opacity:0;transition:opacity .25s ease;pointer-events:none;mix-blend-mode:soft-light}.pull-cap:hover:after{opacity:1}.btn-ripple{position:absolute;border-radius:50%;background:radial-gradient(circle,#ffffff80,#fff0 70%);transform:scale(0);opacity:.85;pointer-events:none;animation:btn-ripple .6s ease-out forwards}@keyframes btn-ripple{to{transform:scale(2.6);opacity:0}}@media(prefers-reduced-motion:reduce){.btn-ripple{animation-duration:.01ms}.pull-cap:after{transition:none}}.np-eq{display:inline-flex;align-items:flex-end;gap:2px;height:11px;flex:0 0 auto}.np-eq i{width:2px;height:100%;background:currentColor;border-radius:1px;transform-origin:bottom;animation:np-eq .9s ease-in-out infinite}.np-eq i:nth-child(2){animation-delay:.3s}.np-eq i:nth-child(3){animation-delay:.6s}@keyframes np-eq{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.np-eq i{animation:none;transform:scaleY(.7)}}.chip:hover{transform:translateY(-2px);box-shadow:inset 0 1px #ffffff0f,0 8px 20px #00000080,0 0 0 1px #ffcf6b1a}@keyframes case-sheen{0%{transform:translate(-120%) skew(-18deg);opacity:0}18%{opacity:.5}60%,to{transform:translate(220%) skew(-18deg);opacity:0}}.case-door{position:relative;overflow:hidden}.case-door:before{content:"";position:absolute;top:0;bottom:0;left:0;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);pointer-events:none;animation:case-sheen 1.4s ease-out .1s 1}input:focus,textarea:focus{outline:none;box-shadow:inset 0 2px 4px #0009,0 0 0 2px #5fe0c647!important;border-color:#3a6f6a!important}@media(prefers-reduced-motion:reduce){.case-door:before{animation:none;display:none}}@keyframes tip-in{0%{opacity:0;transform:translate(-50%,var(--tip-shift, 0)) scale(.96)}to{opacity:1}}@keyframes value-pop{0%{transform:scale(1)}28%{transform:scale(1.16);filter:brightness(1.6)}to{transform:scale(1);filter:brightness(1)}}.value-pop{display:inline-block;animation:value-pop .45s ease-out}.spark{position:fixed;width:var(--sz);height:var(--sz);margin:calc(var(--sz) / -2) 0 0 calc(var(--sz) / -2);background:radial-gradient(circle at 50% 50%,#fffdf3 0%,var(--col) 42%,rgba(255,200,110,.55) 70%,transparent 85%);clip-path:polygon(50% 0%,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0% 50%,42% 42%);filter:drop-shadow(0 0 2px var(--col)) drop-shadow(0 0 5px rgba(255,210,120,.55));animation:spark var(--dur) cubic-bezier(.16,.6,.3,1) var(--delay, 0ms) forwards;will-change:transform,opacity;pointer-events:none;opacity:0}@keyframes spark{0%{transform:translate(0) scale(.2) rotate(0);opacity:0}18%{transform:translate(calc(var(--dx) * .5),var(--rise)) scale(1.15) rotate(var(--rot));opacity:1}65%{opacity:1}to{transform:translate(var(--dx),var(--fall)) scale(.3) rotate(calc(var(--rot) * 2.4));opacity:0}}@keyframes welcome-breathe{0%,to{transform:scale(1);filter:brightness(1) saturate(1)}50%{transform:scale(1.025);filter:brightness(1.07) saturate(1.06)}}.welcome-art{animation:welcome-breathe 7s ease-in-out infinite}@keyframes welcome-title-in{0%{opacity:0;letter-spacing:4px;filter:blur(3px)}to{opacity:1;letter-spacing:.5px;filter:blur(0)}}@keyframes mote-rise{0%{transform:translate(0) scale(.5);opacity:0}15%{opacity:.95}85%{opacity:.6}to{transform:translate(var(--mx,0),-46px) scale(1.05);opacity:0}}.welcome-mote{position:absolute;width:var(--ms,6px);height:var(--ms,6px);border-radius:50%;background:radial-gradient(circle at 50% 50%,#fffdf3,var(--mc,#ffcf6b) 48%,transparent 76%);filter:drop-shadow(0 0 4px var(--mc,#ffcf6b));animation:mote-rise var(--md,5s) ease-in-out var(--mdl,0s) infinite;pointer-events:none}@media(prefers-reduced-motion:reduce){.welcome-art,.welcome-mote{animation:none}}body,button,input,textarea,select{font-family:var(--font-app)}.orrery-wrap{position:relative;width:100%;flex:1;min-height:420px;border-radius:var(--r-3xl);overflow:hidden;border:1px solid var(--c-border);background:var(--c-bg-stage)}.orrery-canvas{position:absolute;inset:0}.orrery-panel{background:var(--c-surface-glass);backdrop-filter:blur(var(--blur-panel));border:1px solid var(--c-border);border-radius:var(--r-2xl);box-shadow:inset 0 1px 0 var(--edge-2),0 8px 24px var(--ink-3)}.orrery-top{position:absolute;top:var(--sp-2);left:50%;transform:translate(-50%);display:flex;gap:var(--sp-1_5);flex-wrap:wrap;justify-content:center;max-width:80%;z-index:3;pointer-events:none}.orrery-left,.orrery-right{position:absolute;top:50px;bottom:64px;width:168px;overflow-y:auto;z-index:3;padding:var(--sp-2);display:flex;flex-direction:column;gap:var(--sp-1_5)}.orrery-left{left:var(--sp-2)}.orrery-right{right:var(--sp-2)}.orrery-bottom{position:absolute;left:var(--sp-2);right:var(--sp-2);bottom:var(--sp-2);z-index:3;padding:var(--sp-1_5) var(--sp-2_5)}@keyframes flux-flow{to{stroke-dashoffset:-10}}.wt-edge{stroke-dasharray:4 8;animation:wt-flow 1.1s linear infinite}@keyframes wt-flow{to{stroke-dashoffset:-12}}.wt-edge-surge{animation-duration:.4s}@keyframes wt-pop{0%{transform:scale(1)}28%{transform:scale(1.05);filter:brightness(1.35)}to{transform:scale(1);filter:brightness(1)}}.wt-pop{animation:wt-pop .8s cubic-bezier(.2,.9,.3,1.2)}@keyframes wt-reveal{0%{transform:scale(.9);filter:brightness(2.1) saturate(1.4)}42%{transform:scale(1.04)}to{transform:scale(1);filter:brightness(1)}}.wt-reveal{animation:wt-reveal .85s cubic-bezier(.2,.9,.3,1.2)}@media(prefers-reduced-motion:reduce){.wt-edge,.wt-pop,.wt-reveal{animation:none}}@media(max-width:760px){.mascot-overlay{display:none!important}}.range-mix{-webkit-appearance:none;appearance:none;height:16px;background:transparent;cursor:pointer}.range-mix:disabled{cursor:not-allowed}.range-mix::-webkit-slider-runnable-track{height:5px;border-radius:999px;background:var(--c-surface-4);border:1px solid var(--c-border)}.range-mix::-webkit-slider-thumb{-webkit-appearance:none;margin-top:-6px;width:15px;height:15px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffb9d2,var(--c-accent-pink));border:1.5px solid var(--c-bg-base);box-shadow:0 0 7px #ff5d8f8c;transition:transform .1s ease}.range-mix::-webkit-slider-thumb:hover{transform:scale(1.15)}.range-mix::-moz-range-track{height:5px;border-radius:999px;background:var(--c-surface-4);border:1px solid var(--c-border)}.range-mix::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--c-accent-pink);border:1.5px solid var(--c-bg-base);box-shadow:0 0 7px #ff5d8f8c}.range-mix:focus{outline:none}.range-mix:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px #ff5d8f4d,0 0 7px #ff5d8f8c}.orrery-preview{position:absolute;z-index:4;bottom:64px;left:184px;right:184px;max-width:380px;margin:0 auto;display:flex;flex-direction:column;gap:3px;padding:var(--sp-1_5) var(--sp-2_5);pointer-events:none}@media(max-width:760px){.orrery-wrap{height:min(82vh,600px)}.orrery-left,.orrery-right{top:auto;bottom:56px;width:calc(50% - var(--sp-3));max-height:40%}.orrery-preview{bottom:auto;top:44px;left:var(--sp-2);right:var(--sp-2);max-width:none;margin:0}.orrery-left{left:var(--sp-2)}.orrery-right{right:var(--sp-2)}.orrery-top{max-width:96%}}html,body,#root{height:100%}body{margin:0;overscroll-behavior:none;background:var(--c-bg-base)}*{scrollbar-width:thin;scrollbar-color:var(--c-surface-6) transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--c-surface-5);border-radius:var(--r-pill);border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--c-border-raised-lit);background-clip:padding-box}::-webkit-scrollbar-corner{background:transparent}canvas{touch-action:none}button,nav,header,kbd,canvas,.orrery-wrap,.nav-rail,[role=button]{user-select:none;-webkit-user-select:none}.orbit-canvas{cursor:grab}.orbit-canvas:active{cursor:grabbing}.nav-rail{position:relative}.nav-rail:before,.nav-rail:after{content:"";position:absolute;top:0;bottom:1px;width:26px;z-index:2;pointer-events:none;opacity:0;transition:opacity .18s ease}.nav-rail:before{left:0;background:linear-gradient(90deg,#101119,#10111900)}.nav-rail:after{right:0;background:linear-gradient(270deg,#101119,#10111900)}.nav-rail[data-l="1"]:before{opacity:1}.nav-rail[data-r="1"]:after{opacity:1}.nav-scroll{display:flex;gap:var(--sp-1);padding:8px 16px;overflow-x:auto;overflow-y:hidden}.nav-scroll{scrollbar-width:none}.nav-scroll::-webkit-scrollbar{display:none}
