.l3-root{--hud:1;--stL:0px;--stT:0px;--S:100vw;--H:calc(100vw * 9 / 16);position:fixed;inset:0;overflow:hidden;background:var(--ga-black);-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none;font-size:calc(12px * var(--hud))}@media (min-width:1000px) and (min-height:700px){.l3-root{--hud:2}}.l3-stage{position:absolute;inset:0;overflow:hidden}.l3-canvas{display:block;position:absolute;left:0;top:0}.l3-root .lb-hud-zone{left:max(16px,env(safe-area-inset-left),calc(var(--S) * .026));min-width:min(calc(var(--S) * .155),300px);box-shadow:0 0 0 2px var(--ga-black)}.l3-root .lb-hud-right{right:max(16px,env(safe-area-inset-right),calc(var(--S) * .026));min-width:min(calc(var(--S) * .115),240px);box-shadow:0 0 0 2px var(--ga-black)}.l3-root .lb-hud-right,.l3-root .lb-hud-zone{top:max(12px,env(safe-area-inset-top),calc(var(--S) * .022));min-height:max(44px,min(calc(var(--S) * .042),64px))}.l3-menu{right:max(16px,env(safe-area-inset-right),calc(var(--S) * .026));top:calc(max(12px, env(safe-area-inset-top), var(--S) * .022) + max(44px, min(var(--S) * .042, 64px)) + 8px)}@media (max-aspect-ratio:1/1){.l3-root .lb-hud-right,.l3-root .lb-hud-zone{min-width:0;min-height:44px}.l3-menu{top:calc(max(12px, env(safe-area-inset-top)) + 52px)}}.l3-bubble-anchor{position:absolute;left:0;top:0;z-index:8;pointer-events:none;will-change:transform}.l3-bubble-wrap{transform:translate(-50%,calc(-100% - 12px))}.l3-bubble{pointer-events:auto;min-width:0;min-height:0;padding:.35em .7em}.l3-help{position:absolute;z-index:12;left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:flex-start;gap:.25em;max-width:min(420px,calc(100vw - 32px));padding:.6em 1.2em .7em;color:var(--ga-line);background:var(--ga-black);border:2px solid var(--ga-line);text-align:left;font-family:var(--f9);font-size:calc(10px * var(--hud))}.l3-help-title{font-family:var(--f11);font-size:calc(12px * var(--hud));color:var(--ga-yellow)}.l3-help .ac-tool{margin-top:.3em}.l3-root.is-touch .l3-help{bottom:auto;top:calc(max(12px, env(safe-area-inset-top)) + 64px)}@media (orientation:portrait){.l3-root.is-touch .l3-help{left:50%;transform:translateX(-50%);align-items:center;text-align:center}}.l3-touch{position:absolute;z-index:9;left:max(20px,env(safe-area-inset-left));right:max(20px,env(safe-area-inset-right));bottom:max(28px,env(safe-area-inset-bottom));display:flex;justify-content:space-between;align-items:flex-end;pointer-events:none}.l3-stick{position:relative;width:112px;height:112px;border-radius:50%;pointer-events:auto;touch-action:none;background:color-mix(in srgb,var(--ga-black) 70%,transparent);border:3px solid var(--ga-yellow);box-shadow:0 0 0 2px var(--ga-black)}.l3-knob{top:50%;width:48px;height:48px;border-radius:50%;transform:translate(-50%,-50%);background:var(--ga-joy-ball);border:3px solid var(--ga-ink-black);box-shadow:inset 0 -4px 0 color-mix(in srgb,var(--ga-joy-ball) 60%,var(--ga-ink-black))}.l3-knob,.l3-tag{position:absolute;left:50%}.l3-tag{transform:translateX(-50%);padding:0 .5em;font-family:var(--f9);font-size:10px;line-height:16px;white-space:nowrap;color:var(--ga-line);background:var(--ga-black);border:1px solid var(--ga-line)}.l3-tag,.l3-tag--stick{top:calc(100% + 6px)}.l3-action{position:relative;width:80px;height:80px;border-radius:50%;pointer-events:auto;touch-action:none;color:var(--ga-ink-black);background:color-mix(in srgb,var(--ga-yellow) 45%,var(--ga-black));border:3px solid var(--ga-ink-black);box-shadow:0 0 0 3px var(--ga-yellow)}.l3-action.is-ready{background:var(--ga-yellow);box-shadow:0 0 0 3px var(--ga-line),0 5px 0 3px color-mix(in srgb,var(--ga-yellow) 45%,var(--ga-ink-black))}.l3-action-key{font-size:28px;font-weight:700}.l3-action .l3-tag{top:calc(100% + 8px)}@media (orientation:landscape) and (max-height:500px){.l3-touch{bottom:max(30px,env(safe-area-inset-bottom))}.l3-stick{width:100px;height:100px}}.l3-session{position:fixed;inset:0;z-index:40}.ac-exit-lobby{position:absolute;z-index:21;top:max(6px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left))}.l3-fade{position:fixed;inset:0;z-index:50;pointer-events:none;background:var(--ga-black);opacity:0;transition-property:opacity;transition-timing-function:linear}.l3-fade.is-on{opacity:1}.l3-loading{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--ga-black)}.l3-loading-logo{font-size:calc(24px * var(--hud));letter-spacing:1px;color:var(--ga-yellow)}.l3-loading-text{font-family:var(--f9);font-size:calc(10px * var(--hud));color:var(--ga-line);animation:l3-blink 1s steps(2) infinite}@keyframes l3-blink{50%{opacity:.2}}.l3-debug{position:absolute;z-index:30;left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));margin:0;padding:6px 8px;font:11px/1.35 ui-monospace,monospace;color:var(--ga-lime);background:color-mix(in srgb,var(--ga-black) 82%,transparent);border:1px solid var(--ga-cabinet-hi);pointer-events:none;white-space:pre}.l3-root.is-touch .l3-debug{bottom:auto;top:calc(max(12px, env(safe-area-inset-top)) + 56px)}.l3-tune{position:absolute;z-index:35;right:max(16px,env(safe-area-inset-right));--tune-top:calc(max(12px, env(safe-area-inset-top), var(--S) * 0.022) + max(44px, min(var(--S) * 0.042, 64px)) + 12px);top:var(--tune-top);width:300px;max-height:calc(100dvh - var(--tune-top) - 16px);display:flex;flex-direction:column;background:var(--ga-black);border:2px solid var(--ga-line);box-shadow:0 0 0 2px var(--ga-black);color:var(--ga-line);font-family:var(--f11);font-size:12px;line-height:1.35;-moz-user-select:none;user-select:none;-webkit-user-select:none;touch-action:pan-y}.l3-tune-head{display:flex;align-items:center;gap:6px;padding:6px 6px 6px 10px;border-bottom:2px solid var(--ga-line)}.l3-tune.is-collapsed .l3-tune-head{border-bottom:0}.l3-tune-title{color:var(--ga-yellow);letter-spacing:1px}.l3-tune-badge{padding:0 4px;background:var(--ga-yellow);color:var(--ga-black);font-family:var(--f9);font-size:11px}.l3-tune-spacer{flex:1}.l3-tune-icon{min-width:28px;min-height:28px;border:2px solid var(--ga-line);background:transparent;color:var(--ga-line);font:inherit;cursor:pointer}.l3-tune-icon:focus-visible,.l3-tune-icon:hover{border-color:var(--ga-yellow);color:var(--ga-yellow);outline:none}.l3-tune-body{overflow-y:auto;overscroll-behavior:contain;padding:4px 10px 10px}.l3-tune-sec+.l3-tune-sec{border-top:1px dashed var(--ga-cabinet-hi)}.l3-tune-sec-title{margin:6px 0 2px;color:var(--ga-yellow);font-size:12px;font-weight:700;text-transform:uppercase}.l3-tune-row{display:block;padding:2px 0 3px}.l3-tune-row.is-bool{display:flex;align-items:center;gap:8px;cursor:pointer}.l3-tune-label{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px}.l3-tune-label code{color:var(--ga-dim);font-family:var(--f9);font-size:11px}.l3-tune-row.is-changed .l3-tune-label{color:var(--ga-yellow)}.l3-tune-ctl{display:flex;align-items:center;gap:8px;margin-top:2px}.l3-tune-ctl input[type=range]{flex:1;min-width:0;height:16px;accent-color:var(--ga-yellow)}.l3-tune-num{width:64px;padding:2px 4px;background:var(--ga-black);border:1px solid var(--ga-line);color:var(--ga-line);font:11px var(--f9)}.l3-tune-num:focus{outline:none;border-color:var(--ga-yellow)}.l3-tune-check{width:16px;height:16px;margin:0;accent-color:var(--ga-yellow)}.l3-tune-actions{display:flex;gap:8px;margin-top:10px}.l3-tune-btn{flex:1;min-height:32px;border:2px solid var(--ga-line);background:transparent;color:var(--ga-line);font:inherit;font-weight:700;cursor:pointer}.l3-tune-btn.is-primary{border-color:var(--ga-yellow);background:var(--ga-yellow);color:var(--ga-black)}.l3-tune-btn:focus-visible{outline:2px solid var(--ga-yellow);outline-offset:2px}.l3-tune-note{margin:8px 0 0;color:var(--ga-dim);font-family:var(--f9);font-size:11px}.l3-tune-json{width:100%;margin-top:4px;background:var(--ga-black);border:1px solid var(--ga-line);color:var(--ga-lime);font:11px/1.3 ui-monospace,monospace;-moz-user-select:text;user-select:text;-webkit-user-select:text}.l3-tune-paused{position:absolute;z-index:34;left:50%;top:calc(max(12px, env(safe-area-inset-top)) + 64px);transform:translateX(-50%);padding:2px 8px;background:var(--ga-yellow);color:var(--ga-black);font:11px var(--f9);pointer-events:none}@media (max-height:520px) and (max-width:900px),(max-width:600px){.l3-tune{left:0;right:0;top:auto;bottom:0;width:auto;max-height:48dvh;border-width:2px 0 0;padding-bottom:env(safe-area-inset-bottom)}.l3-tune-row:not(.is-bool) .l3-tune-ctl input[type=range]{height:28px}}@media (max-height:520px) and (max-width:900px){.l3-tune{left:auto;width:min(360px,50vw);max-height:70dvh;border-width:2px 0 0 2px}}