.phase1[data-v-bff2c2f0]{flex:1;display:flex;flex-direction:column}.progress-bar-wrap[data-v-bff2c2f0]{padding:14px 32px;border-bottom:1px solid var(--border)}.progress-stats[data-v-bff2c2f0]{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:6px}.progress-track[data-v-bff2c2f0]{height:4px;background:var(--surface);border-radius:2px;overflow:hidden}.progress-fill[data-v-bff2c2f0]{height:100%;background:var(--green);border-radius:2px;transition:width .3s}.body[data-v-bff2c2f0]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:16px;overflow:hidden}.main-area[data-v-bff2c2f0]{flex:1;display:flex;gap:24px;width:100%;min-height:0;align-items:stretch}.center[data-v-bff2c2f0]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-width:0}.sidebar[data-v-bff2c2f0]{width:200px;flex-shrink:0;display:flex;flex-direction:column;gap:20px;border-left:1px solid var(--border);padding:8px 0 8px 24px;overflow-y:auto}.sidebar-title[data-v-bff2c2f0]{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}.key-row[data-v-bff2c2f0]{font-size:12px;color:var(--muted);margin-bottom:5px;display:flex;align-items:center;gap:4px}.key-row span[data-v-bff2c2f0]{color:var(--muted)}kbd[data-v-bff2c2f0]{display:inline-block;padding:1px 6px;font-size:11px;font-family:inherit;background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text);min-width:22px;text-align:center}.scale-row[data-v-bff2c2f0]{font-size:12px;color:var(--muted);margin-bottom:4px}.scale-num[data-v-bff2c2f0]{display:inline-block;width:16px;color:var(--gold-bright);font-weight:600}.sidebar-text[data-v-bff2c2f0]{font-size:12px;color:var(--muted);line-height:1.5}.img-wrap[data-v-bff2c2f0]{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;width:100%;max-width:900px}.img-wrap img[data-v-bff2c2f0]{max-height:65vh;max-width:100%;object-fit:contain;border-radius:4px;border:1px solid var(--border)}.meta[data-v-bff2c2f0]{font-size:13px;color:var(--muted);text-align:center}.controls[data-v-bff2c2f0]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}.rate-btn[data-v-bff2c2f0]{width:48px;height:48px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:18px;font-weight:600;cursor:pointer;transition:color .15s,background .15s,border-color .15s,transform .1s;display:flex;align-items:center;justify-content:center}.rate-btn[data-v-bff2c2f0]:hover{background:var(--highlight);color:var(--text);border-color:var(--border-hover)}.rate-btn[data-v-bff2c2f0]:active{transform:scale(.95)}.rate-btn.active-rating[data-v-bff2c2f0]{border-color:var(--gold);color:var(--gold-bright);background:var(--gold-bg)}.rate-btn.skip[data-v-bff2c2f0]{width:auto;padding:0 16px;font-size:13px;font-weight:500}.rate-btn.skip.active-skip[data-v-bff2c2f0]{border-color:var(--red);color:var(--red-text);background:var(--red-bg)}.rate-btn.undo[data-v-bff2c2f0]{width:auto;padding:0 16px;font-size:13px;font-weight:500;margin-left:12px}.rate-btn.comment[data-v-bff2c2f0]{width:auto;padding:0 16px;font-size:13px;font-weight:500}.rate-btn.has-comment[data-v-bff2c2f0]{border-color:var(--green);color:var(--green-text);background:var(--green-bg)}.comment-area[data-v-bff2c2f0]{width:100%;max-width:500px}.comment-area textarea[data-v-bff2c2f0]{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-family:inherit;font-size:16px;padding:8px 12px;resize:vertical;outline:none}.comment-area textarea[data-v-bff2c2f0]:focus{border-color:var(--border-hover)}.comment-area textarea[data-v-bff2c2f0]::placeholder{color:var(--muted)}.m-controls[data-v-bff2c2f0]{display:none}.hint[data-v-bff2c2f0]{font-size:11px;color:var(--muted);text-align:center}@media(max-width:900px){.progress-bar-wrap[data-v-bff2c2f0]{padding:8px 16px}.sidebar[data-v-bff2c2f0],.controls[data-v-bff2c2f0],.hint[data-v-bff2c2f0]{display:none}.body[data-v-bff2c2f0]{padding:0}.center[data-v-bff2c2f0]{gap:0;justify-content:flex-start}.img-wrap[data-v-bff2c2f0]{flex:1;border-radius:0}.img-wrap img[data-v-bff2c2f0]{max-height:none;height:100%;width:100%;object-fit:contain;border:none;border-radius:0}.meta[data-v-bff2c2f0]{font-size:11px;padding:6px 0 2px}.m-controls[data-v-bff2c2f0]{display:flex;flex-direction:column;gap:6px;padding:4px 12px 8px;width:100%}.m-row-numbers[data-v-bff2c2f0]{display:flex;gap:6px;justify-content:center}.m-num[data-v-bff2c2f0]{flex:1;max-width:52px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:17px;font-weight:600;cursor:pointer;transition:color .15s,background .15s,border-color .15s,transform .1s}.m-num[data-v-bff2c2f0]:active{transform:scale(.9)}.m-num.active-rating[data-v-bff2c2f0]{border-color:var(--gold);color:var(--gold-bright);background:var(--gold-bg)}.m-row-actions[data-v-bff2c2f0]{display:flex;gap:6px;justify-content:center}.m-act[data-v-bff2c2f0]{flex:1;height:36px;border-radius:18px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:12px;cursor:pointer;transition:color .15s,background .15s,border-color .15s,transform .1s}.m-act[data-v-bff2c2f0]:active{transform:scale(.95);background:var(--highlight);color:var(--text)}.m-act.active-skip[data-v-bff2c2f0]{border-color:var(--red);color:var(--red-text);background:var(--red-bg)}.m-act.has-comment[data-v-bff2c2f0]{border-color:var(--green);color:var(--green-text)}.comment-area[data-v-bff2c2f0]{max-width:100%;padding:0 12px 4px}}.phase2[data-v-e9af68cf]{flex:1;display:flex;flex-direction:column}.progress-bar-wrap[data-v-e9af68cf]{padding:14px 32px;border-bottom:1px solid var(--border)}.progress-stats[data-v-e9af68cf]{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:6px}.progress-track[data-v-e9af68cf]{height:4px;background:var(--surface);border-radius:2px;overflow:hidden}.progress-fill[data-v-e9af68cf]{height:100%;background:var(--green);border-radius:2px;transition:width .3s}.body[data-v-e9af68cf]{flex:1;display:flex;flex-direction:column;align-items:center;padding:24px;gap:16px;overflow:hidden}.pair[data-v-e9af68cf]{flex:1;display:flex;gap:16px;min-height:0;width:100%;max-width:1400px;align-items:center;justify-content:center}.side[data-v-e9af68cf]{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;max-height:70vh;cursor:pointer;border:2px solid var(--border);border-radius:8px;padding:8px;transition:border-color .15s,transform .1s;overflow:hidden}.side[data-v-e9af68cf]:hover{border-color:var(--gold)}.side[data-v-e9af68cf]:active{transform:scale(.98);border-color:var(--gold-bright)}.side img[data-v-e9af68cf]{max-height:65vh;max-width:100%;object-fit:contain;border-radius:4px}.controls[data-v-e9af68cf]{display:flex;align-items:center;gap:12px}.btn[data-v-e9af68cf]{padding:10px 24px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:14px;cursor:pointer;transition:color .15s,background .15s,border-color .15s,transform .1s}.btn[data-v-e9af68cf]:hover{background:var(--highlight);color:var(--text);border-color:var(--border-hover)}.btn[data-v-e9af68cf]:active{transform:scale(.95)}.btn.pick[data-v-e9af68cf]{min-width:120px}.mobile-label[data-v-e9af68cf]{display:none}.hint[data-v-e9af68cf]{font-size:11px;color:var(--muted)}.warning[data-v-e9af68cf]{text-align:center;padding:60px 32px;color:var(--muted);font-size:14px;line-height:1.6}@media(max-width:800px){.progress-bar-wrap[data-v-e9af68cf]{padding:10px 16px}.body[data-v-e9af68cf]{padding:8px;gap:8px}.pair[data-v-e9af68cf]{flex-direction:column;gap:8px}.side[data-v-e9af68cf]{padding:4px;border-radius:6px}.side img[data-v-e9af68cf]{max-height:34vh}.side[data-v-e9af68cf]:active{transform:scale(.97);border-color:var(--gold-bright)}.controls[data-v-e9af68cf]{gap:8px}.btn[data-v-e9af68cf]{padding:10px 16px;font-size:13px;border-radius:20px}.btn.pick[data-v-e9af68cf]{min-width:90px}.desktop-label[data-v-e9af68cf]{display:none}.mobile-label[data-v-e9af68cf]{display:inline}.hint[data-v-e9af68cf]{display:none}}.results[data-v-15ae41bd]{flex:1;display:flex;flex-direction:column}.toolbar[data-v-15ae41bd]{padding:14px 32px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar select[data-v-15ae41bd]{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:16px;padding:8px 10px;outline:none;cursor:pointer;min-height:44px}.toolbar label[data-v-15ae41bd]{font-size:12px;color:var(--muted)}.export-btn[data-v-15ae41bd]{font-size:13px;padding:8px 16px;min-height:44px;border-radius:20px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:color .15s,background .15s,border-color .15s,transform .1s}.export-btn[data-v-15ae41bd]:hover{background:var(--highlight);color:var(--text);border-color:var(--border-hover)}.export-btn[data-v-15ae41bd]:active{transform:scale(.97)}.grid[data-v-15ae41bd]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1px;background:var(--border);flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.card[data-v-15ae41bd]{background:var(--bg);padding:8px;display:flex;flex-direction:column;gap:6px}.card img[data-v-15ae41bd]{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px;border:1px solid var(--border);background:var(--surface)}.info[data-v-15ae41bd]{font-size:11px;color:var(--muted);display:flex;justify-content:space-between}.rank[data-v-15ae41bd]{font-weight:700;color:var(--text);font-size:12px}.elo[data-v-15ae41bd]{color:var(--gold-bright);font-variant-numeric:tabular-nums}.artist-grid[data-v-15ae41bd]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1px;background:var(--border);flex:1;overflow-y:auto}.artist-card[data-v-15ae41bd]{background:var(--bg);padding:16px;display:flex;flex-direction:column;gap:6px}.artist-name[data-v-15ae41bd]{font-size:14px;font-weight:500}.artist-stats[data-v-15ae41bd]{font-size:12px;color:var(--muted)}.artist-thumb[data-v-15ae41bd]{width:100%;max-height:200px;object-fit:cover;border-radius:4px;margin-top:6px;border:1px solid var(--border);background:var(--surface)}.empty[data-v-15ae41bd]{padding:60px 32px;text-align:center;color:var(--muted);font-size:14px;grid-column:1 / -1}@media(max-width:800px){.toolbar[data-v-15ae41bd]{padding:10px 16px;gap:8px}.toolbar label[data-v-15ae41bd]{display:none}.toolbar select[data-v-15ae41bd]{font-size:14px;flex:1;min-width:0}.export-btn[data-v-15ae41bd]{flex:1;text-align:center}.grid[data-v-15ae41bd]{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.artist-grid[data-v-15ae41bd]{grid-template-columns:1fr}}:root{--bg: #0a0a0a;--surface: #111;--border: #222;--border-hover: #444;--text: #e0e0e0;--muted: #555;--highlight: #2a2a2a;--green: #3a7a3a;--green-text: #7ecb7e;--green-bg: #0d150d;--gold: #b8860b;--gold-bright: #daa520;--gold-bg: #1a1500;--red: #8b2020;--red-text: #e07070;--red-bg: #1a0808}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}.app{display:flex;flex-direction:column;min-height:100vh}header{padding:20px 32px 0;border-bottom:1px solid var(--border);position:relative}header h1{font-size:16px;font-weight:600;letter-spacing:.04em;margin-bottom:14px}.user-label{position:absolute;top:20px;right:32px;font-size:12px;color:var(--muted)}.tabs{display:flex;gap:0}.tab{font-size:13px;padding:8px 20px;border:1px solid var(--border);border-bottom:none;background:transparent;color:var(--muted);cursor:pointer;transition:color .15s,background .15s,border-color .15s;border-radius:6px 6px 0 0;margin-right:-1px}.tab:hover{color:var(--text);background:var(--surface)}.tab.active{background:var(--bg);color:var(--text);border-bottom:1px solid var(--bg);position:relative;z-index:1}.name-prompt{display:flex;align-items:center;justify-content:center;min-height:100vh}.name-box{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:40px;width:90%;max-width:360px;text-align:center}.name-box h2{font-size:16px;font-weight:600;margin-bottom:6px}.name-box p{font-size:13px;color:var(--muted);margin-bottom:24px}.name-box form{display:flex;flex-direction:column;gap:12px}.name-box input{background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:16px;padding:10px 14px;outline:none;text-align:center}.name-box input:focus{border-color:var(--gold)}.name-box input::placeholder{color:var(--muted)}.name-box button{padding:10px 20px;border-radius:6px;border:1px solid var(--border);background:var(--highlight);color:var(--text);font-size:14px;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s}.name-box button:hover:not(:disabled){background:#333;border-color:var(--border-hover)}.name-box button:active:not(:disabled){background:var(--surface)}.name-box button:disabled{opacity:.3;cursor:default}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:var(--muted);gap:16px}.spinner{width:32px;height:32px;border:2px solid var(--border);border-top-color:var(--text);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}button,a,input,textarea,select{touch-action:manipulation}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.bottom-bar{display:none}@media(max-width:800px){header{padding:12px 16px 0}header h1{font-size:14px;margin-bottom:0}.tabs{display:none}.user-label{top:12px;right:16px}.bottom-bar{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top:1px solid var(--border);z-index:50;padding-bottom:env(safe-area-inset-bottom,0)}.bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 6px;background:none;border:none;color:var(--muted);font-size:10px;cursor:pointer;transition:color .12s}.bottom-tab.active{color:var(--text)}.bottom-icon{font-size:18px}.app{padding-bottom:56px}}
