:root{color:#e5eae6;font-synthesis:none;--lime:#b7ee65;--muted:#819494;--border:#2c3c3e;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;background:#10191c;font-family:Trebuchet MS,Verdana,sans-serif}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--lime);outline-offset:5px}button:disabled{cursor:wait;opacity:.55}a{color:inherit;text-decoration:none}.app-shell{max-width:1920px;margin:auto;padding:0 34px}.masthead{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:102px;display:flex}.brand{align-items:center;gap:14px;display:flex}.brand-mark{font-family:var(--mono);letter-spacing:-3px;color:var(--lime);border:1px solid #688555;padding:12px 10px;font-size:21px}.brand-mark span{padding:0 2px}.brand-name{letter-spacing:3px;font-size:18px;font-weight:700}.brand-name small{font:9px var(--mono);letter-spacing:1.9px;color:var(--muted);margin-top:6px;display:block}.header-meta{font:10px var(--mono);letter-spacing:1px;align-items:center;gap:30px;display:flex}.experiment{color:var(--muted)}.experiment b{color:#d9e4db;margin-left:10px}.connection{align-items:center;gap:9px;display:flex}.connection i,.camera-bottom i{background:#e5ae60;border-radius:50%;width:6px;height:6px;display:inline-block}.connection.online i,.camera-bottom i{background:var(--lime);box-shadow:0 0 10px #b7ee6544}.connection.offline i{background:#f57581}.workspace{grid-template-columns:minmax(0,1fr) 350px;gap:24px;padding:26px 0;display:grid}.panel-heading{min-height:44px;font:10px var(--mono);letter-spacing:1px;justify-content:space-between;align-items:center;gap:8px;display:flex}.section-num{color:var(--muted);margin-right:10px}.live-tag{color:var(--lime);vertical-align:middle;border:1px solid #536e3e;margin-left:10px;padding:3px 5px;font-size:8px}.panel-heading>span{color:var(--muted);font-size:9px}#robot-name{color:var(--lime)}.viewport{background:#1a2c31;border:1px solid #536561;height:clamp(400px,100svh - 320px,780px);min-height:400px;position:relative;overflow:hidden}.viewport>canvas{outline:none;width:100%;height:100%;display:block}.camera-top,.camera-bottom{pointer-events:none;font:9px var(--mono);letter-spacing:1.3px;text-shadow:0 1px 4px #000;justify-content:space-between;display:flex;position:absolute;left:22px;right:22px}.camera-top{top:22px}.camera-bottom{bottom:20px}.camera-label{font-weight:700}.camera-label span{color:#b7cbc4;margin-left:8px;font-weight:400}.camera-bottom>span:first-child{align-items:center;gap:8px;display:flex}.corner{pointer-events:none;opacity:.6;border-color:#c3dc9a;width:12px;height:12px;position:absolute}.corner-tl{border-top:1px solid;border-left:1px solid;top:9px;left:9px}.corner-tr{border-top:1px solid;border-right:1px solid;top:9px;right:9px}.corner-bl{border-bottom:1px solid;border-left:1px solid;bottom:9px;left:9px}.corner-br{border-bottom:1px solid;border-right:1px solid;bottom:9px;right:9px}.reticle{pointer-events:none;border:1px solid #deefc750;border-radius:50%;width:22px;height:22px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reticle span{background:var(--lime);border-radius:50%;width:2px;height:2px;position:absolute;top:9px;left:9px}.entry-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(90deg,#101c20ed,#101c2088 65%,#101c2022);flex-direction:column;justify-content:center;padding:48px;transition:opacity .3s;display:flex;position:absolute;inset:0}.entry-overlay.hidden{opacity:0;pointer-events:none}.overline{font:9px var(--mono);letter-spacing:1.5px;color:var(--lime)}h1{letter-spacing:-3px;margin:24px 0;font-family:Avenir Next,Futura,Trebuchet MS,sans-serif;font-size:clamp(44px,5.2vw,78px);font-weight:600;line-height:1.02}h1 span{color:var(--lime)}.entry-overlay p{color:#a3b5b3;margin:0 0 27px;font-size:13px;line-height:1.7}.primary-button{background:var(--lime);color:#132018;border:0;justify-content:space-between;align-items:center;gap:25px;max-width:268px;padding:15px 20px;font-size:12px;font-weight:700;transition:background .2s;display:flex}.primary-button:hover{background:#d1ff90}.primary-button span{font-size:20px}.entry-overlay small{font:9px var(--mono);color:#8caaa8;margin-top:16px}.telemetry{border:1px solid var(--border);border-top:0;grid-template-columns:repeat(4,1fr);display:grid}.telemetry>div{border-right:1px solid var(--border);padding:22px 24px}.telemetry>div:last-child{border:0}.metric-label{font:8px var(--mono);color:var(--muted);letter-spacing:1.3px;margin-bottom:9px;display:block}.telemetry strong{font:25px var(--mono);letter-spacing:-1px;font-weight:400}.telemetry small{letter-spacing:0;color:var(--muted);margin-left:2px;font-size:10px}.control-strip{color:var(--muted);justify-content:space-between;align-items:center;padding:18px 0;font-size:10px;display:flex}.keyboard-hint{align-items:center;gap:5px;display:flex}kbd{font:10px var(--mono);color:#c3cfca;border:1px solid #3c4e4e;border-bottom-width:2px;border-radius:3px;justify-content:center;align-items:center;width:20px;height:23px;display:inline-flex}.keyboard-hint kbd:last-of-type{margin-right:5px}.hint-divider{color:#49605d;margin:0 8px}.text-button{color:#b6c5bb;background:0 0;border:0;padding:5px 0;font-size:10px}.text-button span{color:var(--lime);margin-left:10px}.sidebar{flex-direction:column;gap:16px;display:flex}.overview-panel,.participants-panel{border-bottom:1px solid var(--border);padding-bottom:17px}.top-label{letter-spacing:.5px!important;font-size:8px!important}.overview-viewport{border:1px solid var(--border);background:#17262b;height:268px;position:relative}.overview-viewport canvas{width:100%;height:100%;display:block}.north{font:9px var(--mono);color:var(--lime);position:absolute;top:8px;right:9px}.map-caption{font:8px var(--mono);color:var(--muted);letter-spacing:.7px;justify-content:space-between;align-items:center;margin-top:12px;display:flex}.map-caption>span:first-child{align-items:center;gap:6px;display:flex}.own-dot{background:var(--lime);border-radius:50%;width:6px;height:6px;display:inline-block}.count{color:var(--lime)!important;font-size:16px!important}.participants{scrollbar-color:#52635b transparent;scrollbar-width:thin;max-height:154px;overflow:auto}.participant{font:10px var(--mono);border-bottom:1px solid #243234;justify-content:space-between;align-items:center;padding:11px 0;display:flex}.participant:last-child{border:0}.participant-name{align-items:center;gap:10px;display:flex}.participant-dot{border-radius:50%;width:7px;height:7px}.participant small{color:var(--muted);font-size:8px}.participant .you{color:var(--lime);border:1px solid #56703f;margin-left:7px;padding:2px 4px;font-size:7px}.invite-button{color:#d6e1d6;background:#1b2a2d;border:1px solid #34484a;justify-content:space-between;width:100%;margin-top:12px;padding:13px;font-size:10px;display:flex}.invite-button:hover{border-color:#7c9d69}.invite-button span{color:var(--lime)}.invite-note{color:var(--muted);margin:9px 0 0;font-size:10px;line-height:1.65}.field-notes{padding-top:3px}.field-notes .overline{color:var(--muted);font-size:8px}.field-notes p{color:#afbfba;margin:12px 0 19px;font-size:12px;line-height:1.85}.engine-badge{color:#7b9690;font:8px var(--mono);letter-spacing:.3px;align-items:center;gap:9px;display:flex}.engine-dot{background:var(--lime);width:5px;height:5px}.engine-badge>span:not(.engine-dot){color:#405853}footer{border-top:1px solid var(--border);font:8px var(--mono);letter-spacing:1px;color:#607d79;justify-content:space-between;padding:18px 0 22px;display:flex}.footer-divider{margin:0 12px}.error-message{color:#ffced1;background:#512c32e8;border:1px solid #bd6e77;padding:14px;font-size:12px;line-height:1.6;position:absolute;bottom:55px;left:20px;right:20px}.collision-flash{pointer-events:none;opacity:0;border:3px solid #ffb66b;position:absolute;inset:0;box-shadow:inset 0 0 40px #ff9d3522}.collision-flash.active{opacity:1}.empty-state{color:var(--muted);margin:10px 0;font-size:11px}.touch-controls{display:none}button[data-key]{touch-action:none;-webkit-user-select:none;user-select:none}@media (width>=1600px){.workspace{grid-template-columns:minmax(0,1fr) 390px;gap:32px}.overview-viewport{height:300px}.panel-heading{min-height:50px}}@media (width<=1100px){.app-shell{padding:0 20px}.workspace{grid-template-columns:minmax(0,1fr) 290px;gap:18px}.overview-viewport{height:226px}.telemetry>div{padding:18px 14px}.telemetry strong{font-size:22px}.entry-overlay{padding:30px}.keyboard-hint{gap:3px;font-size:9px}kbd{width:17px}.hint-divider{margin:0 3px}.experiment,.top-label{display:none}}@media (width<=760px){.app-shell{padding:0 14px}.masthead{height:78px}.brand-mark{padding:8px;font-size:17px}.brand-name{letter-spacing:2px;font-size:13px}.brand-name small{letter-spacing:1px;font-size:7px}.header-meta{letter-spacing:0;font-size:8px}.workspace{flex-direction:column;gap:12px;padding:12px 0;display:flex}.viewport{height:52svh;min-height:350px}.panel-heading{min-height:38px;font-size:9px}.entry-overlay{padding:26px}.entry-overlay h1{font-size:52px}.entry-overlay p{font-size:12px}.entry-overlay small,.overline{font-size:8px}.camera-top,.camera-bottom{font-size:8px;left:16px;right:16px}.telemetry>div{padding:15px 12px}.telemetry strong{font-size:20px}.metric-label{letter-spacing:.7px;font-size:7px}.sidebar{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}.overview-viewport{height:200px}.map-caption{letter-spacing:0;gap:5px;font-size:7px}.map-caption>span:last-child,.field-notes{display:none}.participants-panel .panel-heading{font-size:8px}.participants-panel .section-num{margin-right:4px}.participants{max-height:120px}.invite-button{text-align:left;gap:5px;padding:9px;font-size:9px}.invite-note{font-size:9px}.control-strip{padding:12px 0}.touch-controls{justify-content:space-between;align-items:flex-end;padding:0 0 15px;display:flex}.touch-controls button{width:48px;height:43px;color:var(--lime);background:#233537;border:1px solid #4b635c;border-radius:4px;font-size:22px}.touch-controls button.pressed{background:#587749}.touch-move{grid-template-columns:repeat(3,48px);gap:5px;display:grid}.touch-move button:first-child{grid-column:2}.touch-move button:nth-child(2){grid-column:1}.touch-look{gap:7px;display:flex}.keyboard-hint{font-size:8px}footer{letter-spacing:.5px;font-size:7px}.footer-divider{margin:0 6px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media (width<=760px){.workspace{position:relative}.sidebar{display:block}.overview-panel{z-index:2;background:#10191ce8;border:1px solid #536561;width:128px;padding:5px;position:absolute;top:68px;right:11px}.overview-panel .panel-heading{letter-spacing:.3px;min-height:17px;font-size:7px}.overview-panel .section-num,.overview-panel .map-caption{display:none}.overview-viewport{border:0;height:96px}.overview-viewport .north{font-size:7px;top:2px;right:2px}.camera-top>#heading{display:none}.entry-overlay h1{font-size:44px}.participants-panel{padding-top:0}.participants-panel .panel-heading{font-size:9px}.participants{max-height:130px}.invite-button{padding:12px;font-size:11px}.invite-note{font-size:10px}}.editor-launch{text-align:left;color:#dce7d9;background:#1b2b2b;border:1px solid #4c6450;align-items:center;gap:12px;width:100%;padding:15px 13px;transition:border-color .2s,background .2s;display:flex}.editor-launch:hover{border-color:var(--lime);background:#26392f}.editor-launch>span:nth-child(2){flex:1;font-size:12px}.editor-launch small{color:#89a095;margin-top:5px;font-size:9px;display:block}.editor-launch-icon{color:var(--lime);font-size:28px}.editor-launch>span:last-child{color:var(--lime);font-size:20px}.maze-editor{color:#e5eae6;background:#111e21;border:1px solid #50695b;width:min(1100px,100% - 48px);max-width:none;max-height:calc(100svh - 40px);padding:0;overflow:auto;box-shadow:0 20px 100px #0009}.maze-editor::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#061014cf}.editor-shell{padding:28px 32px 0}.editor-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:26px;display:flex}.editor-header h2{letter-spacing:-1.2px;margin:12px 0 0;font-family:Avenir Next,Futura,Trebuchet MS,sans-serif;font-size:32px;font-weight:500;line-height:1.15}.editor-header h2 span{color:var(--lime)}.editor-close{color:#c1d1c5;background:#1e3030;border:1px solid #425953;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:26px;display:grid}.editor-close:hover{border-color:var(--lime)}.editor-body{grid-template-columns:218px minmax(0,1fr);gap:28px;display:grid}.editor-label{font:9px var(--mono);letter-spacing:1px;color:#849e93}.editor-brushes{flex-direction:column;gap:8px;margin:14px 0;display:flex}.brush-button{text-align:left;color:#cbd9ce;background:#192b2c;border:1px solid #38504a;align-items:center;gap:12px;width:100%;padding:13px 11px;display:flex}.brush-button.selected{border-color:var(--lime);color:#e2f6cc;background:#253c2e}.brush-button>span:nth-child(2){flex:1;font-size:13px}.brush-button small{color:#89a394;margin-top:5px;font-size:9px;display:block}.brush-button kbd{border-color:#536957;width:17px;height:20px;font-size:9px}.brush-sample{border:1px solid #96ac90;flex-shrink:0;width:25px;height:25px}.wall-sample{background:#849c8a;box-shadow:inset 0 4px #b0bfa0}.floor-sample{background-color:#182b2f;background-image:linear-gradient(#5b716930 1px,#0000 1px),linear-gradient(90deg,#5b716930 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:8px 8px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box}.editor-history{grid-template-columns:1fr 1fr;gap:6px;display:grid}.editor-history button{color:#cfddce;background:#1c2c2e;border:1px solid #3f554f;padding:10px 6px;font-size:10px}.editor-history button:disabled{opacity:.35;cursor:default}.editor-secondary{border-bottom:1px solid #31473f;flex-direction:column;align-items:flex-start;gap:12px;padding:20px 0;display:flex}.editor-secondary button{color:#a7bdac;background:0 0;border:0;padding:0;font-size:10px}.editor-secondary button:hover{color:var(--lime)}.editor-help{padding-top:20px}.editor-help p{color:#8fa99d;margin:10px 0;font-size:11px;line-height:1.75}.editor-legend{grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;display:grid}.editor-legend span{color:#b1c3b5;font:9px var(--mono);align-items:center;gap:7px;display:flex}.editor-legend i{border:1px solid #5c7867;width:10px;height:10px;display:inline-block}.legend-wall{background:#90a88d}.legend-floor{background:#1c3236}.legend-spawn{background:#354c2a;border-color:#9cc85d!important}.legend-robot{background:#62d9ed;border-radius:50%;border:0!important}.editor-plan-heading,.editor-plan-caption{font:9px var(--mono);letter-spacing:.5px;color:#88a496;justify-content:space-between;align-items:center;gap:8px;display:flex}.editor-plan-heading{min-height:24px;padding-bottom:13px}.editor-plan-heading b{color:#c2d2bf;margin-left:5px;font-weight:400}.editor-grid-frame{background:#0d181b;border:1px solid #415e4f;max-width:680px;margin:0 auto;padding:8px}.editor-grid{touch-action:none;-webkit-user-select:none;user-select:none;--columns:25;flex-direction:column;gap:0;display:flex}.editor-grid-row{grid-template-columns:repeat(var(--columns),minmax(0,1fr));display:grid}.editor-cell{appearance:none;aspect-ratio:1;touch-action:none;cursor:crosshair;background:#1b3034;border:1px solid #39524b;border-top:0;border-left:0;border-radius:0;min-width:0;margin:0;padding:0;display:block;position:relative}.editor-grid-row:first-child .editor-cell{border-top:1px solid #39524b}.editor-cell:first-child{border-left:1px solid #39524b}.editor-cell.wall{background:#829c8a;box-shadow:inset 0 2px #adc29a}.editor-cell.spawn{background:repeating-linear-gradient(135deg,#344a2e,#344a2e 3px,#30452d 3px 6px);border-color:#557143}.editor-cell.protected{cursor:not-allowed;opacity:.75}.editor-cell.changed{outline:1px solid var(--lime);outline-offset:-2px}.editor-cell:hover{box-shadow:inset 0 0 0 2px #e7ffa7}.editor-cell.protected:hover{box-shadow:inset 0 0 0 2px #dcb982}.editor-cell:focus-visible{outline-offset:-2px;z-index:1;outline:2px solid #efffc8}.editor-cell.has-robot:after{content:"";background:var(--robot-color,#62d9ed);pointer-events:none;border-radius:50%;width:46%;height:46%;position:absolute;top:27%;left:27%;box-shadow:0 0 0 1px #081c17,0 0 5px #081c1788}.editor-grid.read-only{opacity:.6}.editor-grid.read-only .editor-cell{cursor:default}.editor-plan-caption{padding-top:13px;font-size:8px}#editor-changes{color:var(--lime)}.editor-feedback{color:#acc6aa;background:#1b2e29;border:1px solid #355744;margin:22px 0 0;padding:12px 14px;font-size:11px;line-height:1.6}.editor-feedback[data-tone=error]{color:#f4ca9a;background:#352c24;border-color:#956b49}.editor-feedback[data-tone=success]{color:#d0f1b1;border-color:#6f954a}.editor-conflict{padding-top:10px}.editor-conflict[hidden]{display:none}.editor-conflict button{color:#e3f2c5;background:#293b2d;border:1px solid #657d4d;padding:9px 12px;font-size:11px}.editor-footer{letter-spacing:0;color:#819f8e;border-top:1px solid #334c42;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;padding:18px 0;font:10px Trebuchet MS,Verdana,sans-serif;display:flex}.editor-footer>span{max-width:300px;line-height:1.65}.editor-footer>div{align-items:center;gap:20px;display:flex}.editor-cancel{color:#b4cbb6;background:0 0;border:0;padding:8px 0;font-size:11px}.editor-footer .primary-button{white-space:nowrap;gap:25px;padding:12px 16px;font-size:11px}.editor-footer .primary-button:disabled{opacity:.4;cursor:default}@media (width<=760px){.editor-launch{margin:3px 0 18px}.maze-editor{width:calc(100% - 20px);max-height:calc(100svh - 20px)}.editor-shell{padding:20px 15px 0}.editor-header{margin-bottom:20px}.editor-header h2{letter-spacing:-.7px;max-width:240px;font-size:25px}.editor-header .overline{letter-spacing:1px;font-size:7px}.editor-close{width:29px;height:29px;font-size:23px}.editor-body{flex-direction:column;gap:16px;display:flex}.editor-tools>.editor-label{display:none}.editor-brushes{grid-template-columns:1fr 1fr;gap:8px;margin:0 0 9px;display:grid}.brush-button{gap:8px;padding:10px 8px}.brush-button>span:nth-child(2){font-size:12px}.brush-button small{font-size:8px;line-height:1.4}.brush-button kbd{display:none}.brush-sample{width:20px;height:20px}.editor-help{display:none}.editor-history{gap:8px;width:100%}.editor-history button{padding:9px;font-size:10px}.editor-secondary{border:0;flex-direction:row;justify-content:space-between;gap:7px;padding:14px 0 0}.editor-secondary button{text-align:left;font-size:9px}.editor-legend{flex-wrap:wrap;gap:15px;margin-top:14px;display:flex}.editor-legend span{gap:5px;font-size:8px}.editor-legend i{width:8px;height:8px}.editor-grid-frame{padding:4px}.editor-cell.wall{box-shadow:inset 0 1px #adc29a}.editor-plan-heading,.editor-plan-caption{font-size:8px}.editor-feedback{margin-top:16px;padding:10px;font-size:10px}.editor-footer{flex-direction:column;align-items:stretch;gap:13px;margin-top:15px;padding:15px 0}.editor-footer>span{max-width:none;font-size:10px}.editor-footer>div{justify-content:space-between;gap:9px}.editor-cancel{font-size:10px}.editor-footer .primary-button{gap:9px;padding:11px 10px;font-size:10px}}
