@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Variable.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/Geist-Variable.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Saitamaar;src:url(/fonts/saitamaar-aa.woff2)format("woff2");font-display:block}:root{--bg:#0a0a0b;--panel:#111114;--line:#1f1f24;--fg:#d8d8db;--dim:#7c7c85;--acc:#b48cff;--homu:#b48cff;--mado:#e6dcff;--aa-dim:#3c3a44;color-scheme:dark}*{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent;overflow-x:clip}body{color:var(--fg);-webkit-font-smoothing:antialiased;margin:0;font:15px/1.6 Geist,system-ui,sans-serif}body:before,body:after{content:"";pointer-events:none;z-index:-1;position:fixed;inset:0}body:before{filter:blur(30px);background:radial-gradient(38% 32% at 22% 30%,#b48cff21,#0000 70%),radial-gradient(30% 28% at 78% 72%,#e6dcff12,#0000 70%),radial-gradient(26% 24% at 70% 18%,#8c64e614,#0000 70%);animation:26s ease-in-out infinite alternate drift;inset:-20%}body:after{opacity:.22;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .3 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),radial-gradient(circle,#d8d8db12 1px,#0000 1.4px) 0 0/22px 22px;-webkit-mask-image:radial-gradient(80% 70% at 50% 45%,#000 30%,#0000 100%);mask-image:radial-gradient(80% 70% at 50% 45%,#000 30%,#0000 100%)}@keyframes drift{0%{transform:translate(0)rotate(0)scale(1)}50%{transform:translate(4%,-3%)rotate(8deg)scale(1.08)}to{transform:translate(-4%,3%)rotate(-6deg)scale(.96)}}@media (prefers-reduced-motion:reduce){body:before{animation:none}}.sky{pointer-events:none;z-index:-1;width:100%;height:100%;animation:1.8s ease-out both dusk;position:fixed;inset:0}@keyframes dusk{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.sky{animation:none}}.ring{display:none}@media (pointer:fine) and (hover:hover){html.has-ring,html.has-ring *{cursor:none!important}html.has-ring input,html.has-ring textarea{cursor:text!important}.ring{z-index:9999;pointer-events:none;opacity:0;border:1.5px solid #ece4ffbf;border-radius:50%;width:22px;height:22px;margin:-11px 0 0 -11px;transition:width .3s cubic-bezier(.22,1,.36,1),height .3s cubic-bezier(.22,1,.36,1),margin .3s cubic-bezier(.22,1,.36,1),opacity .3s cubic-bezier(.22,1,.36,1),border-color .3s cubic-bezier(.22,1,.36,1),background-color .3s cubic-bezier(.22,1,.36,1);display:block;position:fixed;top:0;left:0;box-shadow:0 0 12px #b48cff4d}.ring.on{opacity:1}.ring.hot{background:#ffffff0d;width:38px;height:38px;margin:-19px 0 0 -19px}.ring.down{width:14px;height:14px;margin:-7px 0 0 -7px}.dot{z-index:9999;pointer-events:none;opacity:0;background:#ece4ff;border-radius:50%;width:4px;height:4px;margin:-2px 0 0 -2px;transition:opacity .3s;display:block;position:fixed;top:0;left:0}.ring.on+.dot{opacity:1}}.dot{display:none}@media (pointer:fine) and (hover:hover){.dot{display:block}}.mono,code,pre,kbd{font-family:Geist Mono,ui-monospace,Consolas,monospace}html[data-lang=ru] [lang=en],html[data-lang=en] [lang=ru]{display:none}a{color:var(--acc);text-decoration:none;transition:color .2s ease-out}a:hover{text-underline-offset:3px;text-decoration:underline}b{color:var(--fg);font-weight:600}::selection{background:var(--acc);color:var(--bg)}p{margin:0 0 8px}.dim{color:var(--dim)}.small{font-size:12px}.col{width:min(560px,100%);margin:0 auto;padding:0 20px}.screen{flex-direction:column;justify-content:center;min-height:100svh;padding-block:40px;display:flex}.btn{font:inherit;color:var(--fg);border:1px solid var(--line);cursor:pointer;background:0 0;padding:4px 12px}.btn:hover{border-color:var(--acc);color:var(--acc)}input,textarea{font:inherit;color:var(--fg);background:var(--panel);border:1px solid var(--line);outline:none;width:100%;padding:8px 10px}input:focus,textarea:focus{border-color:var(--acc)}textarea{resize:vertical;min-height:84px}@media (width<=560px){body{font-size:13.5px}input,textarea{font-size:16px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
