#ui{--s: 1;--ink: #f0e6d2;--gold: #ffd877;--panel: #1a1a2e;--panel-inner: #0f1020;--line: #3c3c5c;--muted: #aaaaaa;position:absolute;pointer-events:none;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none}#ui button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.hud-hint{position:absolute;top:max(8px,calc(12px * var(--s)),env(safe-area-inset-top));left:max(8px,calc(12px * var(--s)),env(safe-area-inset-left));max-width:70%;padding:4px 8px;font-size:max(11px,calc(18px * var(--s)));line-height:1.4;background:#0009;border-radius:3px;transition:opacity .6s}.hud-hint.faded{opacity:0}.hud-music{position:absolute;top:max(6px,calc(10px * var(--s)),env(safe-area-inset-top));right:max(6px,calc(10px * var(--s)),env(safe-area-inset-right));width:max(40px,calc(56px * var(--s)));height:max(40px,calc(56px * var(--s)));padding:0;font-size:max(20px,calc(32px * var(--s)));line-height:1;background:#00000059;border:none;border-radius:50%;pointer-events:auto}.hud-toast{position:absolute;top:max(52px,calc(80px * var(--s)));left:50%;transform:translate(-50%,-8px);padding:6px 18px;font-size:max(16px,calc(30px * var(--s)));font-weight:700;letter-spacing:.08em;color:var(--gold);background:#0f1020d9;border:2px solid var(--ink);white-space:nowrap;opacity:0;transition:opacity .5s,transform .5s}.hud-toast.show{opacity:1;transform:translate(-50%)}.hud-debug{position:absolute;top:max(52px,calc(76px * var(--s)));right:max(6px,calc(10px * var(--s)));padding:4px 8px;font:14px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--gold);background:#0009;display:none}.hud-debug.show{display:block}.dlg-backdrop{position:absolute;inset:0;background:#0006;pointer-events:auto;display:none;cursor:pointer}.dlg-backdrop.open{display:block}.dlg-box{position:absolute;left:50%;bottom:max(12px,calc(40px * var(--s)),env(safe-area-inset-bottom));transform:translate(-50%);box-sizing:border-box;width:min(calc(100% - 24px),max(320px,calc(1120px * var(--s))));padding:max(6px,calc(8px * var(--s)));background:var(--panel);border:max(3px,calc(6px * var(--s))) solid var(--ink);cursor:default}.dlg-inner{border:2px solid var(--line);background:var(--panel-inner);padding:max(10px,calc(16px * var(--s))) max(12px,calc(20px * var(--s)))}.dlg-title{font-size:max(16px,calc(32px * var(--s)));font-weight:700;color:var(--gold);padding-bottom:max(6px,calc(10px * var(--s)));border-bottom:2px solid var(--line);margin-bottom:max(8px,calc(12px * var(--s)))}.dlg-body{font-size:max(15px,calc(28px * var(--s)));line-height:1.55;min-height:3.1em;max-height:40vh;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.dlg-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:max(8px,calc(12px * var(--s)));min-height:max(20px,calc(30px * var(--s)))}.dlg-hint{font-size:max(12px,calc(22px * var(--s)));color:var(--muted);animation:dlg-blink 1.2s ease-in-out infinite alternate}@keyframes dlg-blink{0%{opacity:1}to{opacity:.3}}.dlg-choices{display:none;gap:max(8px,calc(16px * var(--s)))}.dlg-choices.show{display:flex}.dlg-choice{min-width:max(72px,calc(120px * var(--s)));min-height:40px;padding:4px 14px;font-size:max(15px,calc(26px * var(--s)));background:var(--panel);border:2px solid var(--ink)}.dlg-choice:hover,.dlg-choice:focus-visible{background:#2a2a4a;color:var(--gold);outline:none}.dlg-choice kbd{margin-left:6px;font:inherit;font-size:.7em;color:var(--muted)}@media (pointer: coarse){.dlg-choice kbd{display:none}}@media (prefers-reduced-motion: reduce){.dlg-hint{animation:none}.hud-toast,.hud-hint{transition:none}}.pad{position:absolute;inset:0;z-index:10;pointer-events:none}.pad-stick{position:absolute;left:max(24px,env(safe-area-inset-left));bottom:max(32px,env(safe-area-inset-bottom));border-radius:50%;background:#14141e73;border:3px solid rgba(240,230,210,.7);pointer-events:auto;touch-action:none}.pad-knob{position:absolute;left:50%;top:50%;border-radius:50%;background:#ffd877d9;border:2px solid rgba(58,42,11,.6);transform:translate(-50%,-50%);pointer-events:none}.pad-buttons{position:absolute;right:max(24px,env(safe-area-inset-right));bottom:max(32px,env(safe-area-inset-bottom));display:flex;gap:12px;align-items:flex-end}#ui .pad-btn{border-radius:50%;color:#fff;font-size:28px;font-weight:700;border:3px solid rgba(240,230,210,.8);box-shadow:0 3px #0000004d;pointer-events:auto;touch-action:none}.pad-a{background:#e66464d9}.pad-b{background:#6496e6d9}#ui .pad-btn.pressed{transform:translateY(3px);box-shadow:none}#ui.dlg-open .pad-stick{display:none}#ui.has-pad .dlg-box{bottom:calc(max(32px,env(safe-area-inset-bottom)) + 100px)}
