:root{color-scheme:light;--tori-bg:#fafafa;--tori-card:#fff;--tori-fg:#171717;--tori-muted:#686868;--tori-border:#e5e5e5;--tori-soft:#f4f4f5;--tori-primary:#895b36;--tori-on-primary:#fff;--tori-primary-soft:#f3ebe4;--tori-danger:#b42318;--tori-success:#187450;--tori-ring:#895b36;--tori-radius:10px;--tori-space:4px;--tori-chart-1:#2563eb;--tori-chart-2:#0d9488;--tori-chart-3:#b45309;--tori-chart-4:#9333ea;--tori-chart-5:#db2777}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--tori-bg:#171717;--tori-card:#202020;--tori-fg:#fafafa;--tori-muted:#aaa;--tori-border:#393939;--tori-soft:#2b2b2b;--tori-primary:#d4a276;--tori-on-primary:#241b14;--tori-primary-soft:#332a23;--tori-danger:#fda29b;--tori-success:#75d6ac;--tori-ring:#d4a276;--tori-chart-1:#76a7ff;--tori-chart-2:#5bd4bc;--tori-chart-3:#f6ba66;--tori-chart-4:#c296fb;--tori-chart-5:#f68fc0}}[data-theme=dark]{color-scheme:dark;--tori-bg:#171717;--tori-card:#202020;--tori-fg:#fafafa;--tori-muted:#aaa;--tori-border:#393939;--tori-soft:#2b2b2b;--tori-primary:#d4a276;--tori-on-primary:#241b14;--tori-primary-soft:#332a23;--tori-danger:#fda29b;--tori-success:#75d6ac;--tori-ring:#d4a276;--tori-chart-1:#76a7ff;--tori-chart-2:#5bd4bc;--tori-chart-3:#f6ba66;--tori-chart-4:#c296fb;--tori-chart-5:#f68fc0}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--tori-bg);color:var(--tori-fg)}body{margin:0}*,*:before,*:after{box-sizing:border-box}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--tori-ring);outline-offset:3px}button:disabled{cursor:default;opacity:.5}.tori-card{border:1px solid var(--tori-border);border-radius:var(--tori-radius);background:var(--tori-card);padding:24px}.tori-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:8px 14px;border:1px solid var(--tori-border);border-radius:var(--tori-radius);background:var(--tori-card);color:var(--tori-fg);text-decoration:none;cursor:pointer}.tori-button:hover{background:var(--tori-soft)}.tori-button-primary{background:var(--tori-primary);color:var(--tori-on-primary)}.tori-button-primary:hover{background:var(--tori-primary);color:var(--tori-on-primary);filter:brightness(.94)}.tori-input{padding:10px 12px;border:1px solid var(--tori-border);border-radius:var(--tori-radius);background:var(--tori-card);color:var(--tori-fg)}.tori-muted{color:var(--tori-muted)}.tori-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.card[data-v-e7df70b4]{position:relative;width:100%;aspect-ratio:3 / 4;border-radius:var(--tori-radius);overflow:hidden;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;background:var(--tori-card)}.card.dead[data-v-e7df70b4]{filter:grayscale(100%)}.card.confirmed[data-v-e7df70b4]{opacity:.55}.back-img[data-v-e7df70b4]{width:100%;height:100%;object-fit:cover;display:block}.overlay[data-v-e7df70b4]{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);background:#000000bf;padding:14px 8px;display:flex;flex-direction:column;align-items:center;gap:10px;color:#fff;font-weight:700;box-shadow:0 2px 4px #0000004d}.player-num[data-v-e7df70b4]{font-size:2rem;line-height:1}.hint.swipe[data-v-e7df70b4]{animation:swipe-move-e7df70b4 1.5s ease-in-out infinite}.hint.tap[data-v-e7df70b4]{animation:tap-pulse-e7df70b4 1.5s ease-in-out infinite}@keyframes swipe-move-e7df70b4{0%,to{transform:translate(-14px);opacity:.8}50%{transform:translate(14px);opacity:1}}@keyframes tap-pulse-e7df70b4{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.15);opacity:1}}.overlay[data-v-802257f7]{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:2000;padding:16px}.content[data-v-802257f7]{display:flex;flex-direction:column;align-items:center;gap:18px;max-width:600px;width:100%}.role-img[data-v-802257f7]{max-width:100%;max-height:65vh;object-fit:contain;border-radius:var(--tori-radius)}.role-name[data-v-802257f7]{font-size:2rem;font-weight:700;margin:0;color:#fff}.hint[data-v-802257f7]{font-size:1.1rem;color:var(--tori-muted);margin:0;animation:pulse-802257f7 2s ease-in-out infinite}@keyframes pulse-802257f7{0%,to{opacity:.7}50%{opacity:1}}.overlay[data-v-69e59e0e]{position:fixed;inset:0;background:#000000bf;display:flex;align-items:flex-start;justify-content:center;z-index:1500;padding:16px;overflow-y:auto}.modal[data-v-69e59e0e]{background:var(--tori-card);border:1px solid var(--border);border-radius:var(--tori-radius);width:100%;max-width:720px;padding:16px;margin:16px 0 32px}header[data-v-69e59e0e]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}h2[data-v-69e59e0e]{margin:0;font-size:1.4rem}section[data-v-69e59e0e]{margin-bottom:18px}label[data-v-69e59e0e]{display:block;margin-bottom:8px;color:var(--fg-dim);font-weight:500}.sub-label[data-v-69e59e0e]{color:var(--fg-dim);margin:10px 0 6px;font-size:.9rem}.empty[data-v-69e59e0e]{padding:14px;text-align:center;background:var(--bg-soft);border-radius:var(--tori-radius);color:var(--fg-dim)}.counter[data-v-69e59e0e]{display:flex;align-items:center;gap:16px;justify-content:center}.counter span[data-v-69e59e0e]{font-size:1.3rem;font-weight:700;min-width:80px;text-align:center}.counter button[data-v-69e59e0e]{width:40px;height:40px;border-radius:var(--tori-radius);border:1px solid var(--border);background:var(--bg-soft);color:var(--fg);font-size:1.4rem}.grid[data-v-69e59e0e]{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px}.grid.available .role-tile[data-v-69e59e0e]{border:2px solid rgba(124,58,237,.4)}.role-tile[data-v-69e59e0e]{background:var(--bg-soft);border:2px solid transparent;border-radius:var(--tori-radius);overflow:hidden;padding:0;position:relative;color:var(--fg);cursor:pointer;transition:transform .15s}.role-tile.selected[data-v-69e59e0e]{border-color:var(--ok)}.role-tile img[data-v-69e59e0e]{width:100%;aspect-ratio:3 / 4;object-fit:cover;display:block}.role-tile span[data-v-69e59e0e]{display:block;font-size:.78rem;padding:4px 2px;background:#00000073;text-align:center}.role-tile em[data-v-69e59e0e]{position:absolute;top:4px;right:4px;background:var(--ok);font-style:normal;font-size:.7rem;padding:2px 6px;border-radius:4px;color:#fff;font-weight:700}.preset-row[data-v-69e59e0e]{display:flex;flex-wrap:wrap;gap:8px}.preset-btn[data-v-69e59e0e]{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--tori-radius);padding:8px 12px;color:var(--fg);text-align:left}.preset-btn.history[data-v-69e59e0e]{background:#4caf501f;border-color:#4caf5059}.preset-title[data-v-69e59e0e]{font-weight:700}.preset-tags[data-v-69e59e0e]{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;font-size:.78rem}.preset-tags span[data-v-69e59e0e]{background:var(--tori-soft);padding:2px 6px;border-radius:4px}.pref-list[data-v-69e59e0e]{display:flex;flex-direction:column;gap:6px}.pref-row[data-v-69e59e0e]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#4caf501f;border-radius:var(--tori-radius)}.add-pref[data-v-69e59e0e]{background:#2196f31f;color:#4ea7f7;border:1px solid rgba(33,150,243,.4);padding:8px 14px;border-radius:var(--tori-radius);margin-top:8px}.add-pref-form[data-v-69e59e0e]{margin-top:12px;padding:12px;background:var(--bg-soft);border-radius:var(--tori-radius)}.player-row[data-v-69e59e0e]{display:flex;flex-wrap:wrap;gap:6px}.player-btn[data-v-69e59e0e]{padding:6px 10px;border-radius:var(--tori-radius);border:2px solid var(--border);background:var(--bg-soft);color:var(--fg)}.player-btn.selected[data-v-69e59e0e]{background:var(--accent);border-color:var(--accent);color:var(--tori-on-primary)}.pref-actions[data-v-69e59e0e]{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}footer[data-v-69e59e0e]{display:flex;justify-content:flex-end;gap:8px;margin-top:8px;padding-top:12px;border-top:1px solid var(--border)}button.x[data-v-69e59e0e]{width:32px;height:32px;border-radius:var(--tori-radius);background:transparent;color:var(--fg-dim);border:1px solid var(--border);font-size:1.1rem}button.cancel[data-v-69e59e0e]{background:var(--bg-soft);border:1px solid var(--border);color:var(--fg);padding:10px 18px;border-radius:var(--tori-radius)}button.start[data-v-69e59e0e],button.ok[data-v-69e59e0e]{background:var(--ok);border:none;color:var(--tori-on-primary);padding:10px 18px;border-radius:var(--tori-radius);font-weight:700}button.start[data-v-69e59e0e]:disabled,button.ok[data-v-69e59e0e]:disabled{background:var(--tori-soft);color:var(--tori-muted)}main[data-v-9f5d3ea0]{max-width:960px;margin:0 auto;padding:16px 16px 40px}.topbar[data-v-9f5d3ea0]{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}h1[data-v-9f5d3ea0]{font-size:1.6rem;margin:0;background:linear-gradient(135deg,#fff,var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.actions[data-v-9f5d3ea0]{display:flex;gap:8px}button.primary[data-v-9f5d3ea0]{background:var(--accent);border:none;color:var(--tori-on-primary);padding:10px 16px;border-radius:var(--tori-radius);font-weight:700}button.ghost[data-v-9f5d3ea0]{background:transparent;border:1px solid var(--border);color:var(--fg);padding:10px 14px;border-radius:var(--tori-radius)}.empty[data-v-9f5d3ea0]{text-align:center;padding:60px 20px;color:var(--fg-dim);background:var(--bg-soft);border-radius:var(--tori-radius)}.group[data-v-9f5d3ea0]{margin-bottom:28px}.group h3[data-v-9f5d3ea0]{font-size:1.1rem;margin:0 0 12px;padding-bottom:6px;border-bottom:2px solid var(--border)}.cards[data-v-9f5d3ea0]{display:grid;grid-template-columns:1fr;gap:12px}.controls[data-v-9f5d3ea0]{display:flex;justify-content:center;margin-bottom:16px}.final-cards[data-v-9f5d3ea0]{grid-template-columns:repeat(3,1fr)}.flip-card[data-v-9f5d3ea0]{perspective:1000px;display:flex;flex-direction:column;gap:6px}.flip-card.dead .flip-side img[data-v-9f5d3ea0]{filter:grayscale(100%)}.flip-inner[data-v-9f5d3ea0]{position:relative;width:100%;aspect-ratio:3 / 4;transform-style:preserve-3d;cursor:pointer}.flip-side[data-v-9f5d3ea0]{position:absolute;inset:0;border-radius:var(--tori-radius);overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:transform .6s}.flip-side img[data-v-9f5d3ea0]{width:100%;height:100%;object-fit:cover;display:block}.flip-side .label[data-v-9f5d3ea0]{position:absolute;bottom:0;left:0;right:0;background:#000000b3;text-align:center;padding:6px 4px;font-weight:700;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flip-side.front[data-v-9f5d3ea0]{transform:rotateY(0)}.flip-side.back[data-v-9f5d3ea0]{transform:rotateY(180deg)}.flip-card.flipped .flip-side.front[data-v-9f5d3ea0]{transform:rotateY(-180deg)}.flip-card.flipped .flip-side.back[data-v-9f5d3ea0]{transform:rotateY(0)}.dead-btn[data-v-9f5d3ea0]{padding:6px 0;border-radius:var(--tori-radius);border:none;background:#ef444440;color:#fff;font-size:.8rem}.dead-btn.alive[data-v-9f5d3ea0]{background:#4caf504d}@media(max-width:540px){.final-cards[data-v-9f5d3ea0]{grid-template-columns:repeat(2,1fr)}}:root{--bg: var(--tori-bg);--bg-soft: var(--tori-card);--bg-card: var(--tori-card);--border: var(--tori-border);--fg: var(--tori-fg);--fg-dim: var(--tori-muted);--accent: var(--tori-primary);--accent-2: var(--tori-muted);--danger: var(--tori-danger);--ok: var(--tori-success);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html,body,#app{margin:0;padding:0;min-height:100vh;background:var(--bg);color:var(--fg);-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}
