@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/press-start-2p-mn.woff2)format("woff2")}:root{--s-black:#1a1c2c;--s-purple:#5d275d;--s-red:#b13e53;--s-orange:#ef7d57;--s-yellow:#ffcd75;--s-lime:#a7f070;--s-green:#38b764;--s-teal:#257179;--s-navy:#29366f;--s-blue:#3b5dc9;--s-sky:#41a6f6;--s-cyan:#73eff7;--s-white:#f4f4f4;--s-grey:#94b0c2;--s-slate:#566c86;--s-dark:#333c57;--bg:var(--s-black);--card:var(--s-navy);--card-deep:#202542;--border:var(--s-dark);--border-hi:var(--s-slate);--text:var(--s-white);--muted:var(--s-grey);--faint:var(--s-slate);--accent:var(--s-yellow);--accent-2:var(--s-sky);--danger:var(--s-red);--good:var(--s-lime);--px:4px;--maxw:460px;--font-pixel:"Press Start 2P", "Courier New", monospace;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;font-family:var(--font-body)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{min-height:100%;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-image:repeating-linear-gradient(0deg,#ffffff04 0 2px,#0000 2px 4px);overflow-x:clip}h1,h2,h3{font-family:var(--font-pixel);letter-spacing:0;margin:0;font-weight:400;line-height:1.5}p{margin:0;line-height:1.6}a{color:inherit}a,button{touch-action:manipulation}.app{width:100%;max-width:var(--maxw);padding:20px 16px 64px;padding:20px max(16px, env(safe-area-inset-left)) calc(64px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-right));min-height:100svh;margin:0 auto}.brand{font-family:var(--font-pixel);color:var(--s-yellow);text-shadow:2px 2px 0 var(--s-purple);font-size:14px;text-decoration:none;position:relative}.brand:after{content:"";position:absolute;inset:-14px -10px}.sprite{image-rendering:crisp-edges;image-rendering:pixelated}.pxcard{background:var(--card);border:var(--px) solid var(--border);clip-path:polygon(0 var(--px), var(--px) var(--px), var(--px) 0, calc(100% - var(--px)) 0, calc(100% - var(--px)) var(--px), 100% var(--px), 100% calc(100% - var(--px)), calc(100% - var(--px)) calc(100% - var(--px)), calc(100% - var(--px)) 100%, var(--px) 100%, var(--px) calc(100% - var(--px)), 0 calc(100% - var(--px)));position:relative}.pxcard--deep{background:var(--card-deep)}.pxbtn{appearance:none;cursor:pointer;width:100%;font-family:var(--font-pixel);text-align:center;color:var(--s-black);background:var(--s-yellow);border:var(--px) solid var(--s-dark);box-shadow:var(--px) var(--px) 0 0 #0000008c;padding:14px 16px;font-size:13px;line-height:1.6;text-decoration:none;transition:none;display:inline-block}.pxbtn:active{transform:translate(var(--px), var(--px));box-shadow:none}.pxbtn:disabled{opacity:.55;cursor:default;box-shadow:none;transform:none}.pxbtn--ghost{background:var(--card);color:var(--text);border-color:var(--border-hi)}.pxbtn--danger{background:var(--s-red);color:var(--s-white)}.pxchip{font-family:var(--font-pixel);color:var(--s-yellow);background:var(--card-deep);border:2px solid var(--border);padding:6px 10px;font-size:9px;line-height:1.6;display:inline-block}a.pxchip{position:relative}a.pxchip:after{content:"";position:absolute;inset:-8px -6px}.muted{color:var(--muted)}.pixel-text{font-family:var(--font-pixel)}@keyframes pxrise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.rise{animation:.35s steps(4,end) both pxrise}@keyframes pxblink{0%,49%{opacity:1}50%,to{opacity:0}}.blink{animation:1s step-end infinite pxblink}@media (prefers-reduced-motion:reduce){.rise,.blink{animation:none}}
