@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:block;src:url(../assets/fonts/plex-mono-400-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:block;src:url(../assets/fonts/plex-mono-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:block;src:url(../assets/fonts/plex-mono-500-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:block;src:url(../assets/fonts/plex-mono-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #060608;--acc-rgb: 169 173 184;--ink-rgb: 228 230 236;--ink: rgb(var(--ink-rgb));--dim: rgb(var(--ink-rgb) / .52);--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ease-out: cubic-bezier(.2, .8, .2, 1);--gutter: clamp(16px, 3vw, 36px);--glow-w: min(100vw, 98vh, 1100px);--glow-top: 42%}@media(max-aspect-ratio:1/1){:root{--glow-w: min(138vw, 74vh);--glow-top: 40%}}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;background:var(--bg);margin:0;overflow:hidden;overscroll-behavior:none}body{height:100dvh;color:var(--ink);font:400 14px/1.5 var(--mono);-webkit-font-smoothing:antialiased;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.edge{display:none}@supports (-webkit-touch-callout: none){.bg,.grain-wrap{-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 72px,#000 calc(100% - 72px),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 72px,#000 calc(100% - 72px),transparent 100%)}.edge{display:block;position:fixed;left:0;right:0;height:14px;background:var(--bg);pointer-events:none;z-index:7}.edge-top{top:0}.edge-bottom{bottom:0}}.bg,.grain-wrap{position:fixed;inset:0;pointer-events:none}.grain-wrap{overflow:hidden}.bg-grid{position:absolute;inset:-40px;background-image:radial-gradient(rgb(var(--ink-rgb) / .07) 1px,transparent 1.2px);background-size:22px 22px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 0%,transparent 80%);mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 0%,transparent 80%);will-change:transform}.bg-glow{position:absolute;left:50%;top:var(--glow-top);width:calc(var(--glow-w) * 1.1);aspect-ratio:16 / 10;translate:-50% -50%;background:radial-gradient(closest-side,rgb(var(--acc-rgb) / .09),rgb(var(--acc-rgb) / .03) 55%,transparent 100%);filter:blur(10px);will-change:transform}.bg-spot{position:absolute;inset:0;background:radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%),rgb(var(--acc-rgb) / .055),transparent 70%)}.grain{position:absolute;inset:-60px;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:grain 1s steps(6) infinite}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-22px,14px)}40%{transform:translate(18px,-30px)}60%{transform:translate(-34px,-8px)}80%{transform:translate(26px,24px)}to{transform:translate(0)}}.top{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:calc(env(safe-area-inset-top) + clamp(14px,2.6vh,28px)) var(--gutter) 0;z-index:5;pointer-events:none}.top>*{pointer-events:auto}.logo{display:inline-flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.logo-mark{width:34px;height:21px;flex:none;color:var(--ink);overflow:visible}.logo-mark .lid{transform-origin:20px 12px;animation:blink 7s infinite}.logo-pupil{transition:fill .6s}.logo:hover .logo-pupil{fill:rgb(var(--acc-rgb))}@keyframes blink{0%,93%,to{transform:scaleY(1)}95.5%{transform:scaleY(.08)}}.logo-text{display:flex;flex-direction:column;line-height:1.12}.logo-small{font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--dim)}.logo-big{font-size:13px;font-weight:500;letter-spacing:.02em}.logo:hover .logo-big{color:rgb(var(--acc-rgb));transition:color .4s}.status{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.06em;color:var(--dim)}.status .dot{width:6px;height:6px;border-radius:50%;background:rgb(var(--acc-rgb));box-shadow:0 0 rgb(var(--acc-rgb) / .6);animation:pulse 2.4s ease-out infinite}@keyframes pulse{0%{box-shadow:0 0 rgb(var(--acc-rgb) / .55)}70%{box-shadow:0 0 0 7px rgb(var(--acc-rgb) / 0)}to{box-shadow:0 0 rgb(var(--acc-rgb) / 0)}}.clock{font-variant-numeric:tabular-nums}@media(max-width:640px){body{font-size:13px}.logo{gap:10px}.logo-mark{width:30px;height:19px}.logo-big{font-size:12px}.logo-small{font-size:9px}.status-label{display:none}.status{font-size:10.5px}}@media(prefers-reduced-motion:reduce){.grain,.logo-mark .lid,.status .dot{animation:none}}.icons{position:fixed;inset:0;z-index:2;pointer-events:none}.icon{position:absolute;left:0;top:0;display:block;width:var(--s, 32px);height:var(--s, 32px);padding:0;border:0;background:none;color:rgb(var(--ink-rgb));font:inherit;cursor:pointer;pointer-events:auto;opacity:0;will-change:transform;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:opacity .9s ease}.icon.shown{opacity:.9}.icon:hover,.icon:focus-visible{opacity:1;transition-duration:.2s}.icon:focus-visible{outline:none}.icon svg{display:block;width:var(--s, 32px);height:var(--s, 32px);shape-rendering:crispEdges;filter:drop-shadow(0 0 8px rgb(0 0 0 / .85));transition:transform .15s steps(3,end)}.icon .ink{fill:currentColor}.icon .fill{fill:currentColor;opacity:.2;transition:opacity .3s}.icon .lbl{position:absolute;left:50%;top:calc(var(--s, 32px) + 7px);translate:-50% 0;display:inline-flex;align-items:center;gap:3px;padding:4px 7px 5px;font:500 12px/1 var(--mono);letter-spacing:.02em;white-space:nowrap;color:var(--ink);background:rgb(var(--bg-rgb, 6 6 8) / .55);border:1px solid rgb(var(--ink-rgb) / .28);border-radius:3px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background-color .25s,color .25s,border-color .25s}.icon .lbl .br{color:rgb(var(--acc-rgb));transition:transform .3s var(--ease-out),color .25s}.icon:hover svg,.icon:focus-visible svg{transform:translateY(-3px)}.icon:hover .fill,.icon:focus-visible .fill{opacity:.4}.icon:hover .lbl,.icon:focus-visible .lbl{background:rgb(var(--acc-rgb));border-color:rgb(var(--acc-rgb));color:var(--bg)}.icon:hover .lbl .br,.icon:focus-visible .lbl .br{color:var(--bg)}.icon:hover .lbl .br:first-child{transform:translate(-2px)}.icon:hover .lbl .br:last-child{transform:translate(2px)}.icon.pressed .fill{opacity:.9}.icon.pressed svg{transform:translateY(1px);transition:none}.icon .ring{position:absolute;left:50%;top:calc(var(--s, 32px) / 2);width:calc(var(--s, 32px) * 1.15);height:calc(var(--s, 32px) * 1.15);translate:-50% -50%;border:1.5px solid rgb(var(--acc-rgb));border-radius:50%;opacity:0;pointer-events:none}.icon.ping .ring{animation:ping 1.3s var(--ease-out)}.icon.ping svg{animation:hop .8s steps(1,end)}.icon.ping .lbl{animation:lbl-glow 1.3s ease}@keyframes ping{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}@keyframes hop{0%{transform:translateY(0)}8%{transform:translateY(-2px)}16%{transform:translateY(-4px)}24%{transform:translateY(-6px)}32%{transform:translateY(-7px)}40%{transform:translateY(-6px)}48%{transform:translateY(-4px)}56%{transform:translateY(-2px)}64%{transform:translateY(0)}72%{transform:translateY(-2px)}80%{transform:translateY(-3px)}88%{transform:translateY(-2px)}96%,to{transform:translateY(0)}}@keyframes lbl-glow{0%,to{border-color:rgb(var(--ink-rgb) / .28)}30%{border-color:rgb(var(--acc-rgb))}}.zoomrect{position:fixed;left:0;top:0;translate:-50% -50%;border:1px dotted rgb(var(--ink-rgb) / .7);pointer-events:none;z-index:3}.term-wrap{position:fixed;left:0;right:0;bottom:0;z-index:6;display:flex;justify-content:center;padding:0 var(--gutter) calc(env(safe-area-inset-bottom) + clamp(14px,3vh,30px));pointer-events:none}.term{pointer-events:auto;width:min(780px,100%);background:rgb(var(--ink-rgb) / .025);border:1px solid rgb(var(--ink-rgb) / .1);border-radius:6px;-webkit-backdrop-filter:blur(10px) saturate(120%);backdrop-filter:blur(10px) saturate(120%);box-shadow:0 20px 60px -30px #000000e6,inset 0 1px rgb(var(--ink-rgb) / .04);overflow:hidden;transition:border-color .6s,box-shadow .6s;opacity:0;translate:0 14px;animation:rise 1.1s .5s var(--ease-out) forwards}.term:focus-within{border-color:rgb(var(--acc-rgb) / .35)}@keyframes rise{to{opacity:1;translate:0 0}}.term-bar{position:relative;display:flex;align-items:center;justify-content:center;height:22px;border-bottom:1px solid rgb(var(--ink-rgb) / .07);background:repeating-linear-gradient(to bottom,rgb(var(--ink-rgb) / .09) 0 1px,transparent 1px 3px) center / calc(100% - 20px) 11px no-repeat}.term-title{padding:0 10px;background:var(--bg);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}.term-close{position:absolute;left:12px;top:50%;width:9px;height:9px;translate:0 -50%;border:1px solid rgb(var(--ink-rgb) / .3);background:var(--bg)}.term-out{--lh: 1.65em;height:calc(var(--lh) * 2 + 4px);padding:10px 16px 0;font-size:13px;line-height:var(--lh);overflow-x:hidden;overflow-y:auto;scrollbar-width:none;overscroll-behavior:contain;touch-action:pan-y;transition:height .35s var(--ease-out);color:rgb(var(--ink-rgb) / .88);user-select:text;-webkit-user-select:text;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 14px);mask-image:linear-gradient(to bottom,transparent 0,#000 14px)}.term-out::-webkit-scrollbar{display:none}.term-lines{padding-bottom:2px}.term-out .ln{white-space:pre-wrap;word-break:break-word}.term-out .echo{color:var(--dim)}.term-out .acc{color:rgb(var(--acc-rgb))}.term-out .li{padding-left:2ch;text-indent:-2ch}.term-out .li:before{content:"+ ";color:rgb(var(--acc-rgb))}.term-out .note{color:var(--dim)}.term-out a.ln,.term-out .ln.link{display:block;color:rgb(var(--acc-rgb));text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.term-out a.ln:hover,.term-out .ln.link:hover{text-decoration-thickness:2px}.term-out .ln.link{margin-top:4px;padding:0;border:0;background:none;font:inherit;font-weight:500;text-align:left;cursor:pointer;touch-action:manipulation}.term-out .ln.link:focus-visible{outline:1px solid rgb(var(--acc-rgb));outline-offset:2px}.term-out .caret{display:inline-block;width:.6em;height:1.05em;margin-left:1px;vertical-align:-.18em;background:rgb(var(--acc-rgb));animation:caret 1.05s steps(1) infinite}@keyframes caret{50%{opacity:0}}.term-in{padding:8px 12px 12px}.chips{display:flex;gap:6px}.chip{position:relative;flex:1;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:9px 8px;border:1px solid rgb(var(--ink-rgb) / .14);border-radius:3px;background:transparent;color:var(--ink);font:500 12.5px/1 var(--mono);letter-spacing:.02em;cursor:pointer;overflow:hidden;isolation:isolate;touch-action:manipulation;transition:border-color .3s,color .3s,transform .18s var(--ease-out),background-color .4s}.chip:before{content:"";position:absolute;inset:0;z-index:-1;background:rgb(var(--acc-rgb) / .16);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease-out)}.chip .row{display:inline-flex;align-items:center;gap:2px;white-space:nowrap}.chip .sub{font-size:10.5px;font-weight:400;letter-spacing:0;white-space:nowrap;color:var(--dim);transition:color .3s}.chip .br{color:var(--dim);transition:transform .3s var(--ease-out),color .3s}.chip:hover{border-color:rgb(var(--acc-rgb) / .5)}.chip:hover:before{transform:scaleX(1)}.chip:hover .br.l{transform:translate(-3px);color:rgb(var(--acc-rgb))}.chip:hover .br.r{transform:translate(3px);color:rgb(var(--acc-rgb))}.chip:active{transform:scale(.95)}.chip:focus-visible{outline:1px solid rgb(var(--acc-rgb));outline-offset:2px}.chip[aria-pressed=true]{background:rgb(var(--acc-rgb));border-color:rgb(var(--acc-rgb));color:var(--bg)}.chip[aria-pressed=true] .br{color:var(--bg)}.chip[aria-pressed=true] .sub{color:rgb(var(--bg-rgb, 6 6 8) / .72)}.chip[aria-pressed=true]:before{transform:scaleX(0)}.chip.flash:after{content:"";position:absolute;inset:-1px;border:1px solid rgb(var(--acc-rgb));border-radius:3px;animation:ring .6s var(--ease-out) forwards}@keyframes ring{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.25,1.6)}}@media(max-width:640px){.term-out{font-size:12px;padding:8px 12px 0}.term-in{padding:6px 10px 10px}.chip{padding:8px 4px;gap:4px;font-size:12px}.chip .sub{font-size:10px}}@media(prefers-reduced-motion:reduce){.term{animation-duration:.01s;animation-delay:0s}}
