@font-face{font-family:JetBrains Mono;src:url(../fonts/jetbrains-mono-subset.woff2) format("woff2");font-display:block}@font-face{font-family:DotGothic16;src:url(../fonts/dotgothic16-subset.woff2) format("woff2");font-display:block}@font-face{font-family:Koro Big;src:url(../fonts/notosansjp-black-subset.woff2) format("woff2");font-weight:900;font-display:block}:root{color-scheme:dark;--bg: #050509;--fg: #fbf3dc;--yellow: #ffd21c;--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px);--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px)}html,body{margin:0;height:100%;background:var(--bg);overflow:hidden;overscroll-behavior:none}body{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;font-family:JetBrains Mono,ui-monospace,Menlo,monospace;color:var(--fg)}body.mouse{cursor:none}body.mouse.ui{cursor:pointer}#stage{position:fixed;inset:0;display:block;width:100vw;height:100vh}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@font-face{font-family:Koro Splash;src:url(../fonts/jetbrains-mono-subset.woff2) format("woff2");font-display:swap}#splash{--k-hi: #fff3a8;--k-mid: #ffd21c;--k-lo: #d99a00;--k-line: #9c6700;--k-ink: #4a2a05;--k-teeth: #fffdf1;--k-gap: #b9b1a0;--k-hat: #2c2a3d;--k-hat-top: #45425d;--k-tassel: #ffcf3a;--k-ret: #ff6259;--k-lock: #ff2a3c;--k-iris: #ffd21c;position:fixed;inset:0;display:grid;place-content:center;justify-items:center;gap:.7em;padding:16px;box-sizing:border-box;background:radial-gradient(ellipse at 50% 42%,#10101c 0%,var(--bg) 70%);color:#8f89b3;font-family:Koro Splash,ui-monospace,Menlo,Consolas,monospace;pointer-events:none;transition:opacity .35s ease,visibility 0s linear .35s}#splash:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to bottom,transparent 0 2px,rgba(255,255,255,.022) 2px 3px)}.ready #splash{opacity:0;visibility:hidden}.splash-gone #splash{display:none}.splash-stage svg{display:block;width:min(84vmin,540px);height:auto;overflow:visible}.k-head{stroke:var(--k-line);stroke-width:1.4}.k-tone{display:none}.k-band{fill:var(--k-hat)}.k-board{fill:var(--k-hat-top);stroke:var(--k-hat);stroke-width:1.5;stroke-linejoin:round}.k-cord{fill:none;stroke:var(--k-tassel);stroke-width:1.6;stroke-linecap:round}.k-tassel{fill:var(--k-tassel)}.k-eyes{fill:#140b02;transform-box:fill-box;transform-origin:center;animation:k-blink 3.9s linear infinite}.k-grin{fill:var(--k-teeth);stroke:var(--k-ink);stroke-width:2.4;stroke-linejoin:round}.k-teeth{fill:none;stroke:var(--k-gap);stroke-width:1.2;stroke-linecap:round}.k-main,.k-ghost{transform-box:fill-box;transform-origin:center}.k-ghost{opacity:0}.k-reticle{fill:none;stroke:var(--k-ret);stroke-width:1.6;animation:k-roam 3.4s ease-in-out infinite;transition:transform .3s cubic-bezier(.3,1.5,.5,1),stroke .15s}.k-reticle .k-ring{stroke-dasharray:4 7;opacity:.7;animation:k-spin 6s linear infinite;transform-origin:0 0}.k-reticle .k-dot{fill:var(--k-ret);stroke:none}.splash-cap{margin:0;min-height:1.4em;font-size:12px;letter-spacing:.2em;text-transform:uppercase}.splash-cap .cap-lock,.splash-cap .cap-miss{display:none}.splash-cap .cap-miss{text-transform:none;letter-spacing:.04em;color:#fbf3dc}.splash-cap .cap-lock{color:var(--k-lock)}.splash-sub{margin:0;font-size:11px;color:#4d4868}#splash noscript p{margin:1em 0 0;text-align:center;font-size:13px;color:#7d78a0}.dots span{animation:splash-dot 1.2s ease-in-out infinite}.dots span:nth-child(2){animation-delay:.2s}.dots span:nth-child(3){animation-delay:.4s}.splash-lock .k-reticle{animation:none;transform:scale(.8);stroke:var(--k-lock);stroke-width:2.8}.splash-lock .k-reticle .k-dot{fill:var(--k-lock)}.splash-lock .k-reticle .k-ring{animation:none;stroke-dasharray:none;opacity:1}.splash-lock .cap-find{display:none}.splash-lock .cap-lock{display:inline}.splash-dodge .k-main{animation:k-zip .2s ease-in forwards}.splash-dodge .k-ghost{animation:k-ghost .55s ease-out forwards}.splash-dodge .g1{transform:translate(34px,-5px)}.splash-dodge .g2{transform:translate(82px,-12px);animation-delay:.04s}.splash-dodge .g3{transform:translate(140px,-21px);animation-delay:.08s}.splash-dodge .k-reticle{stroke:var(--k-ret);transform:scale(1.15);opacity:.6}.splash-dodge .cap-lock{display:none}.splash-dodge .cap-miss{display:inline}.splash-open #stage{z-index:2;animation:k-iris .75s cubic-bezier(.3,.7,.2,1) both}.splash-iris{position:fixed;left:var(--iris-x, 50%);top:var(--iris-y, 46%);width:0;height:0;border:2px solid var(--k-iris);border-radius:50%;transform:translate(-50%,-50%);opacity:0;z-index:3}.splash-open .splash-iris{animation:k-iris-ring .75s cubic-bezier(.3,.7,.2,1) both}html.paper,html.paper body{background:#f6f3ea}html.paper #splash{--k-hi: #fff;--k-mid: #fff;--k-lo: #fff;--k-line: #1d1b22;--k-ink: #1d1b22;--k-teeth: #fff;--k-gap: #1d1b22;--k-hat: #1d1b22;--k-hat-top: #1d1b22;--k-tassel: #1d1b22;--k-ret: #1d1b22;--k-lock: #c8322c;--k-iris: #1d1b22;background:#f6f3ea;color:#6e6878}html.paper #splash:before{background:radial-gradient(circle,rgba(29,27,34,.16) 1px,transparent 1.4px) 0 0 / 6px 6px;-webkit-mask-image:radial-gradient(circle at 50% 42%,#000 0,#000 14vmin,transparent 34vmin);mask-image:radial-gradient(circle at 50% 42%,#000 0,#000 14vmin,transparent 34vmin)}html.paper .k-head{stroke-width:3}html.paper .k-tone{display:inline}html.paper .k-grin{stroke-width:2.6}html.paper .k-teeth{stroke-width:1.3}html.paper .k-eyes{fill:#1d1b22}html.paper .splash-cap .cap-miss{color:#1d1b22}html.paper .splash-sub{color:#a39dab}@keyframes k-blink{0%,94%{transform:scaleY(1)}95.5%{transform:scaleY(.12)}97%,to{transform:scaleY(1)}}@keyframes k-roam{0%,to{transform:translate(-48px,-26px)}22%{transform:translate(40px,-44px)}45%{transform:translate(26px,34px)}68%{transform:translate(-34px,22px)}84%{transform:translate(6px,-8px)}}@keyframes k-spin{to{transform:rotate(360deg)}}@keyframes k-zip{to{transform:translate(300px,-46px) scale(1.25,.8);opacity:0}}@keyframes k-ghost{0%{opacity:0}12%{opacity:.45}to{opacity:0}}@keyframes k-iris{0%{clip-path:circle(0 at var(--iris-x, 50%) var(--iris-y, 46%))}to{clip-path:circle(150vmax at var(--iris-x, 50%) var(--iris-y, 46%))}}@keyframes k-iris-ring{0%{width:0;height:0;opacity:1}80%{opacity:.8}to{width:300vmax;height:300vmax;opacity:0}}@keyframes splash-dot{0%,to{opacity:.15}40%{opacity:1}}@media(prefers-reduced-motion:reduce){.k-eyes,.k-reticle,.k-reticle .k-ring,.dots span{animation:none}#splash{transition:visibility 0s linear .2s,opacity .2s linear}}
