*{box-sizing:border-box}body{margin:0;background:#0d0f12;color:#e8e6e3;font-family:system-ui,sans-serif;min-height:100vh}#menu{max-width:880px;margin:0 auto;padding:3rem 1rem}h1{margin:0 0 .25rem;font-size:1.7rem}.tag{font-size:.8rem;color:#e8a33d;vertical-align:middle}.sub{color:#9aa0a6;margin-top:0}.row{display:block;margin:.8rem 0;font-size:.9rem;color:#c7cbd1}.row input{display:block;width:100%;margin-top:.3rem;padding:.5rem .6rem;background:#16191d;color:#e8e6e3;border:1px solid #2a2f36;border-radius:6px;font-size:1rem}.cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}@media(max-width:720px){.cards{grid-template-columns:1fr}}.card{background:#131619;border:1px solid #23272e;border-radius:10px;padding:1rem 1.2rem}.card h2{margin-top:0;font-size:1.1rem}button{padding:.55rem 1.1rem;background:#e8a33d;color:#14161a;font-weight:600;border:0;border-radius:6px;cursor:pointer;font-size:.95rem}button:hover{filter:brightness(1.1)}button.ghost{background:transparent;color:#e8a33d;border:1px solid #e8a33d}.hint{color:#8a919a;font-size:.8rem}.warning{display:flex;gap:.6rem;align-items:flex-start;margin-top:.9rem;padding:.7rem .8rem;background:#e8a33d1f;border:1px solid #e8a33d;border-radius:8px;color:#f4c77c;font-size:.88rem;line-height:1.35}.warning strong{color:#ffd28a}.warning-icon{font-size:1.1rem;line-height:1.2}.combo{position:relative;display:block}.combo-list{position:absolute;top:calc(100% + 2px);left:0;right:0;z-index:8;display:block;max-height:200px;overflow-y:auto;background:#16191d;border:1px solid #3a3f47;border-radius:6px;box-shadow:0 8px 24px #00000080}.combo-list[hidden]{display:none}.combo-item{display:block;width:100%;text-align:left;padding:.45rem .6rem;background:transparent;border:0;border-radius:0;color:#c7cbd1;font-size:.92rem;font-family:monospace;cursor:pointer}.combo-item:hover,.combo-item.active{background:#23272e;color:#ffd28a;filter:none}.combo-empty{display:block;padding:.5rem .6rem;color:#6b727b;font-size:.85rem}.map-preview{margin:.6rem 0 .2rem;padding:.5rem;background:#0b0d10;border:1px solid #23272e;border-radius:8px}.map-preview img{display:block;width:100%;max-height:220px;object-fit:contain;image-rendering:pixelated}.listHead{display:flex;justify-content:space-between;margin-bottom:.4rem}table{width:100%;border-collapse:collapse;font-size:.9rem}th{text-align:left;color:#8a919a;font-weight:500;padding:.3rem .4rem}td{padding:.4rem;border-top:1px solid #23272e}td.empty{color:#8a919a;text-align:center;padding:1rem}td button{padding:.3rem .8rem;font-size:.85rem}#canvas{display:none;position:fixed;inset:0;width:100vw;height:100vh;background:#000}body.playing #menu{display:none}body.playing #canvas{display:block}#loading,#error{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#06080aeb;z-index:10}#loading[hidden],#error[hidden],#status[hidden]{display:none}.box{text-align:center}.box progress{width:320px;margin-top:1rem}.box button{margin-top:1rem}#status{position:fixed;top:.5rem;right:.5rem;z-index:5;background:#131619d9;border:1px solid #2a2f36;border-radius:6px;padding:.35rem .7rem;font-size:.8rem;color:#c7cbd1}#status.warn{border-color:#e8a33d;color:#ffd28a}#status.alert{border-color:#f44336;background:#5a1410eb;color:#ffb4ab;font-weight:600;animation:statusPulse 1s ease-in-out infinite alternate}@keyframes statusPulse{0%{transform:scale(1)}to{transform:scale(1.06)}}.credit{margin-top:2.5rem;text-align:center;color:#6b727b;font-size:.85rem}.credit s{color:#555b63}#intro{position:fixed;inset:0;z-index:30;background:#0a1206;overflow:hidden}#intro .scene{position:absolute;inset:0;transform:translateY(-16vh) scale(1.05);transform-origin:50% 56%}#intro.p-sit .scene{transform:translateY(0) scale(1);transition:transform 1.5s cubic-bezier(.22,1.4,.36,1)}#intro.p-zoom .scene{transform:scale(8) translateY(1vh);transition:transform 1.5s cubic-bezier(.7,0,.9,.4)}#intro.p-zoom{transition:opacity .45s ease-in 1.15s;opacity:0}#intro .look{position:absolute;inset:0;transition:transform .7s ease}#intro.p-bl .look{transform:rotate(-2.5deg) translate(10vh)}#intro.p-br .look{transform:rotate(2.5deg) translate(-10vh)}#intro.p-phones .look{transform:none}#intro .room{position:absolute;inset:0;background:radial-gradient(70vh 40vh at 50% 8%,rgba(210,255,150,.14),transparent 70%),linear-gradient(180deg,#2c4a10,#35590f 45%,#23400a)}#intro .tube{position:absolute;top:3.5vh;left:50%;transform:translate(-50%);width:44vh;height:1.3vh;background:#ecffd2;border-radius:1vh;box-shadow:0 0 7vh 2vh #d2ff964d;animation:flicker 4s infinite}@keyframes flicker{0%,84%,90%,to{opacity:1}86%,88%{opacity:.45}}#intro .window{position:absolute;top:9vh;left:3vh;width:21vh;height:21vh;background:#060a03;border:1vh solid #1d330a;border-radius:.6vh;display:flex;flex-direction:column;justify-content:space-evenly;padding:0 1vh}#intro .window i{display:block;height:1.6vh;background:#17260a;border-radius:.4vh}#intro .poster{position:absolute;font-family:monospace;text-align:center;padding:1.2vh 1vh;border-radius:.4vh;line-height:1.4}#intro .p1{top:9vh;right:7vh;width:15vh;height:17vh;background:#101b30;border:.5vh solid #223252;color:#7df9ff;font-size:1.9vh;transform:rotate(2deg);text-shadow:0 0 1vh #0e7490}#intro .p2{top:13vh;right:26vh;width:13vh;background:#efe9d8;color:#333;font-size:1.5vh;transform:rotate(-3deg);box-shadow:0 .5vh 1.5vh #0006}#intro .p2 b{color:#d21f2c;font-size:2.6vh}#intro .neon{position:absolute;top:6vh;left:50%;transform:translate(-50%);font-family:monospace;font-weight:700;font-size:3.2vh;letter-spacing:.8vh;padding:.8vh 2vh;background:#040c04d9;border-radius:1vh;color:#7df9ff;text-shadow:0 0 1.2vh #19c8d8,0 0 4vh #0891b2;animation:flicker 3.1s infinite .4s}#intro .shelf{position:absolute;top:26.5vh;left:-5%;width:110%;height:2.4vh;background:linear-gradient(#4a7d21,#2c4f10);box-shadow:0 1vh 3vh #00000073}#intro .tower{position:absolute;top:13.5vh;width:7vh;height:13vh;background:linear-gradient(90deg,#16171b,#0a0b0e 55%,#131418);border-radius:.5vh .5vh 0 0;box-shadow:inset 0 .4vh #ffffff0f}#intro .tower:before{content:"";position:absolute;top:1.6vh;left:50%;transform:translate(-50%) rotate(-2deg);width:3.8vh;height:4.8vh;background:#f1ecdc;border-radius:.3vh}#intro .tower:after{content:attr(data-n);position:absolute;top:2.2vh;left:50%;transform:translate(-50%) rotate(-2deg);font-family:monospace;font-weight:700;font-size:3.4vh;color:#d21f2c}#intro .tower:nth-of-type(1){left:calc(50% - 46vh)}#intro .tower:nth-of-type(2){left:calc(50% - 27vh);transform:rotate(.6deg)}#intro .tower:nth-of-type(3){left:calc(50% - 8vh)}#intro .tower:nth-of-type(4){left:calc(50% + 12vh);transform:rotate(-.7deg)}#intro .tower:nth-of-type(5){left:calc(50% + 31vh)}#intro .counter{position:absolute;bottom:15vh;left:0;width:100%;height:6.5vh;background:linear-gradient(#4b8a28,#2e5716);border-top:.5vh solid #63a53a}#intro .counter-front{position:absolute;bottom:0;left:0;width:100%;height:15vh;background:#0d1806}#intro .keyboard{position:absolute;bottom:15.8vh;left:50%;transform:translate(-50%) perspective(40vh) rotateX(42deg);width:32vh;height:8vh;background:#d8d3c2;border-radius:.8vh;box-shadow:inset 0 .5vh 1vh #00000026,0 1vh 2vh #00000080}#intro .mouse{position:absolute;bottom:16.5vh;left:calc(50% + 21vh);width:4.6vh;height:7vh;background:#ddd8c8;border-radius:45% 45% 50% 50%;box-shadow:0 .8vh 1.5vh #00000080}#intro .crt{background:#17181c;border-radius:1.4vh;box-shadow:inset 0 -1vh 2vh #00000080,0 2vh 4vh #0000008c;padding:2vh}#intro .crt.mine{position:absolute;left:50%;bottom:20vh;transform:translate(-50%);width:52vh;height:40vh}#intro .numcard{position:absolute;top:-1.2vh;left:3vh;width:3.6vh;height:4.4vh;background:#f1ecdc;border-radius:.3vh;transform:rotate(-3deg);font-family:monospace;font-weight:700;font-size:3.2vh;color:#d21f2c;text-align:center}#intro .crt .screen{position:relative;width:100%;height:100%;border-radius:1vh;background:radial-gradient(ellipse at center,#12253a,#0a1522 75%);overflow:hidden;box-shadow:inset 0 0 4vh #000c}#intro .crt.mine .screen{box-shadow:inset 0 0 4vh #000c,0 0 8vh #78beff4d}#intro .screen-title{position:absolute;top:22%;width:100%;text-align:center;font-family:monospace;font-size:3.2vh;color:#d8b45a;text-shadow:0 0 1vh #7c5a10}#intro .screen-sub{position:absolute;bottom:18%;width:100%;text-align:center;font-family:monospace;font-size:1.9vh;color:#9fd6a0}#intro .blink{animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}#intro .cross{position:absolute;top:50%;left:50%;width:6vh;height:6vh;transform:translate(-50%,-50%);background:linear-gradient(#3f3,#3f3) 50% 0 / .6vh 2vh,linear-gradient(#3f3,#3f3) 50% 100% / .6vh 2vh,linear-gradient(#3f3,#3f3) 0 50% / 2vh .6vh,linear-gradient(#3f3,#3f3) 100% 50% / 2vh .6vh;background-repeat:no-repeat;filter:drop-shadow(0 0 .8vh #16a34a)}#intro .scanlines{position:absolute;inset:0;background:repeating-linear-gradient(transparent 0 .45vh,#00000047 .45vh .6vh);animation:scanroll 6s linear infinite}@keyframes scanroll{to{transform:translateY(.6vh)}}#intro .station{position:absolute;bottom:21.5vh}#intro .left-station{left:-6vh;transform:perspective(90vh) rotateY(30deg)}#intro .right-station{right:-6vh;transform:perspective(90vh) rotateY(-30deg)}#intro .crt.side{width:27vh;height:22vh;filter:brightness(.8)}#intro .glow-blue{background:radial-gradient(ellipse,#1c3a5e,#0b1626 75%);box-shadow:0 0 6vh #468cff59}#intro .glow-warm{background:radial-gradient(ellipse,#4e3a14,#201607 75%);box-shadow:0 0 6vh #ffaa3c4d}#intro .buddy{position:absolute;bottom:2vh;width:19vh;height:34vh;animation:bob 2.4s ease-in-out infinite}#intro .left-station .buddy{left:2vh}#intro .right-station .buddy{right:2vh;animation-delay:1.1s}@keyframes bob{50%{transform:translateY(.8vh)}}#intro .buddy .chair{position:absolute;top:8vh;left:-2.5vh;width:22vh;height:20vh;background:#2f9e44;border:.8vh solid #1d7a30;border-bottom:none;border-radius:4vh 4vh 0 0}#intro .buddy .torso{position:absolute;top:10vh;left:1vh;width:15vh;height:16vh;border-radius:6vh 6vh 0 0}#intro .shirt-brasil .torso{background:#d8b912;box-shadow:inset 0 1.6vh #1f7a33}#intro .shirt-branca .torso{background:#c9cdc6;box-shadow:inset 0 1.6vh #9aa39c}#intro .buddy .head{position:absolute;top:0;left:4.2vh;width:8.6vh;height:10.5vh;background:#a97b52;border-radius:44% 44% 40% 40%}#intro .buddy .head:before{content:"";position:absolute;top:-.6vh;left:-.4vh;width:9.4vh;height:6vh;background:#14100c;border-radius:5vh 5vh 2vh 2vh}#intro .buddy .phones{position:absolute;top:-1.6vh;left:3vh;width:11vh;height:6.5vh;border:1.1vh solid #06070a;border-bottom:none;border-radius:6vh 6vh 0 0}#intro .shirt-branca .phones{display:none}#intro .buddy .buddy-arm{position:absolute;top:15vh;width:14vh;height:4.8vh;border-radius:3vh;opacity:0}#intro .left-station .buddy-arm{left:13vh;transform-origin:left center}#intro .right-station .buddy-arm{right:13vh;transform-origin:right center}#intro .shirt-brasil .buddy-arm{background:#b99a12}#intro .shirt-branca .buddy-arm{background:#a7aba4}#intro .buddy .buddy-fist{position:absolute;top:-.8vh;width:6.2vh;height:6.2vh;background:#8a6547;border-radius:46%}#intro .left-station .buddy-fist{right:-3.4vh}#intro .right-station .buddy-fist{left:-3.4vh}#intro.p-bl .left-station .buddy-arm,#intro.p-br .right-station .buddy-arm{animation:buddyReach 1.3s ease-in-out forwards}@keyframes buddyReach{0%{opacity:0;transform:scaleX(.2)}30%{opacity:1;transform:scaleX(1)}60%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(.3)}}#intro .arm{position:absolute;bottom:-30vh;width:12vh;height:34vh;background:linear-gradient(#2b3441,#1d232c);border-radius:6vh 6vh 3vh 3vh}#intro .arm .fist{position:absolute;top:-6vh;left:50%;transform:translate(-50%);width:10.5vh;height:8.6vh;background:#b98a63;border-radius:42%;box-shadow:inset -1vh -1.2vh #00000038}#intro .left-arm{left:26vh;transform:translateY(8vh) rotate(14deg)}#intro .right-arm{right:26vh;transform:translateY(8vh) rotate(-14deg)}#intro.p-bl .left-arm{animation:bumpL 1.3s ease-in-out forwards}#intro.p-br .right-arm{animation:bumpR 1.3s ease-in-out forwards}@keyframes bumpL{0%{transform:translateY(8vh) rotate(14deg)}32%{transform:translate(-11vh,-22vh) rotate(62deg)}52%{transform:translate(-11vh,-22vh) rotate(62deg)}to{transform:translateY(14vh) rotate(14deg)}}@keyframes bumpR{0%{transform:translateY(8vh) rotate(-14deg)}32%{transform:translate(11vh,-22vh) rotate(-62deg)}52%{transform:translate(11vh,-22vh) rotate(-62deg)}to{transform:translateY(14vh) rotate(-14deg)}}#intro .pop{position:absolute;bottom:25vh;width:2vh;height:2vh;border:.5vh solid #ffe9a8;border-radius:50%;opacity:0}#intro .left-pop{left:19vh}#intro .right-pop{right:19vh}#intro.p-bl .left-pop,#intro.p-br .right-pop{animation:pop .45s .44s ease-out}@keyframes pop{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(4)}}#intro.p-bl{animation:microshake .16s .52s}#intro.p-br{animation:microshake2 .16s .52s}@keyframes microshake{25%{transform:translate(.5vh,-.3vh)}75%{transform:translate(-.4vh,.3vh)}}@keyframes microshake2{25%{transform:translate(-.5vh,-.3vh)}75%{transform:translate(.4vh,.3vh)}}#intro .caption{position:absolute;left:3vh;bottom:3vh;font-family:monospace;font-size:1.7vh;color:#b9c4a8;opacity:0;animation:fadeIn 1.2s .6s forwards}@keyframes fadeIn{to{opacity:.85}}#intro .headset{position:absolute;inset:0;pointer-events:none}#intro .headset .band{position:absolute;top:-60vh;left:50%;transform:translate(-50%);width:120vh;height:60vh;border:7vh solid #0a0b0e;border-bottom:none;border-radius:60vh 60vh 0 0}#intro .headset .cup{position:absolute;top:-70vh;width:34vh;height:60vh;background:#0a0b0e;box-shadow:inset 0 0 8vh #ffffff0a}#intro .headset .cup-l{left:-6vh;border-radius:0 14vh 14vh 0}#intro .headset .cup-r{right:-6vh;border-radius:14vh 0 0 14vh}#intro.p-phones .headset .band{animation:bandOn 1.5s ease-in-out forwards}#intro.p-phones .headset .cup-l{animation:cupL 1.5s ease-in-out forwards}#intro.p-phones .headset .cup-r{animation:cupR 1.5s ease-in-out forwards}@keyframes bandOn{45%{transform:translate(-50%,58vh)}to{transform:translate(-50%,64vh);opacity:0}}@keyframes cupL{45%{transform:translateY(72vh)}to{transform:translate(-16vh,78vh);opacity:.96}}@keyframes cupR{45%{transform:translateY(72vh)}to{transform:translate(16vh,78vh);opacity:.96}}#intro .vignette{position:absolute;inset:0;background:radial-gradient(ellipse 60vh 50vh at 50% 54%,transparent 40%,rgba(3,6,2,.93) 100%);opacity:0;transition:opacity 1.2s ease .5s;pointer-events:none}#intro.p-phones .vignette{opacity:1}#introSkip{position:absolute;right:2.5vh;bottom:2.5vh;z-index:2;background:transparent;color:#b9c4a8;border:1px solid #3f5a2a;font-size:1.7vh}#introSkip:hover{color:#e8a33d;border-color:#e8a33d}
