:root{color-scheme:dark;--bg:#11130f;--panel:#191c16;--line:#34382c;--muted:#909582;--text:#eff1e7;--acid:#c4f564;--mono:'Courier New',monospace;--color:#c4f564}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:14px}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid var(--acid);outline-offset:4px}button{border:0}a{color:inherit;text-decoration:none}button svg{width:20px;fill:currentColor}[hidden]{display:none!important}.header{height:95px;max-width:1600px;margin:auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-weight:800;font-size:36px;letter-spacing:-2px;display:flex;align-items:center}.brand svg{width:30px;height:30px;margin-right:12px;fill:none;stroke:var(--acid);stroke-width:3}.brand-dot{color:var(--acid)}.header-note{font:10px var(--mono);letter-spacing:1.5px;color:var(--muted)}.header-note span{color:var(--text)}.quiet-button{background:none;border:1px solid var(--line);padding:12px 16px;font-size:12px;display:flex;gap:14px;align-items:center}.quiet-button:hover,.small-button:hover,.icon-button:hover{border-color:var(--acid);color:var(--acid)}main{max-width:1600px;padding:44px 48px 0;margin:auto}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px;gap:20px}.eyebrow{font:10px var(--mono);letter-spacing:1.3px;font-weight:600;color:#b7bca9}.live-dot{display:inline-block;width:6px;height:6px;background:var(--acid);border-radius:50%;margin-right:7px;vertical-align:1px;box-shadow:0 0 10px #c4f56224}h1{font-size:clamp(30px,3.7vw,64px);letter-spacing:-2.8px;margin:14px 0 10px;font-weight:900;line-height:1.06}.acid{color:var(--acid)}.outline{color:transparent;-webkit-text-stroke:1px #9aa18c}p{line-height:1.6}.intro p{margin:0;color:var(--muted);font-size:13px}.round-badge{border-left:1px solid var(--line);padding:8px 0 8px 26px;display:flex;flex-direction:column;gap:11px;flex-shrink:0}.round-badge strong{font:26px var(--mono);font-weight:600;letter-spacing:-1px}.mono{font:10px var(--mono);color:var(--muted)}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.world-panel{border:1px solid var(--line);min-width:0;display:flex;flex-direction:column}.panel-toolbar{height:51px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 18px;gap:10px;background:#1a1d16}.world-label{display:flex;align-items:center;gap:8px;font:11px var(--mono)}.world-label .live-dot{margin-right:0}.world-label strong{letter-spacing:1.2px}.tag{font:8px var(--mono);padding:4px 6px;background:#272e1e;color:var(--acid);letter-spacing:.6px}.world-actions{display:flex;align-items:center;gap:12px}.small-button{background:none;color:#a4aa98;font:10px var(--mono);padding:6px 0}.icon-button{font-size:23px;line-height:1;background:none;color:#afb6a0;padding:5px}.canvas-wrap{position:relative;flex:1;min-height:535px;background:#0e100d;overflow:hidden}.canvas-wrap canvas{width:100%;height:100%;position:absolute;inset:0;display:block;image-rendering:pixelated;outline:none;touch-action:none}.camera-label{position:absolute;top:20px;left:20px;display:flex;align-items:center;gap:9px;background:#12160fdf;padding:9px 12px;border:1px solid #38402d;font:9px var(--mono);letter-spacing:.5px;pointer-events:none;color:#d2d9c6}.crosshair{font-size:17px;color:var(--acid)}.canvas-caption{position:absolute;bottom:20px;left:20px;padding:9px 12px;background:#12160fe6;color:#afb7a0;font:10px var(--mono);pointer-events:none}.locator{position:absolute;right:18px;bottom:18px;display:flex;align-items:center;gap:9px;pointer-events:none}.locator span{font:8px/1.6 var(--mono);color:#7f886f}.locator-map{width:50px;height:50px;border:1px solid #424b35;background:repeating-linear-gradient(0deg,transparent 0 11px,#30382a66 11px 12px),repeating-linear-gradient(90deg,#12160f 0 11px,#30382a66 11px 12px);position:relative}.locator-map i{position:absolute;width:4px;height:4px;background:var(--acid);transform:translate(-50%,-50%);left:50%;top:50%}.canvas-footer{height:43px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;font:9px var(--mono);color:#a0a78f;border-top:1px solid var(--line);gap:12px}.canvas-footer>span{display:flex;gap:4px;align-items:center}.pixel-key{width:7px;height:7px;background:var(--color);display:inline-block;margin-right:5px}kbd{font:9px var(--mono);padding:3px 4px;border:1px solid #414835;margin-right:1px}.sidebar{display:flex;flex-direction:column;gap:14px}.join-panel,.layers-panel,.rules-panel{border:1px solid var(--line);padding:21px;background:#191c16}.section-number{color:#707963;margin-right:6px}.identity{display:flex;gap:19px;align-items:center;margin:26px 0}.my-pixel{display:block;width:25px;height:25px;flex-shrink:0;background:var(--color);box-shadow:0 0 0 7px #252b1e,0 0 0 8px #414b31;margin:0 9px}.identity h2{font-size:22px;line-height:1.12;letter-spacing:-.5px;margin:0 0 8px}.identity p{font-size:10px;color:var(--muted);margin:0}.field-label{display:flex;justify-content:space-between;font:9px var(--mono);letter-spacing:.5px;color:#b2baa1;margin-bottom:11px}.field-label span{font-size:8px;color:#78826a}.palette{display:flex;justify-content:space-between;gap:8px;margin-bottom:22px}.palette>button,.custom-swatch{width:31px;height:31px;background:var(--swatch);position:relative;border:3px solid #191c16;outline:1px solid transparent}.palette>button[aria-pressed=true]{outline-color:var(--swatch)}.palette>button[aria-pressed=true]:after{content:'✓';position:absolute;color:#182012;inset:4px;font-size:13px;font-weight:bold}.custom-swatch{border:1px dashed #7b846c;background:none;display:flex;align-items:center;justify-content:center}.custom-swatch input{opacity:0;position:absolute;inset:0;cursor:pointer;width:100%;height:100%;padding:0}.custom-swatch span{pointer-events:none;color:#bac0ae;font-size:17px}.primary-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--acid);color:#1b2413;min-height:46px;padding:12px 16px;font-weight:bold;font-size:12px}.primary-button:hover{background:#d4ff83}.primary-button svg{width:18px;height:18px}.primary-button .button-arrow{margin-left:auto;font-size:18px}.join-note{text-align:center;font:8px/1.5 var(--mono);color:#858e75;margin:12px 0 0}.layers-panel{flex:1;min-height:187px}.layer-icon{float:right;font-size:19px;margin-top:-6px}.layer-heading{display:flex;align-items:center;justify-content:space-between;margin-top:18px;gap:8px}.layer-heading h2{font-size:24px;letter-spacing:-.7px;margin:0;white-space:nowrap}.layer-heading h2 span:first-child{color:var(--acid)}.layer-heading .mono{font-size:8px}.muted{color:var(--muted);font-size:11px;margin:8px 0 17px}.layer-list{display:flex;flex-direction:column;gap:4px;max-height:152px;overflow:auto}.layer-row{display:flex;align-items:center;gap:9px;padding:8px 9px;background:#22271d;font-size:10px;min-height:31px}.layer-row i{display:inline-block;width:10px;height:10px;background:var(--layer-color);flex-shrink:0}.layer-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer-row small{margin-left:auto;font:8px var(--mono);color:#8a9579}.empty-layers{border:1px dashed #3a4231;padding:13px;font:9px var(--mono);color:#7f8a70}.rules-panel{background:transparent;padding:19px 21px}.rules-panel ol{padding-left:17px;color:#a4ad97;line-height:1.9;font-size:11px;margin:14px 0 10px}.rules-panel li::marker{font:10px var(--mono);color:#717c62}.rules-panel strong{font-weight:400;color:#e1e6d7}.rules-footnote{font:8px var(--mono);color:#7f8971}.world-stats{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;border:1px solid var(--line);margin-top:20px}.world-stats>div{padding:23px 25px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.world-stats>div:last-child{border:0}.world-stats .eyebrow{font-size:8px;letter-spacing:.8px}.world-stats strong{font:27px var(--mono);letter-spacing:-1.6px}.world-stats strong span{color:#727d62;font-size:20px}.world-stats small{color:#89947a;font-size:10px}.leaderboard-section{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;padding:46px 0}.leaderboard-heading h2{font-size:23px;letter-spacing:-.5px;margin:12px 0 7px}.leaderboard-heading p{font-size:11px;color:#8d9780;margin:0}.leaderboard-empty{display:flex;gap:22px;align-items:center;min-height:90px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px}.leaderboard-empty>span{font:18px var(--mono);color:#78866b}.leaderboard-empty small{display:block;margin-top:8px;color:#8c987c;font-size:10px}.leaderboard-empty>span:last-child{margin-left:auto;color:var(--acid)}.score-row{display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding:13px 0;font-size:12px}.score-row .rank{font:10px var(--mono);color:#81906f}.score-row i{width:11px;height:11px;display:block}.score-row strong{margin-left:auto;color:var(--acid);font:16px var(--mono)}.score-row small{color:#859477;font:9px var(--mono)}footer{max-width:1504px;margin:auto;border-top:1px solid var(--line);padding:24px 0 30px;display:flex;align-items:center;justify-content:space-between;color:#738263;font:8px var(--mono);letter-spacing:.5px}.footer-brand{font:bold 22px Arial;color:#a4b18f;letter-spacing:-1px}.notice{border:1px solid #798e52;background:#26331b;padding:14px 20px;font-size:12px;margin-bottom:20px;color:#dcf7b4}.player-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px;border-top:1px solid var(--line);padding-top:12px;font:7px var(--mono);color:#879675}.player-stats strong{display:block;font:18px var(--mono);color:var(--text);margin-bottom:5px}.text-button{font:10px var(--mono);background:none;color:var(--acid);padding:10px 0;text-align:left;display:block}.player-stats .text-button{margin-left:auto;font-size:8px}.dpad{display:none;position:absolute;bottom:62px;right:18px;grid-template-columns:repeat(3,42px);gap:5px}.dpad button{width:42px;height:42px;background:#2e3b23e8;border:1px solid #64774b;font:21px var(--mono);touch-action:none}.dpad button:first-child{grid-column:2}.dpad button:nth-child(2){grid-column:1}.dpad button:active{background:var(--acid);color:#182012}dialog{max-width:480px;width:calc(100% - 32px);border:1px solid #536241;background:#191f14;color:var(--text);padding:28px;box-shadow:0 20px 100px #0009}dialog::backdrop{background:#050803bf;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;align-items:center}dialog h2{font-size:30px;letter-spacing:-1px;margin:20px 0 14px}dialog p{color:#a6b496;font-size:12px;margin-bottom:24px}.text-input{background:#10160c;border:1px solid #455737;color:var(--text);padding:13px;width:100%;font-size:13px;margin-bottom:17px}.text-input.mono{font-size:10px}.check-label{display:flex;align-items:center;gap:8px;color:#a9b899;font-size:12px;margin:0 0 22px;accent-color:var(--acid)}.roster{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.roster button{font-size:11px;background:#2a3620;padding:8px 10px;color:#cbdcba}.canvas-wrap:fullscreen{background:#0e100d;width:100vw;height:100vh}.overlay,.overlay .canvas-wrap{background:#10140e!important;width:100vw;height:100vh;overflow:hidden;min-height:0}.overlay .overlay-hud{position:absolute;top:20px;left:20px;display:flex;gap:14px;align-items:center;background:#11180dde;border:1px solid #51623e;padding:12px 18px;font:14px var(--mono);color:#e4f0d9}.overlay .overlay-hud strong{color:var(--acid)}.overlay .overlay-hud .live-dot{margin:0}.overlay #overlay-details{font-size:11px;color:#b7c6a7}.overlay .notice{position:absolute;bottom:20px;left:20px;right:20px}.offline{background:#e6a568!important}.overlay.no-hud .overlay-hud{display:none}
@media(min-width:1500px){.game-layout{grid-template-columns:minmax(0,1fr) 320px}.canvas-wrap{min-height:590px}.identity h2{font-size:24px}.join-panel,.layers-panel{padding:24px}}
@media(max-width:1100px){.header{padding:0 26px}.header-note{display:none}main{padding:32px 26px 0}.round-badge{padding-left:17px}.round-badge .eyebrow{font-size:8px}.round-badge strong{font-size:23px}.game-layout{grid-template-columns:minmax(0,1fr) 270px;gap:14px}.join-panel,.layers-panel,.rules-panel{padding:18px}.palette{gap:5px}.palette>button,.custom-swatch{width:29px;height:29px}.canvas-footer>span:last-child{display:none}.locator span{display:none}.world-stats>div{padding:20px 16px}.world-stats strong{font-size:23px}.world-stats small{font-size:9px}footer{margin:0 26px}.identity{gap:13px}.identity h2{font-size:21px}}
@media(max-width:760px){.header{height:73px;padding:0 20px}.brand{font-size:30px}.brand svg{width:25px;height:25px}.quiet-button{font-size:10px;gap:8px;padding:10px}main{padding:27px 16px 0}.intro{margin-bottom:24px}.intro .eyebrow{font-size:8px;letter-spacing:.7px}h1{font-size:clamp(29px,6.4vw,47px);letter-spacing:-1.5px}.intro p{font-size:11px}.round-badge{display:none}.game-layout{display:flex;flex-direction:column}.world-panel{order:1}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:12px;order:0}.join-panel{grid-column:1 / -1;padding:17px}.identity{margin:18px 0}.identity h2 br{display:none}.identity h2{font-size:22px}.identity p{font-size:11px}.palette{justify-content:flex-start;gap:13px}.palette>button,.custom-swatch{width:32px;height:32px}.join-panel .primary-button{min-height:43px}.join-note{font-size:9px}.layers-panel{min-height:0}.layers-panel,.rules-panel{padding:15px}.rules-panel .eyebrow,.layers-panel .eyebrow{font-size:8px;letter-spacing:.6px}.rules-panel ol{font-size:10px;margin-top:14px;line-height:1.9}.rules-footnote{font-size:7px;line-height:1.5;display:block}.layer-heading{margin-top:12px;flex-wrap:wrap}.layer-heading h2{font-size:20px}.layer-list{max-height:98px}.muted{font-size:10px;margin-bottom:12px}.layer-icon{display:none}.canvas-wrap{min-height:480px}.canvas-footer{font-size:8px;padding:0 12px}.canvas-caption{bottom:16px;left:12px;font-size:8px;max-width:calc(100% - 85px)}.camera-label{top:13px;left:13px;font-size:8px}.dpad{display:grid}.world-stats{grid-template-columns:1fr 1fr;margin-top:14px}.world-stats>div:nth-child(2){border-right:0}.world-stats>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.world-stats strong{font-size:25px}.world-stats small{font-size:9px}.leaderboard-section{grid-template-columns:1fr;gap:24px;padding:33px 0}.leaderboard-heading h2{font-size:22px}footer{margin:0 16px;padding:20px 0;gap:15px}footer>span:nth-child(2){display:none}body.playing .sidebar{order:1}body.playing .world-panel{order:0}body.playing .join-panel .identity{margin:16px 0}body.playing .canvas-wrap{min-height:55vh}.overlay .overlay-hud{top:10px;left:10px;gap:8px;padding:10px;font-size:11px}.overlay #overlay-details{font-size:9px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.chat-bubbles{position:absolute;inset:0;pointer-events:none;overflow:hidden}.chat-bubble{position:absolute;top:0;left:0;max-width:min(250px,calc(100% - 24px));width:max-content;padding:9px 12px;background:#11190ff5;border:1px solid #6b8054;box-shadow:0 3px 14px #0007;border-radius:5px;color:#f1f5eb;font:14px/1.4 Arial,sans-serif;overflow-wrap:anywhere;white-space:pre-wrap}.chat-bubble strong{display:block;font:700 10px/1.4 var(--mono);margin-bottom:4px}.chat-bubble:after{content:'';position:absolute;top:100%;left:var(--tail-x,50%);margin-left:-5px;border:5px solid transparent;border-top-color:#6b8054}.chat-controls{position:absolute;left:16px;right:16px;bottom:14px;pointer-events:none}.chat-controls button,.chat-controls form{pointer-events:auto}.chat-open{display:flex;align-items:center;gap:14px;background:#151e10ed;border:1px solid #62794a;color:#e3edd6;padding:10px 13px;font:12px var(--mono)}.chat-open kbd{font:9px var(--mono);color:#a1b989}.chat-controls form{max-width:540px;padding:9px;background:#11190ff5;border:1px solid #62794a;box-shadow:0 3px 15px #0006}.chat-compose{display:flex;align-items:center;gap:6px}.chat-compose input{width:100%;min-width:0;border:1px solid #4b5e38;background:#0d1409;color:#f1f5eb;padding:10px;font-size:16px}.chat-compose button{padding:11px 12px;background:var(--acid);color:#14200b;font-size:12px}.chat-compose #chat-close{padding:7px;background:transparent;color:#cbdcbb;font-size:22px}.chat-hint{font:9px/1.4 var(--mono);color:#b1c59b;margin-top:7px}.overlay .chat-bubble{font-size:16px}.overlay .chat-bubble strong{font-size:11px}@media(max-width:760px){.chat-controls{left:10px;right:10px;bottom:10px}.chat-open{padding:9px 11px}.canvas-wrap:has(#chat-form:not([hidden])) .dpad{visibility:hidden}}
.maze-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.maze-actions #back-to-start{font-size:11px}
.ground-signs{position:absolute;left:50%;top:calc(50% + 27px);transform:translateX(-50%);width:max-content;max-width:calc(100% - 28px);max-height:145px;overflow-y:auto;box-shadow:0 4px 15px #0007;border:1px solid #9b7b4d;border-radius:3px;background:#302717ed;padding:10px 14px;color:#fff1d6}.ground-sign{max-width:310px;overflow-wrap:anywhere}.ground-sign+.ground-sign{border-top:1px solid #6a5637;margin-top:8px;padding-top:8px}.ground-sign strong{display:block;font:9px/1.5 var(--mono);color:#d8b881;margin-bottom:3px}.ground-sign span{font:15px/1.4 Arial,sans-serif}.sign-count{font:10px var(--mono);color:#b4c29f;margin:-4px 0 15px}#signs-dialog p{margin-bottom:17px}#sign-capacity,#sign-feedback{font-size:12px;color:#e4c58d}#signs-dialog{max-height:calc(100dvh - 32px);overflow-y:auto}.sign-list-label{margin-top:24px}.my-signs{font-size:11px;color:#aebda0;line-height:1.5}.my-sign{display:flex;gap:15px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:11px 0}.my-sign>div{min-width:0;overflow-wrap:anywhere}.my-sign strong{font-size:13px;font-weight:400;color:#eff1e7;display:block}.my-sign small{font:9px var(--mono);color:#9aa98b}.my-sign button{flex-shrink:0}@media(max-width:760px){.maze-actions{gap:6px}.maze-actions .chat-open{font-size:11px;padding:9px 10px}.maze-actions .chat-open kbd{display:none}.ground-signs{max-height:108px}.ground-sign span{font-size:14px}}
@media(max-width:760px){body:not(.overlay) .ground-signs{left:10px;transform:none;width:calc(100% - 168px);max-width:none;max-height:min(108px,calc(50% - 85px))}}
