@charset "UTF-8";#hud{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}#hud-controls{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));left:calc(16px + env(safe-area-inset-left,0px));display:flex;align-items:center;gap:4px;pointer-events:none}.hud-btn{width:36px;height:44px;padding:0;border:none;border-radius:8px;background:transparent;color:#fff;cursor:pointer;pointer-events:auto;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4));transition:opacity .15s ease;-webkit-tap-highlight-color:transparent}.hud-btn:active{opacity:.6}.hud-btn svg{display:block}.hud-unmute-btn{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);opacity:0;transition:opacity .25s ease;background:#00000073;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:50%;width:36px;height:36px}.hud-unmute-btn--visible{opacity:1}#pause-menu{position:absolute;top:0;left:0;width:100%;height:100%;background:#0000;backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);display:flex;flex-direction:column;justify-content:flex-end;padding:0 24px 40px;box-sizing:border-box;pointer-events:auto;opacity:0;transition:opacity .4s ease-out,background .4s ease-out}#pause-menu.pause-menu--visible{opacity:1;background:#0000004d}#pause-menu .pause-menu-btn{display:block;width:100%;max-width:340px;margin:0 auto 10px;padding:14px 20px;border:none;border-radius:24px;color:#fff;font-size:15px;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;cursor:pointer;pointer-events:auto;transform:translateY(8px);transition:transform .4s cubic-bezier(.16,1,.3,1)}.pause-menu--visible #pause-menu .pause-menu-btn{transform:translateY(0)}#pause-menu .pause-menu-btn--restart,#pause-menu .pause-menu-btn--reset-tracking{background:#ffffff26}#pause-menu .pause-menu-btn--quit{background:linear-gradient(135deg,#ff3b6b,#ff1744)}#pause-menu .pause-menu-btn--continue{background:#007aff}#pause-menu .pause-menu-spacer{height:12px}.log-panel{position:absolute;top:8px;right:8px;z-index:10000;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px;pointer-events:auto}.log-panel__toggle{display:block;margin-left:auto;padding:4px 10px;font-size:11px;font-family:inherit;background:#1e1e1ed9;color:#ffffffe6;border:1px solid rgba(255,255,255,.12);border-radius:6px;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.log-panel__list{list-style:none;margin:4px 0 0;padding:4px;max-height:240px;width:340px;overflow-y:auto;background:#141414e0;color:#ffffffd9;border-radius:8px;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.log-panel__entry{padding:3px 6px;border-radius:4px;line-height:1.4;word-break:break-word}.log-panel__entry+.log-panel__entry{margin-top:1px}.log-panel__entry--warn{background:#eab30826;color:#fbbf24}.log-panel__badge{display:inline-block;padding:0 4px;border-radius:3px;font-size:9px;font-weight:700;letter-spacing:.03em;color:#fff;vertical-align:baseline;line-height:1.5}.log-panel__message{color:#ffffffd9}.log-panel__entry--warn .log-panel__message{color:#fbbf24}.error-overlay{position:fixed;bottom:16px;left:16px;right:16px;max-height:40vh;overflow-y:auto;z-index:10000;background:#b41414eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;padding:16px;font-family:-apple-system,BlinkMacSystemFont,SF Mono,Menlo,monospace;color:#fff;pointer-events:auto}.error-overlay__title{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;opacity:.8}.error-overlay__list{list-style:none;margin:0;padding:0}.error-overlay__entry{font-size:13px;line-height:1.4;padding:6px 0;border-top:1px solid rgba(255,255,255,.15);word-break:break-word}.error-overlay__entry:first-child{border-top:none;padding-top:0}.debug-panel{position:fixed;bottom:8px;right:8px;z-index:10000;font-family:ui-monospace,monospace;font-size:11px;pointer-events:auto}.debug-panel__toggle{display:block;width:100%;padding:3px 8px;font-size:11px;font-family:inherit;text-align:left;background:#0009;color:#ccc;border:1px solid rgba(255,255,255,.15);border-radius:4px;cursor:pointer}.debug-panel__body{margin:4px 0 0;padding:8px 12px;width:260px;background:#000000b3;color:#ccc;border-radius:4px;border:1px solid rgba(255,255,255,.1)}.debug-panel__section-heading{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#888;padding:6px 0 3px;border-top:1px solid rgba(255,255,255,.08)}.debug-panel__section-heading:first-child{border-top:none;padding-top:0}.debug-panel__row{display:flex;align-items:center;gap:6px;padding:2px 0}.debug-panel__row label{flex-shrink:0}.debug-panel__checkbox-row{display:flex;align-items:center;gap:6px;padding:3px 0}.debug-panel__checkbox-row input[type=checkbox]{accent-color:#00ff88;cursor:pointer;margin:0}.debug-panel__checkbox-row label{cursor:pointer;-webkit-user-select:none;user-select:none}.debug-panel__slider{flex:1;accent-color:#888;cursor:pointer}.debug-panel__value{min-width:42px;text-align:right;flex-shrink:0}.debug-panel__resolution{color:#888;padding:2px 0}.debug-panel__select{flex:1;font-family:inherit;font-size:11px;background:#ffffff1a;color:#ccc;border:1px solid rgba(255,255,255,.15);border-radius:3px;padding:1px 4px;cursor:pointer}.debug-panel__button{display:block;width:100%;margin:3px 0;padding:4px 8px;font-family:inherit;font-size:11px;text-align:left;color:#ccc;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:3px;cursor:pointer;transition:background .15s ease}.debug-panel__button:hover{background:#ffffff26}.debug-panel__button:active{background:#ffffff38}.landing-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:#111;font-family:ui-monospace,monospace;color:#ccc}.landing-page__card{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px 40px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:380px;max-width:90vw}.landing-page__title{font-size:15px;font-weight:600;letter-spacing:.03em;color:#eee;margin:0}.landing-page__select{width:100%;padding:10px 12px;font-family:inherit;font-size:13px;background:#ffffff14;color:#eee;border:1px solid rgba(255,255,255,.15);border-radius:6px;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='%23999'%3E%3Cpath d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:border-color .15s}.landing-page__select:focus{border-color:#fff6}.landing-page__divider{font-size:11px;color:#ffffff4d;letter-spacing:.05em}.landing-page__input{width:100%;padding:10px 12px;font-family:inherit;font-size:13px;background:#ffffff14;color:#eee;border:1px solid rgba(255,255,255,.15);border-radius:6px;outline:none;transition:border-color .15s}.landing-page__input::placeholder{color:#ffffff4d}.landing-page__input:focus{border-color:#fff6}.landing-page__button{width:100%;padding:10px;font-family:inherit;font-size:13px;font-weight:600;background:#ffffff1f;color:#eee;border:1px solid rgba(255,255,255,.15);border-radius:6px;cursor:pointer;transition:background .15s}.landing-page__button:hover{background:#fff3}.landing-page__button:active{background:#ffffff1a}.virtual-joystick{position:absolute;bottom:calc(20px + env(safe-area-inset-bottom,0px));right:calc(20px + env(safe-area-inset-right,0px));width:180px;height:180px;z-index:2;touch-action:none;pointer-events:auto}.virtual-joystick__rest{position:absolute;bottom:0;right:0;width:64px;height:64px;border-radius:50%;background:#ffffff14;border:1.5px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;color:#ffffff4d}.virtual-joystick__base{position:absolute;width:100px;height:100px;border-radius:50%;background:#ffffff1f;border:1.5px solid rgba(255,255,255,.25);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center}.virtual-joystick__thumb{width:36px;height:36px;border-radius:50%;background:#ffffff59;border:1px solid rgba(255,255,255,.45);will-change:transform;transition:none}.loading-view{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#000;opacity:1;transition:opacity .4s ease-out}.loading-view--hiding{opacity:0}.loading-view__spinner{position:relative;width:30px;height:30px}.loading-view__bar{position:absolute;left:50%;top:0;width:2.5px;height:8px;margin-left:-1.25px;border-radius:1.25px;background:#ffffffd9;transform-origin:center 15px;animation:loading-fade 1s linear infinite}.loading-view__start-button{padding:14px 40px;border:none;border-radius:28px;background:#007aff;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:17px;font-weight:600;line-height:1.2;cursor:pointer;-webkit-user-select:none;user-select:none;animation:start-button-in .4s cubic-bezier(.34,1.56,.64,1) both}.loading-view__start-button:active{transform:scale(.95)}@keyframes start-button-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes loading-fade{0%{opacity:1}to{opacity:.15}}.preparation-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;display:flex;align-items:center;justify-content:center;background:#0000004d;backdrop-filter:blur(30px) saturate(1.4);-webkit-backdrop-filter:blur(30px) saturate(1.4);opacity:0;transition:opacity .4s ease-out;pointer-events:none}.preparation-overlay--visible{opacity:1}.preparation-overlay--hiding{opacity:0}.preparation-overlay__content{display:flex;flex-direction:column;align-items:center;gap:16px}.preparation-overlay__spinner{position:relative;width:30px;height:30px}.preparation-overlay__bar{position:absolute;left:50%;top:0;width:2.5px;height:8px;margin-left:-1.25px;border-radius:1.25px;background:#ffffffd9;transform-origin:center 15px;animation:loading-fade 1s linear infinite}.preparation-overlay__label{font-family:-apple-system,SF Pro Text,Helvetica Neue,sans-serif;font-size:17px;font-weight:600;color:#fff;user-select:none;-webkit-user-select:none}.preparation-overlay__progress-track{width:120px;height:3px;border-radius:1.5px;background:#fff3;overflow:hidden}.preparation-overlay__progress-fill{width:0;height:100%;border-radius:1.5px;background:#fff;transition:width .15s ease-out}.end-screen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#0000;backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);opacity:0;transition:opacity 1s ease-out,background 1s ease-out;pointer-events:auto}.end-screen--visible{opacity:1;background:#000000b3}.end-screen__content{display:flex;flex-direction:column;align-items:center;gap:24px;transform:translateY(8px);transition:transform .8s cubic-bezier(.16,1,.3,1)}.end-screen--visible .end-screen__content{transform:translateY(0)}.end-screen__title{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:20px;font-weight:600;color:#fff;text-align:center;user-select:none;-webkit-user-select:none}.end-screen__restart-btn{padding:12px 32px;border:none;border-radius:24px;background:#007aff;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:17px;font-weight:600;line-height:1.2;cursor:pointer;user-select:none;-webkit-user-select:none}.end-screen__restart-btn:active{transform:scale(.95)}.resume-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#0000;backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);opacity:0;transition:opacity .4s ease-out,background .4s ease-out;pointer-events:auto}.resume-overlay--visible{opacity:1;background:#000000a6}.resume-overlay__content{display:flex;flex-direction:column;align-items:center;gap:20px;transform:translateY(8px);transition:transform .6s cubic-bezier(.16,1,.3,1)}.resume-overlay--visible .resume-overlay__content{transform:translateY(0)}.resume-overlay__title{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:20px;font-weight:600;color:#fff;text-align:center;user-select:none;-webkit-user-select:none}.resume-overlay__btn{min-width:200px;padding:12px 32px;border:none;border-radius:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:17px;font-weight:600;line-height:1.2;cursor:pointer;user-select:none;-webkit-user-select:none}.resume-overlay__btn:active{transform:scale(.95)}.resume-overlay__btn--primary{background:#007aff;color:#fff}.resume-overlay__btn--secondary{background:#ffffff26;color:#fff}.placement-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:calc(env(safe-area-inset-top,20px) + 20px) 20px calc(env(safe-area-inset-bottom,20px) + 40px);pointer-events:none}.placement-overlay__hint{padding:8px 20px;border-radius:20px;background:#0000008c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;font-weight:500;line-height:1.2;white-space:nowrap;-webkit-user-select:none;user-select:none}.placement-overlay__button{pointer-events:auto;padding:12px 32px;border:none;border-radius:24px;background:#007aff;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:17px;font-weight:600;line-height:1.2;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .45s cubic-bezier(.34,1.56,.64,1),transform .45s cubic-bezier(.34,1.56,.64,1),filter .45s cubic-bezier(.34,1.56,.64,1)}.placement-overlay__button:hover:not(:disabled){opacity:.85}.placement-overlay__button:active:not(:disabled){transform:scale(.96)}.placement-overlay__button:disabled{opacity:.45;filter:blur(6px);transform:scale(.65);cursor:default}.runability-error-screen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#0000;backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);opacity:0;transition:opacity 1s ease-out,background 1s ease-out;pointer-events:auto}.runability-error-screen--visible{opacity:1;background:#000000b3}.runability-error-screen__content{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:340px;padding:0 24px;transform:translateY(8px);transition:transform .8s cubic-bezier(.16,1,.3,1)}.runability-error-screen--visible .runability-error-screen__content{transform:translateY(0)}.runability-error-screen__title{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:20px;font-weight:600;color:#fff;text-align:center;user-select:none;-webkit-user-select:none}.runability-error-screen__message{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;font-weight:400;color:#ffffffb3;text-align:center;line-height:1.4;user-select:none;-webkit-user-select:none}.runability-error-screen__contact-btn{display:inline-block;margin-top:8px;padding:12px 32px;border:none;border-radius:24px;background:#007aff;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:17px;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;user-select:none;-webkit-user-select:none}.runability-error-screen__contact-btn:active{transform:scale(.95)}.hint-box{width:90vw;max-width:440px;margin-top:8px;padding:16px;border-radius:12px;background:#ffffff14}.hint-box__title{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:13px;font-weight:600;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.hint-box__steps{display:flex;flex-direction:column;gap:10px}.hint-box__step{display:flex;align-items:flex-start;gap:10px}.hint-box__step-number{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:#ffffff1f;color:#ffffffb3;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;line-height:1}.hint-box__step-content{display:flex;flex-direction:column;gap:6px;min-width:0}.hint-box__step-text{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;font-weight:400;color:#ffffffb3;line-height:1.4;padding-top:1px}.hint-box__step-code{display:block;padding:8px 12px;border-radius:8px;background:#ffffff0f;font-family:SF Mono,Menlo,Monaco,Courier New,monospace;font-size:13px;color:#5ac8fa;word-break:break-all;user-select:all;-webkit-user-select:all}.looping-image-view{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:300px;aspect-ratio:1;margin:0 auto}.looping-image-view__image-container{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;animation:looping-image-pulse 2s linear infinite}.looping-image-view__image{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;padding:8px;opacity:1;transition:opacity .35s ease-in-out,transform .35s ease-in-out}.looping-image-view__image--hidden{opacity:0;transform:scale(.9)}.looping-image-view__corner{position:absolute;width:24px;height:24px;pointer-events:none}.looping-image-view__corner svg{width:100%;height:100%;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.looping-image-view__corner--top-left{top:0;left:0}.looping-image-view__corner--top-right{top:0;right:0;transform:rotate(90deg)}.looping-image-view__corner--bottom-left{bottom:0;left:0;transform:rotate(-90deg)}.looping-image-view__corner--bottom-right{bottom:0;right:0;transform:rotate(180deg)}@keyframes looping-image-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.95);opacity:.4}}.running-guidance-view{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity 1.5s ease-in-out;z-index:2}.running-guidance-view--visible{opacity:1}.running-guidance-view__discovery{display:flex;flex-direction:column;align-items:center;max-width:450px;max-height:450px;width:100%;padding:0 16px}.running-guidance-view__title{color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:700;font-size:17px;text-align:center;text-shadow:0 1px 4px rgba(0,0,0,.6);padding-top:12px;line-height:1.4}.running-guidance-view__hand-hint{display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:48px}.running-guidance-view__hand-icon{font-size:36px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6)}.running-guidance-view__guidance-data{position:absolute;top:calc(env(safe-area-inset-top,0px) + 16px);left:0;right:0;display:flex;justify-content:center;padding:0 16px;pointer-events:none}.running-guidance-view__distance-text{color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:700;font-size:17px;text-align:center;text-shadow:0 1px 4px rgba(0,0,0,.6);max-width:320px;opacity:0;transition:opacity .3s ease-in-out}.running-guidance-view__distance-text--visible{opacity:1}.native-bridge-banner{position:fixed;top:env(safe-area-inset-top,0);left:50%;transform:translate(-50%);z-index:9999;padding:8px 16px;border-radius:10px;margin-top:8px;background:#0000008c;backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);font-family:-apple-system,SF Pro Text,Helvetica Neue,sans-serif;font-size:13px;font-weight:500;color:#ffffffd9;white-space:nowrap;user-select:none;-webkit-user-select:none;pointer-events:none}.face-ar-video-background{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;transform:scaleX(-1);pointer-events:none}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;height:100dvh;overflow:hidden;background:#000;overscroll-behavior:none;touch-action:none}#root{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}#root canvas{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;-webkit-touch-callout:none}#interactivityOverlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;touch-action:none}
