:root{--bg: #fff8ef;--surface: #ffffff;--ink: #3a2e26;--muted: #8a7a6c;--accent: #d9893b;--line: #f0e3d3}@media (prefers-color-scheme: dark){:root{--bg: #1d1814;--surface: #2a231d;--ink: #f6ece0;--muted: #b9a998;--accent: #e8a05a;--line: #3b322a}}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink)}body{font:16px/1.65 -apple-system,BlinkMacSystemFont,PingFang TC,Noto Sans TC,Microsoft JhengHei,sans-serif}#app{max-width:480px;margin:0 auto;padding:24px 16px 48px}.state{text-align:center;padding:64px 8px}.title{font-size:22px;margin:0 0 8px}.muted{color:var(--muted);margin:0 0 12px}.card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:0 6px 24px #78501e14}.stage{position:relative;width:100%;aspect-ratio:1;max-width:320px;margin:0 auto;border-radius:20px;background:radial-gradient(circle at 50% 70%,#ffe9c9,transparent 70%)}.sprite{width:100%;height:100%;display:block}.placeholder{position:absolute;inset:0;display:grid;place-items:center;font-size:72px}.placeholder[hidden]{display:none}.head{text-align:center;margin-top:8px}.name{margin:0;font-size:28px}.species{margin:2px 0 0;color:var(--muted)}.memorial{text-align:center;color:var(--muted);margin:12px 0 0}.persona{text-align:center;margin:16px 0 0}.chips{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.chip{background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:2px 12px;font-size:14px}.cta{margin-top:24px;padding-top:20px;border-top:1px dashed var(--line);text-align:center}.cta-title{font-size:18px;margin:0 0 4px}.code-row{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;margin:12px 0}.code{font:700 24px/1 ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.18em;padding:10px 14px;background:var(--bg);border:1px solid var(--line);border-radius:12px;user-select:all;-webkit-user-select:all}.btn{appearance:none;border:0;background:var(--accent);color:#fff;padding:12px 18px;min-height:44px;border-radius:999px;font:inherit;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.btn.outline{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}.links{display:flex;flex-direction:column;gap:8px;margin-top:8px}.hint{color:var(--muted);font-size:14px;margin:12px 0 0}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}
