:root{--bg: #020202;--surface: #080808;--surface-raised: #0e0e0e;--border: #222222;--border-mid: #303030;--border-bright: #444444;--text-bright: #ffffff;--text: #cccccc;--text-muted: #999999;--text-dim: #7a7a7a;--glow-strong: 0 0 12px rgba(255,255,255,.45);--glow-medium: 0 0 8px rgba(255,255,255,.25);--glow-subtle: 0 0 6px rgba(255,255,255,.12);--danger: #cc4444;--danger-dim: #661a1a;--danger-bg: #1a0808;--border-hover: rgba(255, 255, 255, .15);--border-active: rgba(255, 255, 255, .3);--overlay-heavy: rgba(0, 0, 0, .92);--overlay-medium: rgba(0, 0, 0, .85);--overlay-light: rgba(0, 0, 0, .6);--font: "Courier New", "Lucida Console", "Consolas", monospace}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:12px;letter-spacing:2px;text-transform:uppercase;line-height:1.5;min-height:100vh;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}button,input,textarea,select{font-family:var(--font);letter-spacing:inherit;text-transform:inherit;touch-action:manipulation}.grid-cells{display:grid;gap:1px;background:var(--border-mid);border:1px solid var(--border-mid)}.grid-cells>*{background:var(--bg)}.grid-row{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:1px;background:var(--border-mid);border:1px solid var(--border-mid)}.grid-row>*{background:var(--bg)}.cell-btn{background:var(--bg);border:none;color:var(--text-dim);font-size:12px;letter-spacing:2px;text-transform:uppercase;padding:12px;cursor:pointer;transition:color .15s ease,background .15s ease,text-shadow .15s ease;text-align:center;min-height:48px;display:flex;align-items:center;justify-content:center}.cell-btn:hover{color:var(--text);background:var(--surface-raised)}.cell-btn:active{color:var(--text-bright);background:var(--surface)}.cell-btn.active{color:var(--text-bright);text-shadow:var(--glow-strong);background:var(--surface-raised)}.glow-active{color:var(--text-bright);text-shadow:var(--glow-strong)}.glow-hover{color:var(--text);text-shadow:var(--glow-medium)}.scan-lines{position:relative}.scan-lines:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.015) 2px,rgba(255,255,255,.015) 4px);pointer-events:none;z-index:1}.hud-progress{height:1px;background:var(--border)}.hud-progress-fill{height:1px;background:#fff6;box-shadow:var(--glow-subtle);transition:width .3s ease}:focus-visible{outline:1px solid rgba(255,255,255,.5);outline-offset:2px}.cell-btn:focus-visible{color:var(--text-bright);text-shadow:var(--glow-medium);outline:1px solid rgba(255,255,255,.4);outline-offset:-1px}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.dopamine-overlay[data-v-d1ea9bc3]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--overlay-heavy);display:flex;align-items:center;justify-content:center;padding:16px;animation:overlayIn-d1ea9bc3 .4s ease}.dopamine-overlay.exiting[data-v-d1ea9bc3]{animation:overlayOut-d1ea9bc3 .2s ease forwards}@keyframes overlayIn-d1ea9bc3{0%{opacity:0}to{opacity:1}}@keyframes overlayOut-d1ea9bc3{0%{opacity:1}to{opacity:0}}.dopamine-card[data-v-d1ea9bc3]{width:100%;max-width:600px;border:1px solid var(--border-mid);display:flex;flex-direction:column;opacity:0;transform:scale(.95);transition:opacity .3s ease,transform .3s ease}.dopamine-card.loaded[data-v-d1ea9bc3]{opacity:1;transform:scale(1)}.card-top[data-v-d1ea9bc3]{display:flex;justify-content:space-between;padding:12px 16px}.sys-msg[data-v-d1ea9bc3]{font-size:11px;letter-spacing:2px;color:var(--text);text-shadow:var(--glow-subtle)}.sys-id[data-v-d1ea9bc3]{font-size:10px;letter-spacing:2px;color:var(--text-dim)}.card-divider[data-v-d1ea9bc3]{height:1px;background:var(--border-mid)}.card-content[data-v-d1ea9bc3]{min-height:200px;display:flex;align-items:center;justify-content:center;background:var(--surface);overflow:hidden}.media-video[data-v-d1ea9bc3]{width:100%;max-height:55vh;object-fit:contain;display:block}.media-iframe[data-v-d1ea9bc3]{width:100%;aspect-ratio:16/9;display:block}.media-iframe.z0r[data-v-d1ea9bc3]{aspect-ratio:4/3}.media-img[data-v-d1ea9bc3]{width:100%;max-height:55vh;object-fit:contain;display:block}.fallback-text[data-v-d1ea9bc3]{font-size:20px;letter-spacing:4px;color:var(--text-muted);padding:40px 24px;text-align:center}.card-bottom[data-v-d1ea9bc3]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px}.card-stats[data-v-d1ea9bc3]{display:flex;gap:16px;font-size:10px;letter-spacing:2px;color:var(--text-dim)}.continue-btn[data-v-d1ea9bc3]{min-height:36px;padding:8px 24px;font-size:10px;letter-spacing:4px;border:1px solid var(--border-mid)}@media(max-width:767px){.dopamine-card[data-v-d1ea9bc3]{max-width:100%}.fallback-text[data-v-d1ea9bc3]{font-size:16px;padding:28px 16px}.card-stats[data-v-d1ea9bc3]{flex-direction:column;gap:4px}}.phase1[data-v-8e2a06f9]{display:flex;flex-direction:column;flex:1}.progress-area[data-v-8e2a06f9]{padding:12px 16px;border-bottom:1px solid var(--border)}.xp-row[data-v-8e2a06f9]{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:10px;letter-spacing:2px;position:relative}.xp-level[data-v-8e2a06f9]{color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.xp-track[data-v-8e2a06f9]{flex:1;height:3px;background:var(--border-mid);border-radius:1px}.xp-fill[data-v-8e2a06f9]{height:3px;background:#ffffff80;box-shadow:var(--glow-subtle);border-radius:1px;transition:width .3s ease}.xp-text[data-v-8e2a06f9]{color:var(--text-dim);white-space:nowrap}.xp-float[data-v-8e2a06f9]{position:absolute;bottom:20%;left:50%;transform:translate(-50%);font-size:18px;font-weight:400;letter-spacing:4px;color:var(--text-bright);text-shadow:var(--glow-strong);pointer-events:none;z-index:3}.xp-float-enter-active[data-v-8e2a06f9]{animation:xpRise-8e2a06f9 1.2s ease-out forwards}.xp-float-leave-active[data-v-8e2a06f9]{animation:xpFadeOut-8e2a06f9 .2s ease-out forwards}@keyframes xpRise-8e2a06f9{0%{opacity:1;transform:translate(-50%) translateY(0)}60%{opacity:1}to{opacity:0;transform:translate(-50%) translateY(-60px)}}@keyframes xpFadeOut-8e2a06f9{to{opacity:0}}.body[data-v-8e2a06f9]{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.main-area[data-v-8e2a06f9],.center[data-v-8e2a06f9]{display:flex;flex-direction:column;flex:1;min-height:0;width:100%}.img-wrap[data-v-8e2a06f9]{flex:1;min-height:0;width:100%;background:var(--surface);border:1px solid var(--border-mid);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.img-wrap img[data-v-8e2a06f9]{max-width:100%;max-height:100%;object-fit:contain;display:block;transition:opacity .15s ease}.img-wrap.img-entering img[data-v-8e2a06f9]{opacity:.4}.img-overlay-tl[data-v-8e2a06f9],.img-overlay-tr[data-v-8e2a06f9]{position:absolute;top:8px;font-size:10px;letter-spacing:2px;color:var(--text-muted);background:var(--overlay-light);padding:2px 6px;z-index:2}.img-overlay-tl[data-v-8e2a06f9]{left:12px}.img-overlay-tr[data-v-8e2a06f9]{right:12px}.controls-grid[data-v-8e2a06f9]{display:flex;flex-direction:column;gap:1px}.rating-row[data-v-8e2a06f9]{grid-template-columns:repeat(6,1fr)}.action-row[data-v-8e2a06f9]{grid-template-columns:2fr 1fr 1fr}.comment-area[data-v-8e2a06f9]{width:100%}.comment-area textarea[data-v-8e2a06f9]{width:100%;background:var(--surface);border:1px solid var(--border);color:var(--text);font-size:12px;padding:12px;resize:vertical;outline:none}.comment-area textarea[data-v-8e2a06f9]:focus{border-color:var(--border-bright);box-shadow:var(--glow-subtle)}.comment-area textarea[data-v-8e2a06f9]::placeholder{color:var(--text-dim)}.sidebar[data-v-8e2a06f9]{display:none}.done-msg[data-v-8e2a06f9]{color:var(--text-dim);font-size:12px;letter-spacing:4px;text-align:center;padding:64px 16px}.levelup-overlay[data-v-8e2a06f9]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;display:flex;align-items:center;justify-content:center;background:var(--overlay-medium);animation:overlayFadeIn-8e2a06f9 .3s ease}.particle-canvas[data-v-8e2a06f9]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.levelup-text[data-v-8e2a06f9]{position:relative;z-index:2;text-align:center}.levelup-label[data-v-8e2a06f9]{font-size:10px;letter-spacing:6px;color:var(--text-muted);margin-bottom:8px}.levelup-number[data-v-8e2a06f9]{font-size:48px;font-weight:400;color:var(--text-bright);text-shadow:0 0 30px rgba(255,255,255,.6);animation:glowPulse-8e2a06f9 1.5s ease-in-out}@keyframes glowPulse-8e2a06f9{0%{text-shadow:0 0 20px rgba(255,255,255,.3)}50%{text-shadow:0 0 60px rgba(255,255,255,.8)}to{text-shadow:0 0 20px rgba(255,255,255,.3)}}@keyframes overlayFadeIn-8e2a06f9{0%{opacity:0}to{opacity:1}}.milestone-toast[data-v-8e2a06f9]{position:fixed;top:0;left:0;right:0;z-index:100;padding:10px 16px;background:var(--bg);border-bottom:1px solid var(--border-mid);font-size:10px;letter-spacing:2px;color:var(--text-bright);text-shadow:var(--glow-medium);text-align:center}.toast-enter-active[data-v-8e2a06f9]{animation:toastIn-8e2a06f9 .3s ease}.toast-leave-active[data-v-8e2a06f9]{animation:toastOut-8e2a06f9 .3s ease}@keyframes toastIn-8e2a06f9{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes toastOut-8e2a06f9{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}.img-overlay-tl[data-v-8e2a06f9],.img-overlay-tr[data-v-8e2a06f9]{display:none}.progress-area[data-v-8e2a06f9]{padding:6px 12px}.xp-row[data-v-8e2a06f9]{margin-top:0}.xp-track[data-v-8e2a06f9],.xp-fill[data-v-8e2a06f9]{height:4px;border-radius:2px}.img-wrap[data-v-8e2a06f9]{border-left:none;border-right:none}.controls-grid[data-v-8e2a06f9]{flex-shrink:0}.controls-grid .cell-btn[data-v-8e2a06f9]{min-height:48px;font-size:14px}.action-row .cell-btn[data-v-8e2a06f9]{font-size:11px}.tutorial-overlay[data-v-8e2a06f9]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--overlay-heavy);display:flex;align-items:center;justify-content:center;padding:16px;animation:overlayFadeIn-8e2a06f9 .3s ease}.tutorial-card[data-v-8e2a06f9]{border:1px solid var(--border-mid);padding:24px;max-width:420px;width:100%;display:flex;flex-direction:column;gap:16px}.tutorial-title[data-v-8e2a06f9]{font-size:14px;letter-spacing:4px;color:var(--text-bright);text-shadow:var(--glow-medium)}.tutorial-scale[data-v-8e2a06f9]{font-size:12px;letter-spacing:2px;color:var(--text);line-height:1.8;text-transform:none}.tutorial-hint[data-v-8e2a06f9]{font-size:10px;letter-spacing:2px;color:var(--text-muted)}.tutorial-btn[data-v-8e2a06f9]{margin-top:8px}@media(min-width:768px){.img-overlay-tl[data-v-8e2a06f9],.img-overlay-tr[data-v-8e2a06f9]{display:block}.progress-area[data-v-8e2a06f9]{padding:12px 32px}.xp-row[data-v-8e2a06f9]{margin-top:8px}.body[data-v-8e2a06f9]{padding:24px 32px}.main-area[data-v-8e2a06f9]{flex-direction:row;gap:24px}.center[data-v-8e2a06f9]{flex:1;min-width:0;gap:12px}.img-wrap[data-v-8e2a06f9]{border:1px solid var(--border-mid)}.img-wrap img[data-v-8e2a06f9]{max-height:65vh}.sidebar[data-v-8e2a06f9]{display:flex;flex-direction:column;gap:16px;width:200px;flex-shrink:0;border-left:1px solid var(--border);padding-left:16px}.controls-grid .cell-btn[data-v-8e2a06f9]{min-height:48px;font-size:12px}.action-row .cell-btn[data-v-8e2a06f9]{font-size:12px}}.sidebar-section[data-v-8e2a06f9]{display:flex;flex-direction:column;gap:4px}.sidebar-title[data-v-8e2a06f9]{font-size:10px;letter-spacing:4px;color:var(--text-muted);margin-bottom:4px;padding-bottom:4px;border-bottom:1px solid var(--border)}.key-row[data-v-8e2a06f9]{font-size:10px;color:var(--text-dim);display:flex;gap:4px;align-items:baseline}.key-row kbd[data-v-8e2a06f9]{color:var(--text);font-family:var(--font);font-size:10px}.key-row span[data-v-8e2a06f9]{color:var(--text-dim)}.scale-row[data-v-8e2a06f9]{font-size:10px;color:var(--text-dim)}.scale-num[data-v-8e2a06f9]{color:var(--text);margin-right:4px}.sidebar-text[data-v-8e2a06f9]{font-size:10px;color:var(--text-dim);line-height:1.6;text-transform:none}.phase2[data-v-2f590fdc]{display:flex;flex-direction:column;flex:1}.progress-area[data-v-2f590fdc]{padding:12px 16px;border-bottom:1px solid var(--border)}.progress-row[data-v-2f590fdc]{display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px;color:var(--text-dim);margin-bottom:8px}.body[data-v-2f590fdc]{display:flex;flex-direction:column;flex:1;padding:16px;gap:12px}.body.empty[data-v-2f590fdc]{align-items:center;justify-content:center;gap:8px}.empty-msg[data-v-2f590fdc]{font-size:11px;letter-spacing:4px;color:var(--text-dim);text-align:center}.empty-hint[data-v-2f590fdc]{font-size:10px;letter-spacing:2px;color:var(--text-dim);text-align:center}.pair[data-v-2f590fdc]{display:flex;flex-direction:column;gap:12px;flex:1}.side[data-v-2f590fdc]{flex:1;border:1px solid var(--border-mid);background:var(--surface);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.side[data-v-2f590fdc]:hover{border-color:var(--border-hover)}.side[data-v-2f590fdc]:active{border-color:var(--border-active);box-shadow:var(--glow-medium)}.side img[data-v-2f590fdc]{width:100%;max-height:35vh;object-fit:contain;display:block}.side-label[data-v-2f590fdc]{position:absolute;bottom:8px;left:50%;transform:translate(-50%);font-size:10px;letter-spacing:4px;color:var(--text-dim);opacity:0;transition:opacity .15s}.side:hover .side-label[data-v-2f590fdc]{opacity:1}.vs-divider[data-v-2f590fdc]{text-align:center;font-size:10px;letter-spacing:4px;color:var(--text-dim);padding:4px 0}.controls-row[data-v-2f590fdc]{grid-template-columns:1fr 1fr 1fr}.meta-grid[data-v-2f590fdc]{margin-top:auto}.meta-cell[data-v-2f590fdc]{padding:10px 12px}.meta-label[data-v-2f590fdc]{font-size:10px;letter-spacing:4px;color:var(--text-dim);margin-bottom:2px}.meta-value[data-v-2f590fdc]{font-size:11px;color:var(--text-muted)}@media(min-width:768px){.body[data-v-2f590fdc]{padding:24px 32px}.pair[data-v-2f590fdc]{flex-direction:row;gap:16px}.side img[data-v-2f590fdc]{max-height:65vh}.vs-divider[data-v-2f590fdc]{display:flex;align-items:center;padding:0 8px}.progress-area[data-v-2f590fdc]{padding:12px 32px}}.results[data-v-413bd9e8]{display:flex;flex-direction:column;flex:1}.toolbar[data-v-413bd9e8]{display:flex;flex-direction:column;gap:1px;border-bottom:1px solid var(--border)}.filter-row .cell-btn[data-v-413bd9e8]{font-size:10px;letter-spacing:2px;min-height:40px}.results-info[data-v-413bd9e8]{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;font-size:10px;letter-spacing:2px;color:var(--text-dim);border-bottom:1px solid var(--border)}.user-select[data-v-413bd9e8]{background:var(--bg);border:1px solid var(--border);color:var(--text-muted);font-size:10px;padding:8px 12px;min-height:44px;outline:none}.user-select[data-v-413bd9e8]:focus{border-color:var(--border-bright)}.image-grid[data-v-413bd9e8]{grid-template-columns:repeat(2,1fr);flex:1}.card[data-v-413bd9e8]{padding:8px;display:flex;flex-direction:column;gap:4px}.card-rank[data-v-413bd9e8]{font-size:10px;letter-spacing:4px;color:var(--text-dim)}.card-thumb[data-v-413bd9e8]{width:100%;aspect-ratio:1;overflow:hidden;border:1px solid var(--border);position:relative}.card-thumb img[data-v-413bd9e8]{width:100%;height:100%;object-fit:cover;display:block}.card-info[data-v-413bd9e8]{display:flex;justify-content:space-between;font-size:11px}.card-elo[data-v-413bd9e8]{color:var(--text)}.card-stars[data-v-413bd9e8]{color:var(--text-muted)}.card-artist[data-v-413bd9e8]{font-size:10px;letter-spacing:2px;color:var(--text-dim)}.card-comment[data-v-413bd9e8]{font-size:10px;color:var(--text-dim);text-transform:none;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.artist-list[data-v-413bd9e8]{grid-template-columns:1fr;flex:1}.artist-row[data-v-413bd9e8]{display:flex;align-items:baseline;gap:16px;padding:10px 16px;font-size:10px}.artist-name[data-v-413bd9e8]{color:var(--text);flex:1}.artist-stat[data-v-413bd9e8]{color:var(--text-dim);font-size:10px;letter-spacing:2px}.export-row[data-v-413bd9e8]{margin-top:auto}.export-row .cell-btn[data-v-413bd9e8]{font-size:10px;letter-spacing:4px}@media(min-width:768px){.image-grid[data-v-413bd9e8]{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.toolbar[data-v-413bd9e8]{flex-direction:row}.toolbar .grid-row[data-v-413bd9e8]{flex:1}.results-info[data-v-413bd9e8]{padding:8px 32px}}.admin[data-v-f2f6ffc1]{display:flex;flex-direction:column;flex:1;overflow-y:auto}.section[data-v-f2f6ffc1]{border-bottom:1px solid var(--border)}.section-label[data-v-f2f6ffc1]{font-size:10px;letter-spacing:4px;color:var(--text-dim);padding:10px 16px 6px}.stat-grid[data-v-f2f6ffc1]{display:flex;flex-direction:column}.stat-row[data-v-f2f6ffc1]{display:flex;justify-content:space-between;padding:6px 16px;border-top:1px solid var(--border);font-size:10px;letter-spacing:2px}.stat-key[data-v-f2f6ffc1]{color:var(--text-dim);letter-spacing:2px}.stat-val[data-v-f2f6ffc1]{color:var(--text)}.stat-val.mono[data-v-f2f6ffc1]{font-family:monospace;letter-spacing:0}.section .cell-btn[data-v-f2f6ffc1]{font-size:10px;letter-spacing:2px;min-height:40px}.danger .section-label[data-v-f2f6ffc1]{color:var(--danger)}.danger-btn[data-v-f2f6ffc1]{color:var(--danger)!important}.danger-btn[data-v-f2f6ffc1]:hover{background:var(--danger-bg)!important}.danger-btn[data-v-f2f6ffc1]:disabled{opacity:.4;cursor:default}@media(min-width:768px){.stat-row[data-v-f2f6ffc1]{padding:6px 32px}.section-label[data-v-f2f6ffc1]{padding:10px 32px 6px}}.app{display:flex;flex-direction:column;min-height:100vh;padding-bottom:49px}header{border-bottom:1px solid var(--border)}.header-row{display:flex;justify-content:space-between;align-items:baseline;padding:12px 16px}.header-title{font-size:11px;letter-spacing:4px;color:var(--text)}.header-user{font-size:10px;letter-spacing:2px;color:var(--text-dim)}.tabs{display:none}.bottom-bar{position:fixed;bottom:0;left:0;right:0;z-index:50;padding-bottom:env(safe-area-inset-bottom,0)}.bottom-bar .cell-btn{font-size:10px;letter-spacing:4px;min-height:48px}.name-prompt{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:16px}.name-box{border:1px solid var(--border-mid);padding:32px 24px;width:100%;max-width:360px}.name-title{font-size:14px;letter-spacing:4px;color:var(--text-bright);margin-bottom:4px}.name-subtitle{font-size:10px;letter-spacing:4px;color:var(--text-dim);margin-bottom:32px}.name-field-label{display:block;font-size:10px;letter-spacing:2px;color:var(--text-muted);margin-bottom:8px}.name-box form{display:flex;flex-direction:column;gap:12px}.name-box input{background:var(--bg);border:1px solid var(--border);color:var(--text-bright);font-size:14px;padding:12px;outline:none}.name-box input:focus{border-color:var(--border-bright);box-shadow:var(--glow-subtle)}.name-box input::placeholder{color:var(--text-dim);text-transform:uppercase;letter-spacing:2px;font-size:10px}.name-box button:disabled{opacity:.2;cursor:default}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh}.loading-text{font-size:12px;letter-spacing:4px;color:var(--text-muted)}.blink{animation:blinkCursor 1s step-end infinite}@keyframes blinkCursor{0%,to{opacity:1}50%{opacity:0}}@media(min-width:768px){.app{padding-bottom:0}.tabs{display:grid}.tabs .cell-btn{font-size:11px;letter-spacing:4px;min-height:40px}.bottom-bar{display:none}.header-row{padding:16px 32px}}
