:root{--bg: #0f1115;--bg-elevated: #1a1e26;--bg-soft: #242a35;--text: #f3f1ec;--text-muted: #a8a29a;--accent: #d4a373;--accent-press: #b8895a;--border: #2e3542}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);overflow:hidden}#app{position:relative;width:100%;height:100%;min-height:100dvh}#app canvas{display:block;width:100%;height:100%;touch-action:none}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem;background:color-mix(in srgb,var(--bg) 88%,transparent);text-align:center}.splash[hidden]{display:none}.splash__title{margin:0;font-size:1.25rem;font-weight:600;letter-spacing:.02em}.splash__pct{margin:0;font-size:2rem;font-variant-numeric:tabular-nums;color:var(--accent)}.splash__status{margin:0;color:var(--text-muted);font-size:.95rem}.splash__retry{margin-top:.75rem;min-width:44px;min-height:44px;padding:.6rem 1.25rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-elevated);color:var(--text);font:inherit;cursor:pointer}.splash__retry:hover,.splash__retry:focus-visible{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}.splash__retry[hidden]{display:none}
