@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;700&family=JetBrains+Mono:wght@500;700&family=Noto+Sans+JP:wght@400;600;800&display=swap";.wallet-adapter-button{color:#fff;cursor:pointer;background-color:#0000;border:none;border-radius:4px;align-items:center;height:48px;padding:0 24px;font-family:DM Sans,Roboto,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;font-weight:600;line-height:48px;display:flex}.wallet-adapter-button-trigger{background-color:#512da8}.wallet-adapter-button:not([disabled]):focus-visible{outline-color:#fff}.wallet-adapter-button:not([disabled]):hover{background-color:#1a1f2e}.wallet-adapter-button[disabled]{color:#999;cursor:not-allowed;background:#404144}.wallet-adapter-button-end-icon,.wallet-adapter-button-start-icon,.wallet-adapter-button-end-icon img,.wallet-adapter-button-start-icon img{justify-content:center;align-items:center;width:24px;height:24px;display:flex}.wallet-adapter-button-end-icon{margin-left:12px}.wallet-adapter-button-start-icon{margin-right:12px}.wallet-adapter-collapse{width:100%}.wallet-adapter-dropdown{display:inline-block;position:relative}.wallet-adapter-dropdown-list{z-index:99;grid-row-gap:10px;opacity:0;visibility:hidden;background:#2c2d30;border-radius:10px;grid-template-rows:1fr;margin:0;padding:10px;font-family:DM Sans,Roboto,Helvetica Neue,Helvetica,Arial,sans-serif;list-style:none;transition:opacity .2s,transform .2s,visibility .2s;display:grid;position:absolute;top:100%;right:0;box-shadow:0 8px 20px #0009}.wallet-adapter-dropdown-list-active{opacity:1;visibility:visible;transform:translateY(10px)}.wallet-adapter-dropdown-list-item{cursor:pointer;white-space:nowrap;box-sizing:border-box;color:#fff;border:none;border-radius:6px;outline:none;flex-direction:row;justify-content:center;align-items:center;width:100%;height:37px;padding:0 20px;font-size:14px;font-weight:600;display:flex}.wallet-adapter-dropdown-list-item:not([disabled]):hover{background-color:#1a1f2e}.wallet-adapter-modal-collapse-button svg{fill:#999;align-self:center}.wallet-adapter-modal-collapse-button.wallet-adapter-modal-collapse-button-active svg{transition:transform .15s ease-in;transform:rotate(180deg)}.wallet-adapter-modal{opacity:0;z-index:1040;background:#00000080;transition:opacity .15s linear;position:fixed;inset:0;overflow-y:auto}.wallet-adapter-modal.wallet-adapter-modal-fade-in{opacity:1}.wallet-adapter-modal-button-close{cursor:pointer;background:#1a1f2e;border:none;border-radius:50%;justify-content:center;align-items:center;padding:12px;display:flex;position:absolute;top:18px;right:18px}.wallet-adapter-modal-button-close:focus-visible{outline-color:#fff}.wallet-adapter-modal-button-close svg{fill:#777;transition:fill .2s}.wallet-adapter-modal-button-close:hover svg{fill:#fff}.wallet-adapter-modal-overlay{background:#00000080;position:fixed;inset:0}.wallet-adapter-modal-container{justify-content:center;align-items:center;min-height:calc(100vh - 6rem);margin:3rem;display:flex}@media (width<=480px){.wallet-adapter-modal-container{min-height:calc(100vh - 2rem);margin:1rem}}.wallet-adapter-modal-wrapper{box-sizing:border-box;z-index:1050;background:#10141f;border-radius:10px;flex-direction:column;flex:1;align-items:center;max-width:400px;font-family:DM Sans,Roboto,Helvetica Neue,Helvetica,Arial,sans-serif;display:flex;position:relative;box-shadow:0 8px 20px #0009}.wallet-adapter-modal-wrapper .wallet-adapter-button{width:100%}.wallet-adapter-modal-title{text-align:center;color:#fff;margin:0;padding:64px 48px 48px;font-size:24px;font-weight:500;line-height:36px}@media (width<=374px){.wallet-adapter-modal-title{font-size:18px}}.wallet-adapter-modal-list{width:100%;margin:0 0 12px;padding:0;list-style:none}.wallet-adapter-modal-list .wallet-adapter-button{border-radius:0;font-size:18px;font-weight:400}.wallet-adapter-modal-list .wallet-adapter-button-end-icon,.wallet-adapter-modal-list .wallet-adapter-button-start-icon,.wallet-adapter-modal-list .wallet-adapter-button-end-icon img,.wallet-adapter-modal-list .wallet-adapter-button-start-icon img{width:28px;height:28px}.wallet-adapter-modal-list .wallet-adapter-button span{opacity:.6;margin-left:auto;font-size:14px}.wallet-adapter-modal-list-more{cursor:pointer;color:#fff;background-color:#0000;border:none;align-self:flex-end;align-items:center;padding:12px 24px 24px 12px;display:flex}.wallet-adapter-modal-list-more svg{fill:#fff;margin-left:.5rem;transition:all .1s}.wallet-adapter-modal-list-more-icon-rotate{transform:rotate(180deg)}.wallet-adapter-modal-middle{box-sizing:border-box;flex-direction:column;align-items:center;width:100%;padding:0 24px 24px;display:flex}.wallet-adapter-modal-middle-button{cursor:pointer;color:#fff;background-color:#512da8;border:none;border-radius:8px;width:100%;margin-top:48px;padding:12px;font-size:18px;display:block}:root{--bg:#07060d;--surface:#141222b8;--surface-hi:#201c36eb;--line:#ffffff14;--text:#f2f0fa;--muted:#9a95b4;--sol-purple:#9945ff;--sol-green:#14f195;--sol-cyan:#00d1ff;--amber:#ffb547;--red:#ff5d6c;--grad:linear-gradient(135deg, var(--sol-purple), var(--sol-cyan) 55%, var(--sol-green));--radius:20px;--display:"Space Grotesk", "Noto Sans JP", sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--ease:cubic-bezier(.16, 1, .3, 1);--travel:.9s;color:var(--text);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Noto Sans JP,system-ui,sans-serif;line-height:1.55}*{box-sizing:border-box}body{background:radial-gradient(1px 1px at 1px 1px, #ffffff0f 1px, transparent 0) 0 0 / 28px 28px, var(--bg);min-height:100vh;margin:0;overflow-x:hidden}.shell{max-width:1120px;margin:0 auto;padding:28px 20px 48px;position:relative}.bg-glow{filter:blur(40px);pointer-events:none;z-index:-1;background:radial-gradient(40% 60% at 20% 30%,#9945ff47,#0000 70%),radial-gradient(35% 50% at 80% 20%,#14f1952e,#0000 70%);height:70vh;animation:14s ease-in-out infinite alternate drift;position:fixed;inset:-20% -10% auto}@keyframes drift{to{transform:translateY(4%)scale(1.05)}}.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.top-right{align-items:center;gap:10px;display:flex}.brand{align-items:center;gap:14px;display:flex}.brand-mark{background:var(--grad);color:#07060d;border-radius:16px;place-items:center;width:56px;height:56px;font-size:1.1rem;font-weight:800;display:grid;box-shadow:0 10px 40px -10px #9945ffcc}h1{font-family:var(--display);letter-spacing:-.02em;background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(1.8rem,1.2rem + 2vw,2.6rem);line-height:1}.tagline{color:var(--muted);margin:6px 0 0;font-size:.9rem}.pill{border:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;align-items:center;gap:10px;padding:10px 16px;display:flex}.pill strong{font-family:var(--display);display:block}.pill-sub{font-family:var(--mono);color:var(--muted);font-size:.72rem}.pill-fallback{color:var(--amber);margin-top:2px;font-size:.68rem;font-weight:700;display:block}.slot-now{color:var(--text);animation:tick .8s var(--ease);display:inline-block}.pill-dot{background:var(--muted);border-radius:50%;flex:none;width:10px;height:10px}.pill-ok{border-color:#14f19566;box-shadow:0 0 30px -8px #14f19599}.pill-ok .pill-dot{background:var(--sol-green);animation:1.8s infinite ping}.pill-warn .pill-dot{background:var(--amber)}.pill-ng{border-color:#ff5d6c80}.pill-ng .pill-dot{background:var(--red)}@keyframes ping{0%{box-shadow:0 0 #14f195b3}70%,to{box-shadow:0 0 0 10px #14f19500}}.lang-btn{border:1px solid var(--line);background:var(--surface);height:44px;color:var(--text);font-family:var(--mono);cursor:pointer;transition:border-color .2s, transform .15s var(--ease);border-radius:999px;padding:0 14px;font-size:.8rem;font-weight:700}.lang-btn:hover{border-color:var(--sol-purple);transform:translateY(-1px)}.icon-btn{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--muted);cursor:pointer;transition:transform .3s var(--ease), color .2s;border-radius:50%;font-size:1.1rem}.icon-btn:hover,.icon-btn[aria-expanded=true]{color:var(--text);transform:rotate(60deg)}.settings{border:1px solid var(--line);background:var(--surface);animation:rise .35s var(--ease);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:12px 16px;display:flex}.settings-actions{flex-wrap:wrap;align-items:center;gap:6px 16px;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(-6px)}}.card{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);min-width:0;padding:20px;position:relative}h2{font-family:var(--mono);letter-spacing:.16em;color:var(--muted);margin:0 0 12px;font-size:.72rem;font-weight:700}input{border:1px solid var(--line);width:100%;min-width:0;color:var(--text);font:inherit;background:#00000059;border-radius:12px;flex:240px;padding:12px 14px;transition:border-color .2s,box-shadow .2s}input:focus{border-color:#9945ffb3;outline:none;box-shadow:0 0 0 3px #9945ff40}.link-btn{color:var(--sol-cyan);font:inherit;cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:.85rem}.link-btn:hover:not(:disabled){text-decoration:underline}.link-btn:disabled{color:var(--muted);cursor:progress}button:focus-visible,a:focus-visible{outline:2px solid var(--sol-cyan);outline-offset:3px}.stage-card{margin-bottom:16px;padding:28px 20px 22px;overflow:hidden}.stage{grid-template-columns:repeat(3,minmax(0,1fr));place-items:center;min-height:250px;display:grid;position:relative}.rail{background:#ffffff12;border-radius:4px;height:4px;margin-top:-2px;position:absolute;top:50%;overflow:hidden}.rail-left{left:16.67%;right:50%}.rail-right{left:50%;right:16.67%}.rail:after{content:"";background:repeating-linear-gradient(90deg, var(--sol-green) 0 14px, transparent 14px 28px);opacity:0;transition:opacity .3s;position:absolute;inset:0}.rail.active:after{opacity:.9;animation:.45s linear infinite flow}.rail.reverse:after{background:repeating-linear-gradient(90deg, var(--sol-cyan) 0 14px, transparent 14px 28px);animation-direction:reverse}@keyframes flow{to{background-position:28px 0}}.coin{z-index:3;background:radial-gradient(circle at 30% 30%, #b9ffe2, var(--sol-green) 45%, #0b8f5a);color:#053;width:38px;height:38px;top:50%;left:var(--from);opacity:0;animation:travel var(--travel) var(--ease) forwards;border-radius:50%;place-items:center;margin:-19px 0 0 -19px;font-weight:800;display:grid;position:absolute;box-shadow:0 0 24px #14f195cc}@keyframes travel{0%{left:var(--from);opacity:0;transform:scale(.5)}12%{opacity:1;transform:scale(1)}78%{left:var(--to);opacity:1;transform:scale(1)}to{left:var(--to);opacity:0;transform:scale(2.2)}}.coin-cyan{background:radial-gradient(circle at 30% 30%, #c9f6ff, var(--sol-cyan) 45%, #00729a);box-shadow:0 0 24px #00d1ffcc}@keyframes spin{to{transform:rotate(360deg)}}.node{z-index:2;border:1px solid var(--line);background:var(--surface-hi);width:min(170px,100%);min-width:0;transition:all .6s var(--ease);border-radius:18px;justify-items:center;gap:2px;padding:14px 10px;display:grid;position:relative}.node-role{color:var(--muted);font-size:.75rem}.node-balance{font-family:var(--mono);animation:tick .9s var(--ease);align-items:baseline;gap:4px;font-size:clamp(.95rem,.8rem + .8vw,1.3rem);font-weight:700;display:flex}.node-balance small{color:var(--muted);font-size:.65rem}.node-addr{font-family:var(--mono);color:var(--muted);font-size:.7rem;text-decoration:none}a.node-addr:hover{color:var(--sol-cyan)}.node.glow{border-color:#14f195b3;transform:translateY(-4px)scale(1.04);box-shadow:0 0 50px -8px #14f195e6}.node-payer.glow{border-color:#00d1ffb3;box-shadow:0 0 50px -8px #00d1ffe6}@keyframes tick{0%{color:var(--sol-green);text-shadow:0 0 18px #14f195e6;transform:translateY(-3px)}}.vault{z-index:2;aspect-ratio:1;place-items:center;width:min(200px,100%);display:grid;position:relative}.gate{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.gate-track{fill:#0a0914e6;stroke:#ffffff12;stroke-width:10px}.gate-scan{fill:none;stroke:var(--sol-purple);stroke-width:10px;stroke-linecap:round;transform-origin:70px 70px;filter:drop-shadow(0 0 6px var(--sol-purple));animation:.9s linear infinite spin}.gate-fill{fill:none;stroke:url(#gate-grad);stroke-width:10px;stroke-linecap:round;stroke-dashoffset:var(--circ);animation:fill 1s var(--ease) forwards}.vault.stop .gate-fill{stroke:var(--amber)}@keyframes fill{to{stroke-dashoffset:var(--dash-to)}}.gate-tick{stroke:var(--text);stroke-width:2px;opacity:.55}.vault-core{text-align:center;justify-items:center;gap:1px;display:grid;position:relative}.vault-label{color:var(--muted);font-size:.7rem}.vault-amount{font-family:var(--display);animation:tick .9s var(--ease);font-size:clamp(1.2rem,.9rem + 1.2vw,1.7rem);font-weight:700}.vault-judge{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.vault.pass .vault-judge{color:var(--sol-green)}.vault.stop .vault-judge{color:var(--amber)}.vault-lock{font-size:1.3rem;animation:.4s cubic-bezier(.2,1.6,.4,1) drop;position:absolute;top:-30px}@keyframes drop{0%{opacity:0;transform:translateY(-14px)scale(1.6)}}.phase-judging .vault{animation:.9s ease-in-out infinite hum}@keyframes hum{50%{filter:drop-shadow(0 0 22px #9945ffb3)}}.source{white-space:nowrap;border:1px solid var(--line);font-family:var(--mono);color:var(--muted);background:#0006;border-radius:999px;padding:2px 10px;font-size:.65rem;position:absolute;bottom:-26px}.source-jev{color:var(--sol-green);border-color:#14f19580}.stage-stamp{z-index:4;border:3px solid var(--amber);color:var(--amber);font-family:var(--display);letter-spacing:.14em;background:#07060dbf;border-radius:10px;padding:6px 18px;font-size:clamp(1.4rem,1rem + 2vw,2.2rem);font-weight:700;animation:.45s cubic-bezier(.2,1.6,.4,1) stamp;position:absolute;top:8px;left:50%;transform:translate(-50%)rotate(-7deg);box-shadow:0 0 40px -10px #ffb547b3}@keyframes stamp{0%{opacity:0;transform:translate(-50%)rotate(-7deg)scale(2.4)}}.play-count{font-family:var(--display);color:var(--sol-green);animation:pop .5s var(--ease);font-size:1.3rem;font-weight:700}.warn-note{color:var(--amber);margin:4px 0 0;font-size:.75rem}.setup{text-align:center;gap:8px;max-width:520px;margin:28px auto 0;display:grid}.key-warning{color:var(--amber)}.setup-title{margin:0;font-weight:600}.controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:30px;display:flex}.play{background:var(--grad);color:#07060d;font:inherit;text-align:left;cursor:pointer;transition:transform .15s var(--ease), opacity .2s;border:none;border-radius:999px;align-items:center;gap:14px;padding:14px 26px 14px 16px;animation:2.4s ease-in-out infinite breathe;display:flex;box-shadow:0 14px 40px -12px #9945ffe6}.play strong{font-size:1.1rem;display:block}.play small{opacity:.8;font-size:.75rem;display:block}.play-icon{width:44px;height:44px;color:var(--sol-green);background:#07060d;border-radius:50%;place-items:center;font-size:1rem;display:grid}.play.is-running .play-icon{border:3px solid var(--sol-green);border-right-color:#0000;animation:.8s linear infinite spin}.play:hover:not(:disabled){transform:translateY(-2px)scale(1.02)}.play:active:not(:disabled){transform:scale(.98)}.play:disabled{cursor:progress;opacity:.85;animation:none}@keyframes breathe{50%{box-shadow:0 14px 50px -6px #14f195bf}}.chips{gap:6px;display:flex}.chip-btn{border:1px solid var(--line);color:var(--muted);font-family:var(--mono);cursor:pointer;background:0 0;border-radius:999px;padding:8px 14px;font-size:.8rem;transition:all .2s}.chip-btn:hover:not(:disabled){color:var(--text);border-color:var(--sol-purple);background:#9945ff26}.chip-btn:disabled{opacity:.35;cursor:progress}.bottom{grid-template-columns:1.1fr 1fr;gap:16px;display:grid}.card-result{overflow:hidden}.result{text-align:center;align-content:center;justify-items:center;gap:6px;min-height:230px;display:grid;position:relative}.result-kicker{font-family:var(--mono);letter-spacing:.1em;color:var(--muted);font-size:.75rem}.result-hero{align-items:baseline;gap:6px;display:flex}.result-number{font-family:var(--display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(3.6rem,2.6rem + 5vw,6rem);font-weight:700;line-height:1}.result-win .result-number{filter:drop-shadow(0 0 30px #14f19573);animation:pop .6s var(--ease)}@keyframes pop{0%{opacity:0;transform:scale(.6)}}.result-number.ghost{color:#ffffff14;background:0 0}.result-number.live{color:var(--text);background:0 0}.result-number.zero{color:var(--amber);animation:pop .5s var(--ease);background:0 0}.result-unit{font-family:var(--mono);color:var(--muted)}.pulse-bar{background:var(--grad);background-size:200% 100%;border-radius:4px;width:70%;height:4px;animation:.8s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.speedup{margin:4px 0 8px;font-size:1.05rem}.speedup strong{color:var(--sol-green);font-family:var(--display);font-size:1.4rem}.race{gap:8px;width:100%;margin-bottom:4px;display:grid}.race-row{grid-template-columns:84px 1fr 64px;align-items:center;gap:8px;font-size:.78rem;display:grid}.race-label{text-align:left;color:var(--muted)}.race-value{text-align:right;font-family:var(--mono)}.race-track{background:#ffffff0d;border-radius:10px;height:10px;overflow:hidden}.race-bar{width:0;height:100%;animation:grow .5s var(--ease) forwards;border-radius:10px}.race-ours{background:var(--sol-green);box-shadow:0 0 12px var(--sol-green)}.race-theirs{background:#ffffff40;animation-duration:2.4s;animation-timing-function:linear}@keyframes grow{to{width:var(--w)}}.stopped-text{margin:4px 0 0;font-weight:600}.result-error .result-kicker{color:var(--red)}.history{border-top:1px dashed var(--line);margin-top:14px;padding-top:14px}.history-head{flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin-bottom:8px;display:flex}.history-title{font-family:var(--mono);letter-spacing:.14em;color:var(--muted);font-size:.72rem}.history-median{color:var(--muted);font-size:.85rem}.history-median strong{font-family:var(--mono);color:var(--sol-green)}.history-badge{color:var(--sol-green);animation:pop .5s var(--ease);background:#14f19526;border-radius:999px;padding:2px 10px;font-size:.72rem;font-weight:700}.history-chart{height:84px;position:relative}.history-chart svg{width:100%;height:64px;position:absolute;inset:0 0 20px}.history-1s{stroke:#ffffff2e;stroke-dasharray:2 2;stroke-width:.6px;vector-effect:non-scaling-stroke}.history-med{stroke:var(--sol-green);stroke-dasharray:4 3;stroke-width:1px;vector-effect:non-scaling-stroke}.history-bars{grid-template-columns:repeat(5,1fr);gap:10px;display:grid;position:absolute;inset:0}.history-slot{flex-direction:column;justify-content:flex-end;align-items:center;height:64px;display:flex;position:relative}.history-bar{transform-origin:bottom;width:70%;min-height:3px;animation:rise-bar .6s var(--ease);border-radius:6px 6px 2px 2px}.history-bar.fast{background:linear-gradient(180deg, var(--sol-green), #14f19559)}.history-bar.slow{background:linear-gradient(180deg, var(--amber), #ffb54759)}.history-bar.latest{box-shadow:0 0 16px #14f195b3}@keyframes rise-bar{0%{transform:scaleY(0)}}.history-ms{font-family:var(--mono);color:var(--muted);font-size:.68rem;position:absolute;bottom:-18px}.timeline{gap:2px;margin:0;padding:0;list-style:none;display:grid}.tl{border-bottom:1px dashed var(--line);animation:slide .45s var(--ease);grid-template-columns:14px 1fr auto auto;align-items:center;gap:4px 10px;padding:8px 0 8px 2px;display:grid;position:relative}@keyframes slide{0%{opacity:0;transform:translate(-12px)}}.tl-dot{background:var(--muted);border-radius:50%;width:10px;height:10px}.tl-ok .tl-dot{background:var(--sol-green);box-shadow:0 0 10px var(--sol-green)}.tl-warn .tl-dot{background:var(--amber)}.tl-error .tl-dot{background:var(--red)}.tl-label{font-size:.88rem;font-weight:600}.tl-detail{color:var(--muted);font-size:.75rem;font-family:var(--mono);overflow-wrap:anywhere;grid-area:2/2/auto/-1}.tl-ms{font-family:var(--mono);color:var(--sol-green);font-weight:700}.tl-link{font-family:var(--mono);color:var(--sol-cyan);font-size:.75rem;text-decoration:none}.tl-link:hover{text-decoration:underline}.timeline-empty{color:var(--muted);margin:0;font-size:.85rem}.hud{background:linear-gradient(90deg,#9945ff24,#14f19514);border:1px solid #9945ff59;border-radius:16px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:16px;margin-bottom:14px;padding:12px 18px;display:grid}.hud-level{background:var(--grad);color:#07060d;border-radius:14px;place-items:center;width:54px;height:54px;line-height:1;animation:.6s cubic-bezier(.34,1.56,.64,1) bounce-in;display:grid;box-shadow:0 0 24px -6px #9945ffe6}.hud-level-label{font-family:var(--mono);font-size:.6rem;font-weight:700}.hud-level-num{font-family:var(--display);font-size:1.5rem;font-weight:700}.hud-xp-head{font-family:var(--mono);color:var(--muted);align-items:baseline;gap:10px;margin-bottom:6px;font-size:.72rem;display:flex;position:relative}.hud-score{font-family:var(--display);color:var(--text);font-variant-numeric:tabular-nums;font-size:1.35rem}.hud-gain{font-family:var(--display);color:var(--sol-green);text-shadow:0 0 12px #14f195cc;font-weight:700;animation:1.4s ease-out forwards float-up}@keyframes float-up{0%{opacity:0;transform:translateY(6px)scale(.8)}20%{opacity:1;transform:translateY(0)scale(1.15)}to{opacity:0;transform:translateY(-22px)scale(1)}}.hud-bar{background:#ffffff0f;border-radius:10px;height:10px;overflow:hidden}.hud-bar-fill{background:var(--grad);transform-origin:0;height:100%;transition:transform .9s cubic-bezier(.34,1.56,.64,1);box-shadow:0 0 14px #14f195b3}.hud-combo,.hud-best{justify-items:center;min-width:64px;display:grid}.hud-combo-label{font-family:var(--mono);letter-spacing:.14em;color:var(--muted);font-size:.62rem}.hud-combo-num,.hud-best-num{font-family:var(--display);font-size:1.3rem;font-weight:700}.hud-combo{animation:.5s cubic-bezier(.34,1.56,.64,1) bounce-in}.hud-combo.hot .hud-combo-num{color:#ff9f43;text-shadow:0 0 16px #ff7828e6;animation:.6s ease-in-out infinite alternate flicker}@keyframes flicker{to{text-shadow:0 0 28px #ffb43c;transform:scale(1.08)}}@keyframes bounce-in{0%{transform:scale(.4)}}.grade-stamp{font-family:var(--display);border:3px solid;border-radius:12px;align-self:center;justify-items:center;margin-left:10px;padding:4px 12px;font-size:2.4rem;font-weight:700;line-height:1;animation:.5s cubic-bezier(.2,1.8,.4,1) .6s both stamp-in;display:grid;transform:rotate(-10deg)}.grade-stamp small{font-family:var(--mono);letter-spacing:.2em;font-size:.55rem}.grade-S{color:#ffd166;text-shadow:0 0 18px #ffd166e6;box-shadow:0 0 30px -6px #ffd166e6}.grade-A{color:var(--sol-green)}.grade-B{color:var(--sol-cyan)}.grade-C{color:var(--muted)}@keyframes stamp-in{0%{opacity:0;transform:rotate(-10deg)scale(3)}}.levelup{z-index:20;border-radius:var(--radius);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:none;background:radial-gradient(circle,#9945ff73,#0000 60%),#07060db8;place-content:center;justify-items:center;gap:4px;animation:1.8s ease-out forwards levelup-fade;display:grid;position:absolute;inset:0}.levelup span{font-family:var(--display);letter-spacing:.08em;background:linear-gradient(90deg,#ffd166,#fff3c4,#14f195);color:#0000;filter:drop-shadow(0 0 20px #ffd166b3);-webkit-background-clip:text;background-clip:text;font-size:clamp(2rem,1.4rem + 4vw,3.8rem);font-weight:700;animation:.6s cubic-bezier(.34,1.56,.64,1) bounce-in}.levelup strong{font-family:var(--mono);color:var(--text);font-size:1.1rem}@keyframes levelup-fade{0%,70%{opacity:1}to{opacity:0}}.shake-host[data-shake=true]{animation:.45s cubic-bezier(.36,.07,.19,.97) shake}@keyframes shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-7px)}40%,60%{transform:translate(7px)}}.toasts{z-index:70;gap:8px;width:min(340px,100vw - 32px);display:grid;position:fixed;bottom:16px;right:16px}.toast{border:1px solid var(--line);background:#141222f2;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;animation:.5s cubic-bezier(.34,1.56,.64,1) toast-in,.4s ease-in 3.4s forwards toast-out;display:flex;box-shadow:0 12px 40px -12px #000c}.toast-gold{border-color:#ffd16699;box-shadow:0 0 30px -10px #ffd166cc}.toast-purple{border-color:#9945ff99}.toast-icon{background:#ffffff0f;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;font-size:1.3rem;display:grid}.toast strong{font-size:.92rem;display:block}.toast span{color:var(--muted);font-size:.78rem}@keyframes toast-in{0%{opacity:0;transform:translate(40px)scale(.9)}}@keyframes toast-out{to{opacity:0;transform:translate(40px)}}code{font-family:var(--mono);font-size:.82rem}.hint{color:var(--muted);margin:0;font-size:.8rem}.error{color:var(--red);margin:0;font-size:.85rem}.foot{text-align:center;color:var(--muted);margin-top:24px;font-size:.78rem}@media (width<=760px){.shell{padding:20px 14px 40px}.bottom{grid-template-columns:1fr}.hud{grid-template-columns:auto 1fr;gap:10px 12px}.hud-combo,.hud-best{justify-items:start}.stage{min-height:210px}.stage-card{padding:24px 10px 20px}.stage{column-gap:6px}.node{border-radius:14px;padding:10px 4px}.node.glow{transform:none}.node-balance{font-size:.9rem}.vault-amount{font-size:1.05rem}.vault-label,.vault-judge{font-size:.6rem}.coin{width:30px;height:30px;margin:-15px 0 0 -15px;font-size:.8rem}.source{text-overflow:ellipsis;max-width:92vw;font-size:.58rem;overflow:hidden}.play{justify-content:center;width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.setup-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.setup-actions .wallet-adapter-button,.trial-btn{height:48px;font-family:var(--display);border-radius:12px;padding:0 22px;font-size:.95rem;font-weight:600}.setup-actions .wallet-adapter-button{background:var(--grad);color:#07060d}.trial-btn{border:1px solid var(--line);background:var(--surface-hi);color:var(--text);cursor:pointer}.trial-btn:disabled{color:var(--muted);cursor:progress}.paste-key{text-align:left;margin-top:8px}.paste-key summary{color:var(--muted);cursor:pointer;font-size:.85rem}.paste-key input{width:100%;margin-top:8px}.fund-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.progress-track{align-items:center;gap:14px;margin-bottom:14px;display:flex}.steps{flex:1;grid-template-columns:repeat(4,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.step{color:var(--muted);grid-template-columns:auto 1fr;align-items:baseline;gap:2px 8px;font-size:.8rem;display:grid}.step-no{font-family:var(--mono);font-size:.72rem}.step-bar{background:var(--line);transform-origin:0;border-radius:2px;grid-column:1/-1;height:3px}.step-active,.step-done{color:var(--text)}.step-active .step-no,.step-done .step-no{color:var(--sol-green)}.step-done .step-bar{background:var(--sol-green)}.step-active .step-bar{background:linear-gradient(90deg, var(--sol-green), var(--sol-cyan), var(--sol-green));background-size:200% 100%;animation:1.2s linear infinite step-flow}.step-stopped .step-bar{background:var(--amber)}.step-stopped,.step-stopped .step-no{color:var(--amber)}.step-error .step-bar{background:var(--red)}.step-error,.step-error .step-no{color:var(--red)}@keyframes step-flow{to{background-position:-200% 0}}.status-pill{--glow:var(--muted);border:1px solid color-mix(in srgb, var(--glow) 55%, transparent);background:var(--surface-hi);box-shadow:0 0 18px color-mix(in srgb, var(--glow) 35%, transparent);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:.8rem;display:inline-flex}.status-dot{background:var(--glow);border-radius:50%;width:8px;height:8px}.status-depositing,.status-finalizing{--glow:var(--sol-cyan)}.status-judging{--glow:var(--sol-purple)}.status-finalized{--glow:var(--sol-green)}.status-stopped{--glow:var(--amber)}.status-error{--glow:var(--red)}.status-depositing .status-dot,.status-judging .status-dot,.status-finalizing .status-dot{animation:.9s ease-in-out infinite alternate dot-pulse}@keyframes dot-pulse{0%{opacity:.35;transform:scale(.8)}to{opacity:1;transform:scale(1.15)}}.play-steps{gap:4px;display:inline-flex}.play-step{background:var(--line);width:8px;height:8px;transition:transform .3s var(--ease), background .3s;border-radius:50%}.play-step-done{background:var(--sol-green)}.play-step-active{background:var(--sol-cyan);transform:scale(1.4)}.play-step-stopped{background:var(--amber)}.play-step-error{background:var(--red)}.judge-panel{border-top:1px solid var(--line);gap:14px;margin-top:18px;padding-top:16px;display:grid}.judge-flow{grid-template-columns:minmax(0,1.6fr) 40px minmax(0,.8fr) 40px minmax(0,1fr);align-items:center;margin:0;padding:0;list-style:none;display:grid}.flow-node{border:1px solid var(--line);background:var(--surface-hi);border-radius:12px;gap:2px;min-width:0;padding:8px 12px;display:grid}.flow-node small{color:var(--muted);font-size:.68rem}.flow-node span{font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.flow-judge{border-color:color-mix(in srgb, var(--sol-purple) 60%, transparent)}.flow-judge.source-mock{border-color:color-mix(in srgb, var(--amber) 60%, transparent)}.flow-result.pass{border-color:var(--sol-green);box-shadow:0 0 16px color-mix(in srgb, var(--sol-green) 30%, transparent)}.flow-result.stop{border-color:var(--amber)}.flow-link{background:var(--line);height:2px;margin:0 4px;position:relative;overflow:hidden}.flow-link:after{content:"";background:var(--grad);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.judge-judging .flow-link:first-of-type:after{animation:link-grow .6s var(--ease) forwards}.judge-judging .flow-link-2:after{animation:1s linear infinite link-scan}.judge-done .flow-link:after{animation:link-grow .6s var(--ease) both}.judge-done .flow-link-2:after{animation-delay:.25s}@keyframes link-grow{to{transform:scaleX(1)}}@keyframes link-scan{0%{transform:scaleX(.2)translate(-100%)}to{transform:scaleX(.2)translate(500%)}}.judge-compare{grid-template-columns:1fr 1fr auto;align-items:stretch;gap:12px;display:grid}.compare-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-content:start;gap:8px;padding:12px 14px;display:grid}.compare-label{font-size:.78rem;font-weight:600}.compare-meta{color:var(--muted);font-size:.7rem}.llm-prose{max-height:5.6em;color:var(--muted);margin:0;font-size:.74rem;line-height:1.4;overflow:hidden;-webkit-mask-image:linear-gradient(#000 55%,#0000);mask-image:linear-gradient(#000 55%,#0000)}.compare-typed.pass{border-color:color-mix(in srgb, var(--sol-green) 60%, transparent)}.compare-typed.stop{border-color:color-mix(in srgb, var(--amber) 60%, transparent)}.typed-answer{font-family:var(--mono);animation:typed-in .45s var(--ease) both;margin:0;font-size:1rem;line-height:1.5}.typed-answer .k{color:var(--sol-cyan)}.typed-answer .v{color:var(--sol-green)}.compare-typed.stop .typed-answer .v{color:var(--amber)}.typed-waiting{color:var(--muted);margin:0;font-size:.8rem}@keyframes typed-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.meter{justify-items:center;gap:6px;width:76px;display:grid}.meter-label,.meter-value{font-size:.72rem}.meter-value{font-family:var(--mono)}.meter-tube{border:1px solid var(--line);background:var(--surface-hi);border-radius:10px;width:18px;height:108px;position:relative;overflow:visible}.meter-fill{height:calc(var(--p) - 4px);background:linear-gradient(to top, var(--sol-purple), var(--sol-cyan));transform-origin:bottom;min-height:0;animation:meter-rise .8s var(--ease) both;border-radius:8px;position:absolute;inset:auto 2px 2px}.meter.pass .meter-fill{background:linear-gradient(to top, var(--sol-cyan), var(--sol-green))}.meter.stop .meter-fill{background:linear-gradient(to top, var(--sol-purple), var(--amber))}@keyframes meter-rise{0%{transform:scaleY(0)}}.meter-threshold{left:-6px;right:-6px;bottom:var(--t);border-top:2px dashed var(--amber);position:absolute}.meter-threshold span{color:var(--amber);white-space:nowrap;margin-left:4px;font-size:.62rem;position:absolute;top:-.7em;left:100%}.shard{fill:none;stroke:color-mix(in srgb, var(--sol-cyan) 55%, transparent);stroke-width:3px;stroke-linecap:round;transition:transform .5s var(--ease), opacity .5s;transition-delay:calc(var(--i) * 45ms)}.shard.threshold{stroke:var(--amber)}.shard.broken{opacity:0;transform:translate(var(--dx), var(--dy))}.measure{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:8px;margin-top:12px;padding:12px 14px;display:grid}.measure-head{justify-content:space-between;font-size:.78rem;font-weight:600;display:flex}.measure-head small{color:var(--muted);font-weight:400}.measure-body{grid-template-columns:auto 1fr;align-items:center;gap:14px;display:grid}.measure-log{gap:2px;margin:0;padding:0;font-size:.74rem;list-style:none;display:grid}.measure-log li{animation:typed-in .4s var(--ease) both;animation-delay:calc(var(--i) * .16s);gap:10px;display:flex}.measure-log code{white-space:pre;color:var(--sol-cyan)}.log-finalized code{color:var(--sol-green)}.measure-chart{width:100%;height:48px;overflow:visible}.stair{fill:none;stroke:var(--sol-green);stroke-width:2px;stroke-dasharray:1;stroke-dashoffset:1px;vector-effect:non-scaling-stroke;animation:draw .9s var(--ease) .2s forwards}@keyframes draw{to{stroke-dashoffset:0}}.measure-bar{background:var(--surface-hi);border-radius:6px;height:12px;position:relative}.seg{top:2px;bottom:2px;left:var(--from);width:calc(var(--to) - var(--from));transform-origin:0;animation:seg-in .6s var(--ease) both;border-radius:4px;position:absolute}.seg-processed{background:var(--sol-cyan)}.seg-finalized{background:var(--sol-green);animation-delay:.3s}@keyframes seg-in{0%{transform:scaleX(0)}}.tick{background:var(--line);width:1px;height:4px;position:absolute;bottom:-5px}.tick.major{background:var(--muted);height:7px}.slot-pulse{width:120px;height:22px}.slot-pulse path{fill:none;stroke:var(--sol-green);stroke-width:1.5px;stroke-linejoin:round}.result-win{position:relative}.rise{z-index:0;opacity:.35;pointer-events:none;width:40%;height:56px;position:absolute;inset:36px 16px auto auto}.result-win .result-hero{z-index:1;position:relative}.rise path{fill:none;stroke:var(--sol-green);stroke-width:2px;stroke-dasharray:1;stroke-dashoffset:1px;vector-effect:non-scaling-stroke;animation:draw .9s var(--ease) forwards}.rise circle{fill:var(--sol-green);opacity:0;animation:.2s .85s forwards fade-in}@keyframes fade-in{to{opacity:1}}.badge-overlay{z-index:60;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.badge{border:1px solid color-mix(in srgb, var(--amber) 70%, transparent);background:radial-gradient(circle at 30% 20%, color-mix(in srgb, var(--amber) 28%, transparent), transparent 60%), var(--surface-hi);min-width:240px;box-shadow:0 24px 60px #00000080, 0 0 40px color-mix(in srgb, var(--amber) 35%, transparent);pointer-events:auto;animation:badge-in 2.8s var(--ease) both;border-radius:24px;justify-items:center;gap:6px;padding:26px 32px;transition:transform .12s ease-out;display:grid}.badge-icon{font-size:2.6rem}.badge-kicker{color:var(--amber);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.badge-title{font-family:var(--display);font-size:1.3rem}.badge-body{color:var(--muted);font-size:.82rem}@keyframes badge-in{0%{opacity:0;scale:.6}12%{opacity:1;scale:1.04}18%{scale:1}85%{opacity:1}to{opacity:0}}.gold-particle{background:var(--amber);width:7px;height:7px;box-shadow:0 0 8px var(--amber);opacity:0;border-radius:50%;animation:1.2s ease-out both particle-out;position:absolute}@keyframes particle-out{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(var(--x), var(--y)) scale(.3)}}@media (width<=720px){.progress-track{flex-direction:column;align-items:stretch}.judge-flow{grid-template-columns:1fr;gap:6px}.flow-link{display:none}.judge-compare{grid-template-columns:1fr}.slot-pulse{display:none}}
