:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--grouped-bg:#f2f2f7;--card:#fff;--text:#000;--text-secondary:#3c3c4399;--separator:#3c3c432e;--accent:#007aff;--accent-text:#fff;--fill:#7676801f;--segment-selected:#fff;--material:#f6f6f8c7;--material-border:#0000000f;--shadow:0 4px 18px #00000029;--switch-on:#34c759;--keyboard:0px;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--grouped-bg:#000;--card:#1c1c1e;--text:#fff;--text-secondary:#ebebf599;--separator:#54545899;--accent:#0a84ff;--fill:#7676803d;--segment-selected:#636366;--material:#252528c7;--material-border:#ffffff14;--shadow:0 4px 18px #00000073;--switch-on:#30d158}}:root[data-theme=dark]{--grouped-bg:#000;--card:#1c1c1e;--text:#fff;--text-secondary:#ebebf599;--separator:#54545899;--accent:#0a84ff;--fill:#7676803d;--segment-selected:#636366;--material:#252528c7;--material-border:#ffffff14;--shadow:0 4px 18px #00000073;--switch-on:#30d158}*,:before,:after{box-sizing:border-box}html,body{overscroll-behavior:none;background:var(--grouped-bg);height:100%;color:var(--text);margin:0;overflow:hidden}#app{position:fixed;inset:0}[hidden]{display:none!important}button{font:inherit;color:inherit}.tabular{font-variant-numeric:tabular-nums}.icon{flex:none;display:block}.material{background:var(--material);-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);border:.5px solid var(--material-border)}.loading{place-items:center;display:grid;position:absolute;inset:0}.spinner{border:3px solid var(--fill);border-top-color:var(--text-secondary);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.load-failure{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:16px;display:flex;position:absolute;inset:0}.load-failure h2{margin:0;font-size:17px;font-weight:600}.load-failure p{color:var(--text-secondary);max-width:480px;margin:0;font-size:13px}.setup{-webkit-overflow-scrolling:touch;padding:calc(var(--safe-top) + 12px) calc(var(--safe-right) + 16px) calc(var(--safe-bottom) + 24px) calc(var(--safe-left) + 16px);position:absolute;inset:0;overflow-y:auto}.setup-inner{max-width:560px;margin:0 auto}.large-title{letter-spacing:.01em;margin:28px 4px 16px;font-size:34px;font-weight:700}.form-section{margin-bottom:28px}.card{background:var(--card);border-radius:12px;overflow:hidden}.card-padded{padding:10px 16px}.section-footer{color:var(--text-secondary);margin:8px 16px 0;font-size:13px;line-height:1.35}.row{justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:6px 16px;font-size:17px;display:flex;position:relative}.row+.row:before{content:"";border-top:.5px solid var(--separator);position:absolute;top:0;left:16px;right:0}.row-label{flex:1}.row-value{color:var(--text-secondary)}.row-select{font:inherit;color:var(--text-secondary);text-align:right;text-align-last:right;cursor:pointer;background:0 0;border:none;max-width:55%;padding:4px 0;font-size:17px}.row-select:focus-visible{outline:2px solid var(--accent);border-radius:6px}.switch{appearance:none;background:var(--fill);cursor:pointer;border-radius:16px;flex:none;width:51px;height:31px;margin:0;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:27px;height:27px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #0003}.switch:checked{background:var(--switch-on)}.switch:checked:after{transform:translate(20px)}.switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.segmented{background:var(--fill);border-radius:9px;padding:2px;display:flex}.segment{cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:5px;padding:6px 10px;font-size:13px;font-weight:500;display:flex}.segment.selected{background:var(--segment-selected);font-weight:600;box-shadow:0 3px 8px #0000001f,0 1px 1px #0000000a}.segment:focus-visible{outline:2px solid var(--accent)}.button{cursor:pointer;border:none;border-radius:12px;padding:10px 20px;font-size:17px}.button.prominent{background:var(--accent);color:var(--accent-text);font-weight:600}.button.prominent:disabled{background:var(--fill);color:var(--text-secondary);cursor:default}.button.plain{color:var(--accent);background:0 0;padding:6px 12px}.button.wide{width:100%}.button:focus-visible,.link-button:focus-visible,.round-button:focus-visible,.panel-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.play{background:#1f242b;position:absolute;inset:0;overflow:hidden}.canvas-slot{position:absolute;inset:0}.map-canvas{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;width:100%;height:100%;display:block}.map-canvas:active{cursor:grabbing}.top-left,.top-right{top:calc(var(--safe-top) + 8px);z-index:2;position:absolute}.top-left{left:calc(var(--safe-left) + 16px)}.top-right{right:calc(var(--safe-right) + 16px)}.round-button{cursor:pointer;width:38px;height:38px;color:var(--accent);box-shadow:var(--shadow);border-radius:50%;place-items:center;display:grid}.view-toggle{width:170px;box-shadow:var(--shadow);border-radius:999px}.view-toggle .segment{color:var(--text);border-radius:999px}.bottom-overlay{z-index:2;pointer-events:none;justify-content:center;display:flex;position:absolute;bottom:0;left:0;right:0}.bottom-overlay>*{pointer-events:auto}.bottom-overlay.keyboard-aware{bottom:var(--keyboard)}.prompt-bar{margin-bottom:calc(var(--safe-bottom) + 24px);text-align:center;max-width:calc(100% - 32px);box-shadow:var(--shadow);border-radius:999px;padding:10px 24px}.prompt-name{white-space:nowrap;text-overflow:ellipsis;font-size:20px;font-weight:600;overflow:hidden}.prompt-count{color:var(--text-secondary);margin-top:2px;font-size:12px}.completion-bar{width:100%;padding:18px 20px calc(var(--safe-bottom) + 18px);border-width:.5px 0 0;flex-direction:column;align-items:center;gap:10px;display:flex}.completion-title{text-align:center;font-size:20px;font-weight:600}.panel-area{flex-direction:column;align-items:flex-end;width:100%;display:flex}.panel-tab{margin-right:calc(var(--safe-right) + 16px);cursor:pointer;color:var(--accent);border-bottom:none;border-radius:12px 12px 0 0;place-items:center;padding:8px 18px;display:grid}.panel-area.collapsed .panel-tab{margin-right:0;margin-bottom:calc(var(--safe-bottom) + 12px);border-right:none;border-bottom:.5px solid var(--material-border);padding-right:calc(var(--safe-right) + 18px);box-shadow:var(--shadow);border-radius:12px 0 0 12px}.answer-panel{width:100%;padding:14px calc(var(--safe-right) + 20px) calc(14px + var(--safe-bottom)) calc(var(--safe-left) + 20px);border-width:.5px 0 0;flex-direction:column;align-items:stretch;gap:10px;display:flex}.keyboard-up .answer-panel{padding-bottom:14px}.answer-panel.slide-in{animation:.28s cubic-bezier(.2,.9,.3,1) slide-in}@keyframes slide-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.answer-message{color:var(--text-secondary);text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;display:-webkit-box;overflow:hidden}.answer-row{grid-template-columns:1fr auto 1fr;align-items:center;font-size:15px;display:grid}.answer-row>:first-child{justify-self:start}.answer-row>:last-child{justify-self:end}.answer-count{color:var(--text-secondary);font-size:12px}.link-button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:15px}.link-button:disabled{color:var(--text-secondary);opacity:.6;cursor:default}.answer-field{width:100%;font:inherit;border:.5px solid var(--separator);background:var(--card);color:var(--text);border-radius:8px;outline:none;padding:8px 10px;font-size:17px}.answer-field:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.answer-hint{color:var(--text-secondary);text-align:center;margin:0;font-size:15px}@media (prefers-reduced-motion:reduce){.answer-panel.slide-in{animation:none}.switch,.switch:after{transition:none}}
