*,:before,:after{box-sizing:border-box}:root{--panel-bg-strong:#ffffffeb;--panel-text:#1d1d1f;--panel-text-secondary:#6e6e73;--finder-titlebar-bg:#0000000a;--finder-border:#00000014;--finder-title-text:#3a3a3c;--start-screen-bg:radial-gradient(circle at 50% 40%, #3a4a63 0%, #1d1d1f 75%);--glass-tint:255 255 255;--glass-tint-alpha:0%;--glass-blur:0px;--glass-scale:40;--glass-aberration:8;--glass-lens:diagonal;--glass-saturate:180%;--glass-brightness:1.08;--glass-rim:#fff3;--shadow-glass:0 8px 24px #0000001f, 0 2px 4px #00000014, inset 0 1px 0 #fff6, inset 0 -1px 0 #0000000d;--shadow-glass-lg:0 20px 60px #00000073, 0 4px 8px #00000014, inset 0 1px 1px #ffffff8c, inset 0 -1px 1px #ffffff4d}:root[data-theme=dark]{--panel-bg-strong:#26262aeb;--panel-text:#f5f5f7;--panel-text-secondary:#98989d;--finder-titlebar-bg:#ffffff0f;--finder-border:#ffffff1a;--finder-title-text:#e5e5e7;--start-screen-bg:radial-gradient(circle at 50% 40%, #171a22 0%, #050506 75%);--glass-tint:0 0 0;--glass-rim:#ffffff1a}html,body{background:#1d1d1f;height:100%;margin:0;overflow:hidden}#game-canvas{touch-action:none;width:100%;height:100dvh;display:block}.liquid-glass{isolation:isolate;background:rgb(var(--glass-tint) / var(--glass-tint-alpha));border:1px solid var(--glass-rim);box-shadow:var(--shadow-glass);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate)) brightness(var(--glass-brightness));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate)) brightness(var(--glass-brightness));background-clip:padding-box;position:relative;overflow:hidden}.liquid-glass--lg{box-shadow:var(--shadow-glass-lg)}@media (prefers-reduced-transparency:reduce){.liquid-glass{-webkit-backdrop-filter:none;background:#f5f5f5fa}}@media (prefers-contrast:more){.liquid-glass{color:canvastext;-webkit-backdrop-filter:none;background:canvas;border:1px solid canvastext}}.hud{padding:max(.6rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) .6rem max(1rem, env(safe-area-inset-left));pointer-events:none;justify-content:space-between;align-items:center;gap:.75rem;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;display:flex;position:fixed;top:0;left:0;right:0}.hud__finder-path,.hud__fragment-counter{color:var(--panel-text);border-radius:999px;padding:.4rem .9rem;font-size:.85rem}.hud__finder-path{white-space:nowrap;text-overflow:ellipsis;max-width:min(70vw,32rem);overflow:hidden}.hud__fragment-counter{font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:600}.hud__finder-path.is-pulsing,.hud__fragment-counter.is-pulsing{animation:.24s ease-out hud-pulse}@media (prefers-reduced-motion:reduce){.hud__finder-path.is-pulsing,.hud__fragment-counter.is-pulsing{animation:none}}@keyframes hud-pulse{0%{box-shadow:var(--shadow-glass);transform:scale(1)}35%{transform:scale(1.06);box-shadow:0 0 0 3px #0a84ff73,0 4px 14px #0a84ff59}to{box-shadow:var(--shadow-glass);transform:scale(1)}}.toast-container{top:calc(3.4rem + env(safe-area-inset-top));right:max(1rem, env(safe-area-inset-right));pointer-events:none;flex-direction:column;align-items:flex-end;gap:.5rem;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;display:flex;position:fixed}.toast{color:var(--panel-text);border-radius:.75rem;padding:.55rem 1rem;font-size:.85rem;font-weight:500;animation:.22s ease-out toast-in}.toast--success{border-left:3px solid #0a84ff}@media (prefers-reduced-motion:reduce){.toast{animation:none}}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.touch-joystick{left:max(1.5rem, env(safe-area-inset-left));bottom:max(1.5rem, env(safe-area-inset-bottom));touch-action:none;z-index:5;border-radius:50%;width:7.5rem;height:7.5rem;display:none;position:fixed}.touch-joystick__thumb{background:var(--panel-bg-strong);pointer-events:none;border-radius:50%;width:3.4rem;height:3.4rem;margin:-1.7rem 0 0 -1.7rem;position:absolute;top:50%;left:50%;box-shadow:0 2px 6px #0003}.touch-jump-button{right:max(1.5rem, env(safe-area-inset-right));bottom:max(1.5rem, env(safe-area-inset-bottom));width:5rem;height:5rem;color:inherit;touch-action:none;z-index:5;border-radius:50%;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;font-size:.95rem;font-weight:600;display:none;position:fixed}.touch-jump-button:active{background:var(--panel-bg-strong)}@media (pointer:coarse){.touch-joystick,.touch-jump-button{display:block}}.rotate-device-overlay{display:none}@media (pointer:coarse) and (orientation:portrait){.rotate-device-overlay{z-index:30;background:var(--start-screen-bg);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}}.rotate-device-overlay__panel{text-align:center;background:var(--panel-bg-strong);-webkit-backdrop-filter:blur(16px);max-width:20rem;color:var(--panel-text);border-radius:1rem;margin:0 1.5rem;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;box-shadow:0 12px 40px #00000059}.rotate-device-overlay__icon{border:3px solid var(--panel-text);border-radius:.6rem;width:2.6rem;height:4.2rem;margin:0 auto 1rem;animation:1.8s ease-in-out infinite rotate-device-hint}.rotate-device-overlay__icon:after{content:"";background:var(--panel-text);opacity:.6;border-radius:50%;width:.5rem;height:.5rem;margin:.35rem auto 0;display:block}.rotate-device-overlay__message{margin:0;font-size:1rem;font-weight:600}@keyframes rotate-device-hint{0%,to{transform:rotate(0)}50%{transform:rotate(90deg)}}@media (prefers-reduced-motion:reduce){.rotate-device-overlay__icon{animation:none}}.start-screen{z-index:20;background:url(/img/bonjour-green-dark.png) center / cover no-repeat, var(--start-screen-bg);position:fixed;inset:0}.start-screen__panel{z-index:1;text-align:center;color:#fff;text-shadow:0 1px 3px #0000008c,0 1px 1px #0006;cursor:grab;touch-action:none;border-radius:1.1rem;width:min(26rem,100vw - 3rem);padding:2.2rem 2.4rem;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;animation:.32s cubic-bezier(.2,0,0,1) start-screen-in;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.start-screen__panel:before{content:"";z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 50% 30%,#0a84ff38,#0000 70%);position:absolute;inset:0}.start-screen__panel.is-dragging{cursor:grabbing}.start-screen__icon{filter:drop-shadow(0 2px 10px #0a84ff66);width:2.4rem;height:2.4rem;margin:0 auto 1.2rem;display:block;overflow:visible}.start-screen__title{margin:0 0 1.5rem;font-size:.95rem;font-weight:600;line-height:1.45}.start-screen__cta{color:#fff;cursor:pointer;background:#0a84ff;border:none;border-radius:999px;justify-content:center;align-items:center;min-height:44px;margin:0 0 1.1rem;padding:.55rem 1.5rem;font-family:inherit;font-size:.95rem;font-weight:600;transition:transform .18s cubic-bezier(.2,0,0,1),box-shadow .18s cubic-bezier(.2,0,0,1);display:inline-flex;box-shadow:0 4px 14px #0a84ff66,inset 0 1px #ffffff40}.start-screen__cta:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0a84ff80,inset 0 1px #ffffff4d}.start-screen__cta:active{transform:scale(.97)}.start-screen__cta:focus-visible{outline-offset:3px;outline:2px solid #0a84ff;box-shadow:0 0 0 4px #ffffffe6,0 4px 14px #0a84ff66}.start-screen__restored-count{margin:0;font-size:.8rem}@keyframes start-screen-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.92)translateY(6px)}to{opacity:1;transform:translate(-50%,-50%)scale(1)translateY(0)}}@media (prefers-reduced-motion:reduce){.start-screen__panel{animation:none}.start-screen__cta:hover,.start-screen__cta:active{transform:none}}.finder-window-overlay[hidden]{display:none}.finder-window-overlay{z-index:20;background:#14141873;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.finder-window{border-radius:.75rem;width:min(90vw,22rem);font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;animation:.26s ease-out finder-window-in;overflow:hidden}@media (prefers-reduced-motion:reduce){.finder-window{animation:none}}@keyframes finder-window-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.finder-window__titlebar{background:var(--finder-titlebar-bg);border-bottom:1px solid var(--finder-border);align-items:center;gap:.4rem;padding:.65rem .8rem;display:flex}.finder-window__dot{border-radius:50%;width:.7rem;height:.7rem}.finder-window__dot--red{background:#ff5f57}.finder-window__dot--yellow{background:#febc2e}.finder-window__dot--green{background:#28c840}.finder-window__title{color:var(--finder-title-text);margin-left:.4rem;font-size:.8rem;font-weight:600}.finder-window__body{justify-content:center;align-items:center;padding:2.2rem 1.5rem;display:flex}.finder-window__file{flex-direction:column;align-items:center;gap:.5rem;display:flex}.finder-window__file-icon{clip-path:polygon(0 0,72% 0,100% 28%,100% 100%,0 100%);background:#fff;width:3.5rem;height:4.3rem;position:relative;box-shadow:0 1px 3px #0003}.finder-window__file-fold{clip-path:polygon(0 0,100% 100%,0 100%);background:#d8dee6;width:1rem;height:1rem;position:absolute;top:0;right:0}.finder-window__file-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#0a84ff;border-radius:.2rem;max-width:12rem;padding:.1rem .5rem;font-size:.8rem;overflow:hidden}.finder-window__footer{border-top:1px solid var(--finder-border);justify-content:flex-end;padding:.75rem 1rem;display:flex}.finder-window__open-button{color:#fff;cursor:pointer;background:#0a84ff;border:none;border-radius:.4rem;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:.4rem 1.1rem;font-family:inherit;font-size:.85rem;font-weight:600;display:inline-flex}.finder-window__open-button:hover{background:#0a74dd}
