@font-face{font-family:Space Grotesk;font-weight:300 700;src:url(/fonts/spacegrotesk-latin.woff2)format("woff2");unicode-range:U+??,U+2000-206F}@font-face{font-family:Space Grotesk;font-weight:300 700;src:url(/fonts/spacegrotesk-latinext.woff2)format("woff2");unicode-range:U+100-2FF}@font-face{font-family:IBM Plex Mono;font-weight:400;src:url(/fonts/plexmono-400-latin.woff2)format("woff2");unicode-range:U+??,U+2000-206F}@font-face{font-family:IBM Plex Mono;font-weight:400;src:url(/fonts/plexmono-400-cyrillic.woff2)format("woff2");unicode-range:U+400-45F,U+490-491,U+2116}@font-face{font-family:IBM Plex Mono;font-weight:500;src:url(/fonts/plexmono-500-latin.woff2)format("woff2");unicode-range:U+??,U+2000-206F}@font-face{font-family:IBM Plex Mono;font-weight:500;src:url(/fonts/plexmono-500-cyrillic.woff2)format("woff2");unicode-range:U+400-45F,U+490-491,U+2116}:root{--bg:#111315;--deep:#0a0a0b;--panel:#0c0d0ee6;--ink:#f5f5f0;--lime:#c9f73a;--limeink:#0a0a0b;--warn:#ff8a80;--mute:#8a8d8f;--line:#f5f5f029;--display:"Space Grotesk","Segoe UI",Arial,sans-serif;--mono:"IBM Plex Mono",ui-monospace,Consolas,monospace}*{box-sizing:border-box}[hidden]{display:none!important}html,body{background:var(--bg);height:100%;color:var(--ink);font:400 16px/1.55 var(--display);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}#app,#app canvas{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#grain{pointer-events:none;z-index:60;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:fixed;inset:0}#grain:after{content:"";background:radial-gradient(#0000 55%,#0006);position:fixed;inset:0}.mono,.label,.keys{font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase}.label{color:var(--lime);margin:0 0 8px}.mute{color:var(--mute)}.small{letter-spacing:.06em;text-transform:none;font-size:11px}.dot{background:var(--mute);border-radius:50%;width:8px;height:8px;display:inline-block}.dot.on,.top-row .dot{background:var(--lime);box-shadow:0 0 10px var(--lime)}kbd{border:1px solid var(--line);font:500 11px var(--mono);color:var(--ink);background:#f5f5f00d;padding:1px 6px;display:inline-block}.x{border:1px solid var(--line);background:0 0;border-radius:2px;width:36px;height:36px;font-size:22px;line-height:1;position:absolute;top:12px;right:12px}.x:hover{border-color:var(--lime);color:var(--lime)}.btn-lime{background:var(--lime);width:100%;color:var(--limeink);font:600 15px var(--mono);letter-spacing:.18em;text-transform:uppercase;border:0;border-radius:2px;padding:14px;transition:transform .15s,box-shadow .15s;display:block}.btn-lime:hover{box-shadow:0 0 28px #c9f73a73}.btn-lime:active{transform:translateY(1px)}.btn-lime:disabled{opacity:.45;cursor:wait;box-shadow:none}.btn-line{border:1px solid var(--line);font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;background:0 0;border-radius:2px;padding:11px 16px}.btn-line:hover{border-color:var(--lime);color:var(--lime)}.row{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.row>*{flex:1}input,textarea,select{font:400 15px var(--mono);color:var(--ink);border:1px solid var(--line);background:#17191b;border-radius:2px;outline:none;padding:10px 12px}input:focus,textarea:focus,select:focus{border-color:var(--lime)}.outline{font:600 44px/1 var(--display);color:#0000;-webkit-text-stroke:1.4px var(--lime)}.tape{background:var(--lime);width:130%;height:44px;color:var(--limeink);font:500 13px var(--mono);letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;z-index:1;pointer-events:none;align-items:center;display:flex;position:absolute;left:-10%;overflow:hidden;box-shadow:0 6px 24px #00000073}.tape span{animation:60s linear infinite tape;display:inline-block}.tape.t1{top:26px;transform:rotate(-3deg)}.tape.t2{background:var(--ink);bottom:30px;transform:rotate(2deg)}.tape.t2 span{animation-direction:reverse}@keyframes tape{to{transform:translate(-50%)}}#lobby{z-index:20;background:linear-gradient(90deg,#0a0a0beb 0,#0a0a0bb3 38%,#0a0a0b1a 70%);position:fixed;inset:0;overflow:hidden}.lobby-in{z-index:2;align-items:center;height:100%;padding:90px 28px;display:flex;position:relative;overflow:auto}.lobby-card{width:min(520px,100%);position:relative}.top-row{align-items:center;gap:12px;margin-bottom:26px;display:flex}.top-row b{font:500 13px var(--mono);letter-spacing:.14em;color:var(--lime)}.lang{gap:4px;margin-left:auto;display:flex}.lang button{border:1px solid var(--line);font:500 11px var(--mono);color:var(--mute);background:0 0;border-radius:2px;padding:3px 8px}.lang button.on{color:var(--limeink);background:var(--lime);border-color:var(--lime)}#lobby h1{font:600 clamp(40px,6.4vw,84px)/.96 var(--display);text-transform:uppercase;letter-spacing:-.01em;margin:6px 0 18px}#lobby h1 em{color:#0000;-webkit-text-stroke:1.5px var(--lime);font-style:normal}.lead{color:#cfd1cc;max-width:470px;margin:0 0 22px;font-size:17px}.field{margin:0 0 18px;display:block}.field input{width:100%}.avatars{grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:10px;display:grid}.avatars button{border:1px solid var(--line);aspect-ratio:11/14;background:#16181a;border-radius:2px;padding:0;position:relative;overflow:hidden}.avatars button img{object-fit:cover;width:100%;height:100%;display:block}.avatars button span{font:500 9px var(--mono);letter-spacing:.08em;text-transform:uppercase;text-align:center;background:#0a0a0bbf;padding:3px 2px;position:absolute;bottom:0;left:0;right:0}.avatars button.on{border-color:var(--lime);box-shadow:inset 0 0 0 1px var(--lime)}.colors{gap:8px;margin-bottom:20px;display:flex}.colors button{border:2px solid #0000;border-radius:50%;width:24px;height:24px;padding:0}.colors button.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--deep) inset}.keys{color:var(--mute);letter-spacing:.1em;margin:16px 0 0;font-size:11px;line-height:2.1}.keys span{margin-right:10px}.credit{z-index:2;text-align:right;color:#f5f5f08c;letter-spacing:.08em;text-transform:none;max-width:46vw;font-size:10px;position:absolute;bottom:84px;right:16px}.modal{z-index:30;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#05050699;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-card{background:var(--panel);border:1px solid var(--line);width:min(460px,100%);max-height:92vh;padding:30px 28px;position:relative;overflow:auto}.modal-card.wide{width:min(900px,100%)}.modal-card:before,.modal-card:after{content:"";border:2px solid var(--lime);pointer-events:none;width:22px;height:22px;position:absolute}.modal-card:before{border-bottom:0;border-right:0;top:-1px;left:-1px}.modal-card:after{border-top:0;border-left:0;bottom:-1px;right:-1px}.how{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:22px;margin:16px 0 10px;display:grid}.how h3{font:600 20px var(--display);text-transform:uppercase;margin:10px 0 4px}.how p{color:#cfd1cc;margin:0;font-size:15px}.check{align-items:center;gap:10px;margin:8px 0 16px;display:flex}.check input{width:18px;height:18px;accent-color:var(--lime)}#settings input[type=range]{width:100%;accent-color:var(--lime);padding:0}#hud{pointer-events:none;z-index:5;position:fixed;inset:0}#hud button,#hud canvas,#hud input,#hud form{pointer-events:auto}#bar{background:linear-gradient(#0a0a0bd9,#0a0a0b00);align-items:center;gap:14px;padding:8px 12px 8px 16px;display:flex;position:absolute;top:0;left:0;right:0}#bar b{color:var(--lime)}#bar .sp{flex:1}#bar button{border:1px solid var(--line);background:#0a0a0b99;border-radius:2px;width:36px;height:34px;font-size:16px}#bar button:hover{border-color:var(--lime);color:var(--lime)}#bar .ed{width:auto;font:600 11px var(--mono);letter-spacing:.16em;color:var(--limeink);background:var(--lime);border-color:var(--lime);padding:0 12px}#cross{border:1.5px solid #f5f5f0bf;border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px;transition:all .15s;position:absolute;top:50%;left:50%}#cross.on{border-color:var(--lime);width:22px;height:22px;box-shadow:0 0 12px var(--lime);margin:-11px 0 0 -11px}#hint{background:var(--panel);border-left:3px solid var(--lime);max-width:min(560px,90vw);padding:10px 16px 10px 14px;font-size:15px;position:absolute;top:calc(50% + 30px);left:50%;transform:translate(-50%)}#hint .label{margin:0 0 2px}#hint small{color:var(--mute);font:500 11px var(--mono);letter-spacing:.12em;margin-top:4px;display:block}#tour{background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--lime);width:min(360px,100vw - 32px);padding:16px 18px;position:absolute;top:60px;left:16px}#tour h3{font:600 22px/1.1 var(--display);text-transform:uppercase;margin:4px 0 6px}#tour p{color:#cfd1cc;margin:0 0 12px;font-size:14.5px}#tour .bar{background:var(--line);height:3px;margin:6px 0 12px}#tour .bar i{background:var(--lime);height:100%;transition:width .3s;display:block}#tour .row{margin:0}#tour .done{color:var(--lime)}#emotes{flex-direction:column;gap:6px;display:flex;position:absolute;bottom:200px;left:16px}#emotes button{border:1px solid var(--line);background:#0a0a0b99;border-radius:2px;width:38px;height:38px;font-size:17px}#chat{width:min(440px,100vw - 250px);position:absolute;bottom:38px;left:16px}#log{flex-direction:column;gap:3px;margin-bottom:6px;display:flex}#log div{word-wrap:break-word;background:#0a0a0bb8;border-left:2px solid #0000;padding:4px 10px;font-size:14px;transition:opacity 1.2s}#log div.old{opacity:0}#hud.chatting #log div.old{opacity:1}#log b{font:500 13px var(--mono)}#log .sys{color:var(--mute);font:400 12px var(--mono)}#chatForm input{width:100%}#mini{border:1px solid var(--line);cursor:pointer;background:#0a0a0bb3;width:200px;height:200px;position:absolute;bottom:38px;right:16px}#keyline{text-align:center;color:#f5f5f080;margin:0;font-size:10px;position:absolute;bottom:8px;left:0;right:0}#keyline kbd{padding:0 4px;font-size:10px}#paused{pointer-events:auto;cursor:pointer;background:#00000059;place-items:center;display:grid;position:absolute;inset:0}#joy{border:1px solid var(--line);pointer-events:auto;touch-action:none;background:#f5f5f00f;border-radius:50%;width:120px;height:120px;position:absolute;bottom:110px;left:24px}#joy i{background:#c9f73acc;border-radius:50%;width:50px;height:50px;position:absolute;top:35px;left:35px}#bRead{background:var(--lime);width:62px;height:62px;color:var(--limeink);font:600 28px var(--display);border:0;border-radius:50%;position:absolute;bottom:260px;right:24px}#card{background:var(--panel);border-left:1px solid var(--line);z-index:12;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:min(560px,100vw);padding:30px 30px 50px;animation:.25s ease-out slide;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}@keyframes slide{0%{opacity:0;transform:translate(30px)}}#card .num{font:600 72px/1 var(--display);color:#0000;-webkit-text-stroke:1.5px var(--lime);margin:10px 0 6px}#card h2{font:600 34px/1.05 var(--display);text-transform:uppercase;margin:4px 44px 6px 0}#card .sub{font:italic 400 17px var(--display);color:var(--mute);margin:0 0 10px}#card .who{font:500 12px var(--mono);letter-spacing:.12em;color:var(--mute);text-transform:uppercase;margin:0 0 20px}#card .frame{border:1px solid var(--line);background:#000;margin:14px 0 18px;position:relative}#card .frame .cap{height:34px;font:500 11px var(--mono);letter-spacing:.14em;color:var(--lime);border-bottom:1px solid var(--line);text-transform:uppercase;align-items:center;gap:8px;padding:0 12px;display:flex}#card .frame img,#card .frame video{width:100%;display:block}#card p{color:#dcdcd6;margin:0 0 12px}#card .here{border:1px solid var(--line);font:400 13px var(--mono);margin-top:20px;padding:10px 12px}#card a{color:var(--lime)}.sheet{z-index:14;background:#0a0a0bf2;padding:24px 22px 40px;position:fixed;inset:0;overflow-y:auto}.sheet-head{max-width:1180px;margin:0 auto 18px;position:relative}.sheet-head .x{top:-6px;right:0}.cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;max-width:1180px;margin:0 auto;display:grid}.work{text-align:left;border:1px solid var(--line);background:#16181a;border-radius:0;padding:0;position:relative;overflow:hidden}.work:hover{border-color:var(--lime)}.work .ph{background:#1d2023 50%/cover no-repeat;height:110px}.work .ph.no{font:600 34px var(--display);color:var(--lime);background:repeating-linear-gradient(135deg,#17191b 0 9px,#1b1e20 9px 18px);place-items:center;display:grid}.work .t{padding:9px 11px 12px;font-size:14px;line-height:1.3}.work .t b{font:500 11px var(--mono);letter-spacing:.14em;color:var(--lime);margin-bottom:4px;display:block}.work .cnt{background:var(--lime);color:var(--limeink);font:500 11px var(--mono);padding:2px 6px;position:absolute;top:8px;right:8px}#big{border:1px solid var(--line);background:#0d0e0f;width:min(92vw,80vh);height:min(92vw,80vh);margin:0 auto;display:block}body.editing #keyline,body.editing #emotes,body.editing #mini,body.editing #chat{display:none}@media (width<=760px){.lobby-in{align-items:flex-start;padding:74px 16px 80px}#lobby{background:#0a0a0bc7}.avatars{grid-template-columns:repeat(3,1fr)}#mini{width:120px;height:120px}#chat{width:calc(100vw - 160px)}#emotes,#keyline,#locName{display:none}#bar{gap:8px}#bar button{width:32px}.credit{text-align:left;max-width:none;bottom:6px;left:16px;right:16px}.tape.t2{display:none}}#loader{z-index:60;color:#e9e9e2;background:#0a0b0aeb;flex-direction:column;justify-content:center;align-items:center;gap:22px;font-family:IBM Plex Mono,monospace;transition:opacity .5s;display:flex;position:fixed;inset:0}#loader[hidden]{display:none}#loader.out{opacity:0}#loader .ld-ring{border:3px solid #ebf2242e;border-top-color:#ebf224;border-radius:50%;width:64px;height:64px;animation:1s linear infinite ldspin}#loader .ld-t{letter-spacing:.12em;text-transform:uppercase;text-align:center;padding:0 20px;font-size:15px}#loader .ld-t:after{content:"";animation:1.5s steps(4,end) infinite lddots}#loader .ld-p{color:#ebf224;font-size:13px}@keyframes ldspin{to{transform:rotate(360deg)}}@keyframes lddots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}#lobby .lang{gap:8px}#lobby .lang button{font:600 22px var(--mono);color:var(--ink,#e9e9e2);letter-spacing:.06em;border-width:2px;padding:10px 22px}@media (width<=600px){#lobby .lang button{padding:8px 16px;font-size:18px}}#card p{color:#f0efe9;font:400 16px/1.68 var(--sans,system-ui);margin:0 0 14px}#card p.lead{font:500 20px/1.45 var(--display);color:#fff;border-left:3px solid var(--lime);margin:6px 0 20px;padding-left:14px}#card p b{color:#fff;font-weight:700}#card h4{font:600 13px var(--mono);letter-spacing:.18em;color:var(--lime);text-transform:uppercase;margin:26px 0 10px}#card h2{letter-spacing:-.01em;font-size:38px}#card .who{color:#cfcfc6}#card .links{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;margin-top:26px;padding-top:16px;display:flex}#card .links .label{width:100%;margin:0 0 4px}#card .links a{border:1px solid var(--lime);color:var(--lime);font:500 13px var(--mono);letter-spacing:.06em;padding:9px 14px;text-decoration:none;display:inline-block}#card .links a:hover{background:var(--lime);color:var(--limeink,#111)}
