:root{color:#eef5ef;font-synthesis:none;--acid:#b7ff55;--aqua:#57f4d2;--violet:#8069ff;--danger:#ff5b86;--muted:#e4f0e78a;--line:#e4f0e729;--footer-edge-bottom:max(28px, env(safe-area-inset-bottom));background:#070909;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html,body{width:100%;min-width:320px;min-height:100%;margin:0;overflow:hidden}body,body *{cursor:default;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body{min-height:100vh;background:#070909;min-height:100dvh}button,a{cursor:pointer;font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}#field-canvas,.fallback-field,.grain{width:100%;height:100%;position:fixed;inset:0}#field-canvas{z-index:0;touch-action:none;display:block}.fallback-field{z-index:-1;background:radial-gradient(circle at 72% 44%,#8069ff57,#0000 28%),radial-gradient(circle at 42% 58%,#57f4d233,#0000 32%),linear-gradient(145deg,#070909 0%,#0b1010 52%,#070909 100%)}.grain{z-index:1;pointer-events:none;opacity:.2;mix-blend-mode:screen;background:repeating-linear-gradient(0deg,#0000 0 2px,#eef5ef05 3px),repeating-linear-gradient(90deg,#0000 0 3px,#57f4d203 4px)}.page-shell{z-index:2;width:100%;min-height:100vh;min-height:100dvh;padding:max(26px, env(safe-area-inset-top)) max(30px, env(safe-area-inset-right)) var(--footer-edge-bottom) max(30px, env(safe-area-inset-left));grid-template-rows:auto 1fr auto;transition:opacity .32s,transform .52s cubic-bezier(.2,.75,.2,1);display:grid;position:relative}.topbar,.footer{justify-content:space-between;align-items:center;gap:24px;display:flex}.wordmark{letter-spacing:.03em;white-space:nowrap;align-items:center;padding:8px 0;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:clamp(.68rem,1.05vw,.82rem);font-weight:700;display:inline-flex}.wordmark__keyword{color:var(--acid)}.wordmark__space{flex:0 0 .62em}.wordmark__operator{color:#eef5efb8}.wordmark__function{color:#aa9cff}.wordmark__string{color:var(--aqua)}.wordmark__punct{color:#eef5ef70}.signal{color:#eef5efb8;letter-spacing:.12em;align-items:center;gap:9px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.64rem;display:flex}.signal__dot,.game-hud__pulse{background:var(--acid);border-radius:50%;width:6px;height:6px;animation:2.2s ease-in-out infinite signal-pulse;box-shadow:0 0 0 4px #b7ff5517,0 0 18px #b7ff55e6}.hero{align-self:center;margin-top:2vh}h1{letter-spacing:-.09em;white-space:nowrap;text-shadow:0 0 64px #eef5ef17;max-width:100%;margin:0;font-family:SFMono-Regular,Cascadia Code,Consolas,monospace;font-size:clamp(2.5rem,6.55vw,7.3rem);font-weight:500;line-height:.84}.hero__assert{color:#d4dad6;font-kerning:none;font-variant-ligatures:none;letter-spacing:-.045em;text-shadow:none;font-weight:400}.hero__punct{color:#747b76}.hero__ok{color:#a6e653;text-shadow:0 0 28px #b7ff5521}.hero__string{color:var(--aqua);text-shadow:0 0 34px #57f4d22e}.typewriter-quote{color:#4fd6ba}.typewriter-cursor{background:var(--acid);width:.055em;height:.72em;margin:0 .04em -.035em .055em;animation:.82s step-end infinite typewriter-caret;display:inline-block;box-shadow:0 0 18px #b7ff558c}.intro{color:#eef5efad;letter-spacing:.12em;margin:clamp(22px,4vh,48px) 0 0;font-size:clamp(.82rem,1.3vw,1rem)}.footer{justify-content:space-between;align-items:flex-end}.links{align-items:center;gap:clamp(18px,3vw,42px);display:flex}.links a{letter-spacing:.12em;grid-template-columns:auto auto;align-items:baseline;gap:7px;padding:10px 0;font-size:clamp(.7rem,.9vw,.78rem);font-weight:700;display:grid;position:relative}.links a:after{content:"";background:var(--acid);transform-origin:100%;height:1px;transition:transform .22s;position:absolute;bottom:5px;left:0;right:0;transform:scaleX(0)}.links a:hover:after,.links a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.links span{color:#eef5ef52;font-family:SFMono-Regular,Consolas,monospace;font-size:.54rem}.footer-meta{left:50%;bottom:var(--footer-edge-bottom);white-space:nowrap;justify-items:center;gap:7px;display:grid;position:absolute;transform:translate(-50%)}.field-hint{color:#eef5ef6b;letter-spacing:.12em;margin:0;font-family:SFMono-Regular,Consolas,monospace;font-size:clamp(.6rem,.75vw,.68rem);font-weight:500}.icp-link{color:#eef5ef80;letter-spacing:.05em;font-family:SFMono-Regular,Consolas,monospace;font-size:clamp(.66rem,.85vw,.74rem);transition:color .18s}.icp-link:hover,.icp-link:focus-visible{color:var(--acid);outline:none}.toast{border:1px solid var(--line);opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#070909c2;border-radius:2px;align-self:flex-end;justify-items:end;min-height:34px;margin:0;padding:6px 10px;font-family:SFMono-Regular,Consolas,monospace;transition:opacity .18s,transform .18s,border-color .18s,background-color .18s;display:grid;transform:translateY(6px)}.toast__label{color:var(--acid);letter-spacing:.16em;font-size:.46rem;font-weight:700;line-height:1}.toast__message{color:#eef5efbd;letter-spacing:.08em;white-space:nowrap;margin-top:3px;font-size:clamp(.56rem,.72vw,.62rem);font-weight:600;line-height:1}.toast[data-tone=discovery]{background:#070e0dd1;border-color:#57f4d247}.toast[data-tone=discovery] .toast__label{color:var(--aqua)}.toast[data-tone=error]{border-color:#ff5b8657}.toast[data-tone=error] .toast__label{color:var(--danger)}.toast.is-visible{opacity:1;transform:translateY(0)}.game-shell{z-index:20;opacity:0;pointer-events:none;transition:opacity .32s,transform .52s cubic-bezier(.2,.75,.2,1);position:fixed;inset:0;overflow:hidden;transform:scale(1.015)}.game-shell[hidden]{display:none}.game-shell.is-active{opacity:1;pointer-events:auto;transform:scale(1)}.game-open .page-shell{opacity:0;pointer-events:none;transform:scale(.985)}.game-shell:before{z-index:0;content:"";pointer-events:none;background:radial-gradient(circle,#0000 0 36%,#0709091a 72%),#0709090a;position:absolute;inset:0}#game-canvas{z-index:1;touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.site-pointer{z-index:100;opacity:0;pointer-events:none;will-change:transform, opacity;width:17px;height:21px;transition:opacity 90ms linear;position:fixed;top:0;left:0;transform:translate(-40px,-40px)}.site-pointer.is-visible{opacity:1}.site-pointer__glow,.site-pointer__glyph{pointer-events:none;display:block;position:absolute;top:0;left:0}.site-pointer__glow{filter:blur(5px);background:#57f4d233;border-radius:50%;width:19px;height:19px;transition:background-color .12s,transform .12s;transform:translate(-3px,-3px)}.site-pointer__glyph{clip-path:polygon(0 0,100% 42%,58% 54%,44% 100%,31% 93%,39% 54%,0 68%);filter:drop-shadow(0 0 1px #070909eb)drop-shadow(0 0 5px #b7ff556b);transform-origin:1px 1px;background:linear-gradient(145deg,#eef5ef 12%,#b7ff55 86%);width:16px;height:21px;transition:background .12s,transform .12s;transform:translate(0)}.site-pointer.is-interactive .site-pointer__glow{background:#b7ff554d;transform:translate(-4px,-4px)scale(1.18)}.site-pointer.is-interactive .site-pointer__glyph{background:linear-gradient(145deg,#57f4d2 10%,#b7ff55 90%);transform:translate(0)scale(.92)}.site-pointer.is-pressed .site-pointer__glow{transform:translate(-2px,-2px)scale(.84)}.site-pointer.is-pressed .site-pointer__glyph{transform:translate(0)scale(.78)}@media (hover:hover) and (pointer:fine){.has-custom-pointer,.has-custom-pointer *{cursor:none!important}}.game-hud{z-index:5;padding:max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) 18px max(18px, env(safe-area-inset-left));pointer-events:none;letter-spacing:.12em;grid-template-columns:auto 1fr auto;align-items:center;font-family:SFMono-Regular,Consolas,monospace;font-size:.62rem;display:grid;position:relative}.game-hud__brand,.game-hud__metrics{align-items:center;gap:10px;display:flex}.game-hud__brand{color:#eef5efbd;justify-self:start}.game-hud__metrics{color:#eef5ef5c;grid-template-columns:repeat(6,auto);justify-self:center;gap:clamp(10px,1.45vw,24px);display:grid}.game-hud__metrics span{white-space:nowrap;gap:7px;display:inline-flex}.game-hud__metrics strong{color:#eef5efc7;font-weight:600}.game-exit{border:1px solid var(--line);color:#eef5efc7;cursor:pointer;pointer-events:auto;letter-spacing:.12em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#07090957;border-radius:2px;justify-self:end;padding:9px 12px;font-family:inherit;font-size:.6rem}.game-exit span{color:#eef5ef52;margin-left:7px}.game-exit:hover,.game-exit:focus-visible{color:#071006;border-color:var(--acid);background:var(--acid);outline:none}.game-announcement{z-index:2;color:#eef5efb8;letter-spacing:.15em;text-align:center;white-space:nowrap;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0709098a;border:1px solid #eef5ef1f;margin:0;padding:9px 12px;font-family:SFMono-Regular,Consolas,monospace;font-size:clamp(.64rem,.85vw,.76rem);transition:opacity .18s,transform .24s;position:absolute;top:50%;left:50%;transform:translate(-50%,-42%)}.game-announcement.is-visible{opacity:1;transform:translate(-50%,-50%)}.game-menu{z-index:3;padding:max(82px, calc(env(safe-area-inset-top) + 72px)) max(24px, env(safe-area-inset-right)) max(72px, calc(env(safe-area-inset-bottom) + 62px)) max(24px, env(safe-area-inset-left));pointer-events:auto;scrollbar-width:thin;background:#07090961;place-items:center;display:grid;position:absolute;inset:0;overflow:auto}.game-menu[hidden]{display:none}.game-menu__panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(145deg,#0d1211f0,#070909e0),#070909e6;border:1px solid #e4f0e72e;border-radius:4px;width:min(1040px,100%);padding:clamp(22px,3vw,38px);font-family:SFMono-Regular,Consolas,monospace;box-shadow:0 30px 100px #00000057}.game-menu__kicker,.game-menu__description,.game-menu__meta{margin:0}.game-menu__kicker{color:var(--acid);letter-spacing:.18em;font-size:.58rem;font-weight:700}.game-menu__title{color:#eef5efeb;letter-spacing:-.04em;margin:10px 0 0;font-family:inherit;font-size:clamp(1.1rem,2.4vw,1.75rem);font-weight:600}.game-menu__description{color:#eef5ef80;letter-spacing:.04em;max-width:44rem;margin-top:10px;font-size:clamp(.62rem,.85vw,.72rem);line-height:1.65}.game-menu__options{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:clamp(18px,2.5vw,28px);display:grid}.game-card{color:#eef5efc2;text-align:left;background:#eef5ef06;border:1px solid #e4f0e721;border-radius:3px;align-content:start;min-width:0;padding:clamp(14px,1.7vw,20px);transition:border-color .15s,background-color .15s,transform .15s;display:grid}.game-card:hover:not(:disabled),.game-card:focus-visible,.game-card.is-selected{background:#b7ff550e;border-color:#b7ff55a3;outline:none;transform:translateY(-2px)}.game-card.is-selected{box-shadow:inset 0 2px #b7ff55c7}.game-card:disabled{cursor:not-allowed;opacity:.42}.game-card.is-purchased{opacity:.52;border-color:#57f4d238}.game-card__heading{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.game-card__name{color:#eef5eff0;letter-spacing:.08em;font-size:clamp(.72rem,1vw,.88rem)}.game-card__role,.game-card__cost{color:var(--aqua);letter-spacing:.1em;white-space:nowrap;font-size:.5rem;font-weight:700}.game-card__ability{color:var(--acid);letter-spacing:.14em;margin-top:18px;font-size:.55rem;font-weight:700}.game-card__description{color:#eef5ef80;min-height:3.5em;margin-top:8px;font-size:clamp(.56rem,.74vw,.64rem);line-height:1.55}.game-card__stats{border-top:1px solid #e4f0e71a;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 10px;margin:18px 0 0;padding-top:14px;display:grid}.game-card__stat{gap:3px;min-width:0;display:grid}.game-card__stat dt{color:#eef5ef4d;letter-spacing:.1em;font-size:.45rem}.game-card__stat dd{color:#eef5efc7;margin:0;font-size:.62rem}.game-card__stack{color:#eef5ef4d;letter-spacing:.12em;margin-top:24px;font-size:.48rem}.game-character-card{min-height:286px}.game-shop-card{min-height:150px}.game-menu__footer{border-top:1px solid #e4f0e71c;justify-content:space-between;align-items:center;gap:18px;margin-top:clamp(18px,2.5vw,28px);padding-top:18px;display:flex}.game-menu__meta{color:#eef5ef61;letter-spacing:.14em;font-size:.54rem}.game-menu__actions{gap:9px;display:flex}.game-menu__button{color:#eef5efb3;letter-spacing:.12em;background:#eef5ef09;border:1px solid #e4f0e72e;border-radius:2px;padding:10px 13px;font-family:inherit;font-size:.56rem;font-weight:700}.game-menu__button:hover:not(:disabled),.game-menu__button:focus-visible{border-color:var(--aqua);color:var(--aqua);outline:none}.game-menu__button--primary{border-color:var(--acid);color:#071006;background:var(--acid)}.game-menu__button--primary:hover:not(:disabled),.game-menu__button--primary:focus-visible{border-color:var(--aqua);color:#07100f;background:var(--aqua)}.game-menu__button:disabled{cursor:not-allowed;opacity:.35}.game-stats,.game-controls{z-index:2;bottom:max(20px, env(safe-area-inset-bottom));color:#eef5ef57;letter-spacing:.1em;white-space:nowrap;pointer-events:none;margin:0;font-family:SFMono-Regular,Consolas,monospace;font-size:clamp(.54rem,.66vw,.62rem);position:absolute}.game-stats{left:max(20px, env(safe-area-inset-left))}.game-controls{left:50%;transform:translate(-50%)}@keyframes signal-pulse{0%,to{opacity:.48;transform:scale(.9)}50%{opacity:1;transform:scale(1.12)}}@keyframes typewriter-caret{0%,50%,to{opacity:1}51%,99%{opacity:0}}@media (max-width:760px){:root{--footer-edge-bottom:max(20px, env(safe-area-inset-bottom))}.page-shell{padding:max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) var(--footer-edge-bottom) max(20px, env(safe-area-inset-left))}.hero{margin-top:-2vh}h1{letter-spacing:-.105em;font-size:clamp(1.25rem,6.2vw,3.25rem)}.footer-meta{gap:5px}.intro{max-width:18rem;line-height:1.8}.footer{align-items:flex-end}.links{gap:0;display:grid}.links a{padding:6px 0}.game-hud{grid-template-columns:1fr auto;align-items:start}.game-hud__metrics{grid-area:2/1/auto/-1;grid-template-columns:repeat(3,auto);justify-self:start;margin-top:14px;font-size:.56rem}.game-menu{padding-top:max(116px, calc(env(safe-area-inset-top) + 106px));align-items:start}.game-menu__options{grid-template-columns:1fr}.game-card__description,.game-character-card{min-height:0}.game-menu__footer{align-items:flex-start}.game-stats{bottom:max(46px, calc(env(safe-area-inset-bottom) + 40px));white-space:normal;text-align:center;width:calc(100% - 36px);left:50%;transform:translate(-50%)}.game-controls{white-space:normal;text-align:center;width:calc(100% - 40px)}}@media (max-width:420px){.topbar{gap:12px}.wordmark{letter-spacing:0;font-size:.58rem}.signal{font-size:.56rem}.game-hud__metrics{letter-spacing:.08em;gap:11px}.game-menu{padding-right:max(14px, env(safe-area-inset-right));padding-left:max(14px, env(safe-area-inset-left))}.game-menu__panel{padding:18px 14px}.game-card__stats{grid-template-columns:repeat(4,minmax(0,1fr))}.game-menu__footer{display:grid}.game-menu__actions{width:100%}.game-menu__button{flex:1}.game-exit span{display:none}.toast{padding-inline:7px}.toast__message{letter-spacing:.04em;font-size:.54rem}}@media (max-height:520px) and (orientation:landscape){:root{--footer-edge-bottom:max(16px, env(safe-area-inset-bottom))}.page-shell{padding-top:max(16px, env(safe-area-inset-top));padding-bottom:var(--footer-edge-bottom)}.hero{margin-top:0}h1{font-size:clamp(2rem,10vh,4.5rem)}.intro{margin-top:16px}.game-hud{padding-top:max(10px, env(safe-area-inset-top))}.game-menu{padding-top:max(58px, calc(env(safe-area-inset-top) + 50px));padding-bottom:max(42px, calc(env(safe-area-inset-bottom) + 34px));align-items:start}.game-menu__panel{padding-block:16px}.game-menu__options{margin-top:14px}.game-card{padding:12px}.game-card__ability,.game-card__stats,.game-card__stack{margin-top:10px}.game-menu__footer{margin-top:14px;padding-top:12px}.game-stats{bottom:max(34px, calc(env(safe-area-inset-bottom) + 28px))}.game-controls{bottom:max(10px, env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.grain{opacity:.08}.typewriter-cursor{display:none}}
