.home[data-v-15cdb2fd]{text-align:center;padding:60px 20px}.home h1[data-v-15cdb2fd]{font-size:2.5em;color:var(--gold);margin-bottom:10px}.home .sub[data-v-15cdb2fd]{color:#888;margin-bottom:40px}.battle-types[data-v-15cdb2fd]{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.battle-type-card[data-v-15cdb2fd]{background:var(--card-bg);border:1px solid #333;border-radius:16px;padding:30px 40px;cursor:pointer;transition:.2s;min-width:200px}.battle-type-card[data-v-15cdb2fd]:hover{border-color:var(--gold);transform:translateY(-4px)}.battle-type-card .icon[data-v-15cdb2fd]{font-size:3em;margin-bottom:10px}.battle-type-card .name[data-v-15cdb2fd]{font-size:1.3em;font-weight:700}.battle-type-card .desc[data-v-15cdb2fd]{font-size:.8em;color:#888;margin-top:5px}.pet-slot[data-v-fe06d7be]{flex:1;background:var(--card-bg);border:2px dashed #444;border-radius:16px;padding:20px;min-height:200px;text-align:center;position:relative}.pet-slot.filled[data-v-fe06d7be]{border-style:solid;border-color:transparent}.pet-slot.filled[data-v-fe06d7be]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:16px;padding:2px;background:conic-gradient(from 135deg,var(--gb1),var(--gb2),var(--gb1));-webkit-mask:linear-gradient(#fff 0 100%) content-box,linear-gradient(#fff 0 100%);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:0}.pet-slot.filled .slot-label[data-v-fe06d7be],.pet-slot.filled .pet-info[data-v-fe06d7be]{position:relative;z-index:1}.pet-slot .slot-label[data-v-fe06d7be]{font-size:.9em;color:#888;margin-bottom:10px}.pet-slot .pet-info[data-v-fe06d7be]{margin-top:10px}.pet-img[data-v-fe06d7be],.unknown-img[data-v-fe06d7be]{width:50px;height:50px;border-radius:6px;display:block;margin:0 auto 5px}.pet-img[data-v-fe06d7be]{object-fit:contain}.unknown-img[data-v-fe06d7be]{background:#000}.pet-slot .pet-info .name[data-v-fe06d7be]{font-size:1.2em;font-weight:700}.pet-slot .pet-info .stats[data-v-fe06d7be]{font-size:.8em;color:#aaa;margin:5px 0}.pet-slot .pet-info .skills[data-v-fe06d7be]{font-size:.75em;color:#888}.scanner-overlay[data-v-5c32b677]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100}.scanner-window[data-v-5c32b677]{width:260px;height:260px;position:relative;border-radius:12px;overflow:hidden}.scanner-window video[data-v-5c32b677]{width:100%;height:100%;object-fit:cover}.scan-frame[data-v-5c32b677]{position:absolute;top:10px;left:10px;right:10px;bottom:10px;border:2px solid rgba(255,255,255,.6);border-radius:8px;box-shadow:0 0 0 999px #00000080;pointer-events:none}.zoom-control[data-v-5c32b677]{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;background:#0009;padding:8px 6px;border-radius:20px;z-index:20;height:70vh;justify-content:center}.scanner-overlay .close-btn[data-v-5c32b677]{margin-top:20px;padding:10px 30px;background:#555;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1em}.scanner-overlay .hint[data-v-5c32b677]{color:#aaa;margin-top:15px;font-size:.9em}.team-setup[data-v-46dc8a7f]{display:flex;gap:20px;margin:20px 0}.pet-slot-wrap[data-v-46dc8a7f]{flex:1}.btn-random[data-v-46dc8a7f]{width:100%;margin-top:8px;background:#444;color:var(--text)}@media(max-width:600px){.team-setup[data-v-46dc8a7f]{flex-direction:column}}.team-setup[data-v-42f9e214]{display:flex;gap:20px;margin:20px 0}.pet-slot-wrap[data-v-42f9e214]{width:100%}.btn-random[data-v-42f9e214]{width:100%;margin-top:8px;margin-bottom:8px;background:#444;color:var(--text)}@media(max-width:600px){.team-setup[data-v-42f9e214]{flex-direction:column}}.team-setup[data-v-76d37f29]{display:flex;gap:20px;margin:20px 0}.pet-slot-wrap[data-v-76d37f29]{width:100%}.btn-random[data-v-76d37f29]{width:100%;margin-top:8px;margin-bottom:8px;background:#444;color:var(--text)}@media(max-width:600px){.team-setup[data-v-76d37f29]{flex-direction:column}}.action-panel[data-v-436a1b52]{background:var(--card-bg);border-radius:12px;padding:15px;min-width:0}.action-title[data-v-436a1b52]{font-size:1em;margin-bottom:10px;color:var(--gold);line-height:1.4;overflow-wrap:anywhere}.slot-label[data-v-436a1b52]{color:#aaa;font-size:.85em;margin:0 6px}.dice-area[data-v-436a1b52]{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:10px 0}.dice-btn[data-v-436a1b52]{flex:0 0 56px;width:56px;height:56px;border-radius:50%;border:2px solid var(--gold);background:#2a2a2a;color:var(--gold);font-size:1.5em;cursor:pointer}.dice-btn[data-v-436a1b52]:hover{background:var(--gold);color:#000}.btn-skill[data-v-436a1b52]{background:#2a2a4a;color:var(--text);padding:10px;min-height:44px;text-align:left;width:100%;border:none;border-radius:6px;margin:3px 0;cursor:pointer;display:flex;gap:8px;justify-content:space-between;line-height:1.35;overflow-wrap:anywhere}.btn-skill[data-v-436a1b52]:hover{background:#3a3a5a}.btn-skill>span[data-v-436a1b52]:first-child{min-width:0}.btn-skill>span[data-v-436a1b52]:last-child{flex:0 0 auto}.btn-pet[data-v-436a1b52]{background:#2a2a4a;color:var(--text);padding:8px;min-height:44px;margin:3px;border:none;border-radius:6px;cursor:pointer;max-width:100%;line-height:1.35;overflow-wrap:anywhere}.target-row[data-v-436a1b52]{display:flex;gap:6px;flex-wrap:wrap;margin:2px 0 8px}.btn-target[data-v-436a1b52]{background:#34343f;color:var(--text);padding:6px 10px;border:1px solid #555;border-radius:6px;cursor:pointer}.btn-target[data-v-436a1b52]:hover{border-color:var(--gold)}.target-slot[data-v-436a1b52]{color:#aaa;font-size:.85em;margin-right:4px}.btn-skip[data-v-436a1b52]{background:#555;color:#fff;padding:8px 16px;border:none;border-radius:6px;cursor:pointer}@media(max-width:520px){.action-panel[data-v-436a1b52]{padding:10px}.dice-area[data-v-436a1b52]{gap:6px}.dice-btn[data-v-436a1b52]{flex-basis:44px;width:44px;height:44px;font-size:1.2em}.btn-skill[data-v-436a1b52]{padding:9px}}.battle-layout[data-v-e8189c79]{min-height:calc(100dvh - 20px)}.battle-main[data-v-e8189c79]{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.9fr);gap:12px;min-height:calc(100dvh - 20px)}.battle-side[data-v-e8189c79]{display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;min-height:0}.duel-field[data-v-e8189c79]{display:flex;flex-direction:row;gap:12px;align-items:stretch;min-height:0}.team[data-v-e8189c79]{flex:1;min-width:0;background:var(--card-bg);border-radius:12px;padding:12px;border:1px solid #333;text-align:center;display:flex;flex-direction:column;align-items:center}.team.enemy[data-v-e8189c79]{border-color:var(--red)}.team.player[data-v-e8189c79]{border-color:var(--blue)}.pet-card[data-v-e8189c79]{background:#ffffff0d;border-radius:8px;padding:10px;margin-bottom:10px;width:100%;display:flex;flex-direction:column;align-items:center}.pet-card[data-v-e8189c79]:last-child{margin-bottom:0}.pet-card.active[data-v-e8189c79]{border:2px solid var(--gold)}.pet-card.defeated[data-v-e8189c79]{opacity:.4}.duel-img[data-v-e8189c79]{width:min(100%,116px);aspect-ratio:1;object-fit:contain;border-radius:8px;margin:5px auto}.unknown-img[data-v-e8189c79]{background:#000}.pet-name[data-v-e8189c79]{font-size:1.1em;font-weight:700;max-width:100%;overflow-wrap:anywhere}.elem-tags[data-v-e8189c79]{font-size:.75em;margin-top:2px;max-width:100%;overflow-wrap:anywhere}.hp-row[data-v-e8189c79]{display:flex;align-items:center;gap:6px;width:100%;margin-top:6px}.hp-cur[data-v-e8189c79]{font-size:.75em;font-weight:700;color:#eee}.hp-max[data-v-e8189c79]{font-size:.75em;color:#aaa}.hp-track[data-v-e8189c79]{flex:1;height:16px;background:var(--hp-bg);border-radius:4px;overflow:hidden}.hp-fill[data-v-e8189c79]{height:100%;background:var(--hp-bar);border-radius:4px;transition:width .3s}.defeated-tag[data-v-e8189c79]{color:var(--red);margin-top:10px;font-size:1em}.log[data-v-e8189c79]{background:var(--card-bg);border-radius:8px;padding:10px;overflow-y:auto;font-size:.8em;min-height:160px}@media(max-width:1100px){.battle-main[data-v-e8189c79]{grid-template-columns:minmax(0,1.25fr) minmax(260px,.9fr)}.duel-img[data-v-e8189c79]{width:min(100%,96px)}}@media(max-width:820px),(orientation:portrait){.battle-layout[data-v-e8189c79],.battle-main[data-v-e8189c79]{min-height:auto}.battle-main[data-v-e8189c79]{grid-template-columns:1fr}.battle-side[data-v-e8189c79]{grid-template-rows:auto auto}.duel-field[data-v-e8189c79]{flex-direction:column}.team[data-v-e8189c79]{padding:10px}.log[data-v-e8189c79]{max-height:28dvh;min-height:140px}}@media(max-width:520px){.duel-field[data-v-e8189c79]{gap:10px}.pet-card[data-v-e8189c79]{padding:8px}.pet-name[data-v-e8189c79]{font-size:1em}.hp-row[data-v-e8189c79]{gap:4px}.hp-cur[data-v-e8189c79],.hp-max[data-v-e8189c79],.elem-tags[data-v-e8189c79]{font-size:.7em}.hp-track[data-v-e8189c79]{height:14px}}.pet-card[data-v-a9e7486e]{display:flex;align-items:center;gap:8px;background:#ffffff0d;border-radius:8px;padding:8px;margin-bottom:6px;min-width:0}.pet-card.active[data-v-a9e7486e]{border:2px solid var(--gold)}.pet-card.defeated[data-v-a9e7486e]{opacity:.4}.team-img[data-v-a9e7486e]{width:28px;height:28px;object-fit:contain;border-radius:4px;flex:0 0 28px}.unknown-img[data-v-a9e7486e]{background:#000}.pet-info[data-v-a9e7486e]{display:flex;flex:1 1 auto;flex-direction:column;gap:4px;min-width:0}.pet-heading[data-v-a9e7486e]{display:flex;align-items:center;column-gap:4px;row-gap:1px;flex-wrap:wrap;min-width:0}.pet-name[data-v-a9e7486e]{flex:0 1 auto;min-width:0;max-width:100%;font-size:1em;font-weight:700;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.elem-tags[data-v-a9e7486e]{display:inline-flex;flex:0 1 auto;flex-wrap:wrap;column-gap:2px;font-size:.7em;line-height:1.15;overflow-wrap:anywhere}.hp-bar[data-v-a9e7486e]{position:relative;height:16px;background:var(--hp-bg);border-radius:8px;overflow:hidden}.hp-fill[data-v-a9e7486e]{position:absolute;inset:0 auto 0 0;height:100%;background:var(--hp-bar);border-radius:8px;transition:width .3s}.hp-text[data-v-a9e7486e]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.75em;color:#fff;line-height:1;overflow:hidden;text-align:center;text-overflow:clip;text-shadow:0 1px 2px rgba(0,0,0,.75);white-space:nowrap}.defeated-tag[data-v-a9e7486e]{color:var(--red);font-size:.85em;line-height:1.2}@media(max-width:520px){.pet-card[data-v-a9e7486e]{gap:6px;padding:7px}.team-img[data-v-a9e7486e]{width:24px;height:24px;flex-basis:24px}.pet-name[data-v-a9e7486e]{font-size:.95em}.hp-bar[data-v-a9e7486e]{height:15px}}.battle-layout[data-v-d2f5b923]{min-height:calc(100dvh - 20px)}.battle-main[data-v-d2f5b923]{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.9fr);gap:12px;min-height:calc(100dvh - 20px)}.battle-side[data-v-d2f5b923]{display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;min-height:0}.team-field[data-v-d2f5b923]{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:0}.team[data-v-d2f5b923]{min-width:0;background:var(--card-bg);border-radius:12px;padding:8px;border:1px solid #333;overflow-y:auto}.team.enemy[data-v-d2f5b923]{border-color:var(--red)}.team.player[data-v-d2f5b923]{border-color:var(--blue)}.team-header[data-v-d2f5b923]{text-align:center;font-size:.9em;margin-bottom:6px;color:#aaa}.team-pets[data-v-d2f5b923]{min-width:0}.team[data-v-d2f5b923] .pet-card{gap:6px;padding:6px 8px;margin-bottom:5px}.team[data-v-d2f5b923] .pet-card.active{border-width:2px}.team[data-v-d2f5b923] .team-img{width:22px;height:22px;flex-basis:22px}.team[data-v-d2f5b923] .pet-name{font-size:.9em;line-height:1.15}.team[data-v-d2f5b923] .elem-tags{font-size:.64em}.team[data-v-d2f5b923] .hp-text{font-size:.62em}.team[data-v-d2f5b923] .hp-bar{height:14px}.log[data-v-d2f5b923]{background:var(--card-bg);border-radius:8px;padding:10px;overflow-y:auto;font-size:.8em;min-height:clamp(88px,22vh,160px)}@media(max-width:1100px){.battle-main[data-v-d2f5b923]{grid-template-columns:minmax(0,1.25fr) minmax(260px,.9fr)}}@media(max-width:820px),(orientation:portrait){.battle-layout[data-v-d2f5b923],.battle-main[data-v-d2f5b923]{min-height:auto}.battle-main[data-v-d2f5b923]{grid-template-columns:1fr}.battle-side[data-v-d2f5b923]{grid-template-rows:auto auto}.team-field[data-v-d2f5b923]{grid-template-columns:1fr}.team[data-v-d2f5b923]{overflow-y:visible}.team-pets[data-v-d2f5b923]{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(128px,1fr);gap:6px;overflow-x:auto;padding-bottom:2px}.team[data-v-d2f5b923] .pet-card{margin-bottom:0}.log[data-v-d2f5b923]{max-height:28dvh;min-height:140px}}@media(max-width:520px){.team[data-v-d2f5b923],.log[data-v-d2f5b923]{padding:10px}.team-field[data-v-d2f5b923]{gap:10px}.team-pets[data-v-d2f5b923]{grid-auto-columns:minmax(124px,1fr)}.team[data-v-d2f5b923] .pet-card{padding-inline:6px}}.battle-layout[data-v-d2f5b923] .action-panel{max-height:min(38vh,260px);overflow-y:auto}*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #1a1a2e;--card-bg: #16213e;--text: #eee;--hp-bar: #e94560;--hp-bg: #333;--btn: #0f3460;--btn-hover: #1a5276;--btn-text: #fff;--gold: #f0c040;--green: #4caf50;--red: #f44336;--blue: #2196f3}body{font-family:Noto Sans SC,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--text);min-height:100vh}#app{width:100%;max-width:1200px;margin:0 auto;padding:10px}@media(max-width:520px){#app{padding:8px}}.btn{padding:12px 30px;border:none;border-radius:8px;cursor:pointer;font-size:1em}.btn-primary{background:var(--btn);color:var(--btn-text)}.btn-primary:hover{background:var(--btn-hover)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-start{background:var(--gold);color:#000;font-size:1.2em;padding:14px 50px;margin-top:20px}.btn-start:disabled{opacity:.4;cursor:not-allowed}.btn-scan{background:var(--green);color:#fff;font-size:1em;padding:10px 25px;margin-top:10px}.btn-back{background:#555;color:#fff;padding:8px 20px;margin-bottom:10px}.elem-金{color:#f0c040}.elem-木{color:#4caf50}.elem-水{color:#42a5f5}.elem-火{color:#ef5350}.elem-土{color:#a1887f}.elem-物{color:#111}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-thumb{background:#555;border-radius:3px}
