.sidebar-menu[data-v-a9a507c4]{width:70px;background:#2a2a2a;display:flex;flex-direction:column;border-right:1px solid #404040;padding:20px 0;flex-shrink:0;transition:width .3s ease;overflow:hidden;position:relative}.sidebar-menu.expanded[data-v-a9a507c4]{width:220px}.logo-section[data-v-a9a507c4]{display:flex;flex-direction:column;align-items:center;padding:0 10px 30px;border-bottom:1px solid #404040;margin-bottom:20px;min-height:110px;cursor:pointer;transition:background-color .2s ease}.logo-section[data-v-a9a507c4]:hover{background-color:#ffffff0d}.logo-section[data-v-a9a507c4]:active{background-color:#ffffff1a}.logo[data-v-a9a507c4]{width:50px;height:50px;margin-bottom:12px;border-radius:8px;flex-shrink:0;transition:transform .2s ease,opacity .2s ease}.logo-section:hover .logo.clickable[data-v-a9a507c4]{transform:scale(1.1);opacity:.9}.logo-section:active .logo.clickable[data-v-a9a507c4]{transform:scale(.95)}.app-title[data-v-a9a507c4]{font-size:20px;font-weight:600;color:#e0e0e0;margin:0;white-space:nowrap;opacity:0;transition:opacity .2s ease .1s}.expanded .app-title[data-v-a9a507c4]{opacity:1}.menu-tabs[data-v-a9a507c4]{flex:1;display:flex;flex-direction:column;gap:4px;padding:0 10px}.tab-button[data-v-a9a507c4]{display:flex;align-items:center;gap:12px;padding:14px 12px;border-radius:8px;background:transparent;color:#a0a0a0;text-decoration:none;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease;border-left:3px solid transparent;position:relative;white-space:nowrap}.tab-button[data-v-a9a507c4]:hover{background:#353535;color:#e0e0e0}.tab-button.active[data-v-a9a507c4]{background:#3a3a3a;color:#e94560;border-left-color:#e94560}.tab-button.active .tab-icon[data-v-a9a507c4]{transform:scale(1.1)}.tab-icon[data-v-a9a507c4]{font-size:22px;line-height:1;transition:transform .2s ease;min-width:28px;text-align:center;flex-shrink:0}.tab-label[data-v-a9a507c4]{flex:1;opacity:0;transition:opacity .2s ease .1s}.expanded .tab-label[data-v-a9a507c4]{opacity:1}.sidebar-footer[data-v-a9a507c4]{padding:20px 10px;border-top:1px solid #404040;text-align:center}.version[data-v-a9a507c4]{font-size:11px;color:#606060;margin:0;white-space:nowrap;opacity:0;transition:opacity .2s ease .1s}.expanded .version[data-v-a9a507c4]{opacity:1}.layout-frame[data-v-8e27176c]{display:flex;height:100vh;width:100vw;background:#f5f5f5;overflow:hidden}.content-area[data-v-8e27176c]{flex:1;display:flex;flex-direction:column;overflow:hidden}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}#app{height:100vh;background:#f5f5f5}.trigo-view[data-v-5a46b1db]{display:flex;flex-direction:column;height:100%;background-color:#404040;color:#e0e0e0;overflow:hidden}.trigo-view .view-header[data-v-5a46b1db]{display:flex;justify-content:center;align-items:center;padding:1rem 2rem;background:linear-gradient(135deg,#505050,#454545);border-bottom:2px solid #606060;box-shadow:0 2px 8px #0000004d}.trigo-view .view-header .view-status[data-v-5a46b1db]{display:flex;gap:2rem;align-items:center}.trigo-view .view-header .view-status .turn-indicator[data-v-5a46b1db]{padding:.5rem 1rem;border-radius:8px;font-weight:600;transition:all .3s ease}.trigo-view .view-header .view-status .turn-indicator.black[data-v-5a46b1db]{background-color:#2c2c2c;color:#fff;box-shadow:0 0 10px #ffffff4d}.trigo-view .view-header .view-status .turn-indicator.white[data-v-5a46b1db]{background-color:#f0f0f0;color:#000;box-shadow:0 0 10px #f0f0f04d}.trigo-view .view-header .view-status .move-count[data-v-5a46b1db]{font-size:1rem;color:#a0a0a0}.trigo-view .view-header .view-status.ai-mode .player-info[data-v-5a46b1db],.trigo-view .view-header .view-status.ai-mode .ai-status[data-v-5a46b1db]{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#3a3a3a;border-radius:8px;border:2px solid transparent;transition:all .3s ease}.trigo-view .view-header .view-status.ai-mode .player-info.on-turn[data-v-5a46b1db],.trigo-view .view-header .view-status.ai-mode .ai-status.on-turn[data-v-5a46b1db]{background-color:#4a4a4a;border-color:#60a5fa;box-shadow:0 0 12px #60a5fa66}.trigo-view .view-header .view-status.ai-mode .player-label[data-v-5a46b1db],.trigo-view .view-header .view-status.ai-mode .ai-indicator[data-v-5a46b1db]{color:#a0a0a0;font-weight:500}.trigo-view .view-header .view-status.ai-mode .stone-icon[data-v-5a46b1db]{width:20px;height:20px;border-radius:50%;flex-shrink:0}.trigo-view .view-header .view-status.ai-mode .stone-icon.black[data-v-5a46b1db]{background-color:#2c2c2c;border:2px solid #fff}.trigo-view .view-header .view-status.ai-mode .stone-icon.white[data-v-5a46b1db]{background-color:#f0f0f0;border:2px solid #000}.trigo-view .view-header .view-status.ai-mode .ai-level[data-v-5a46b1db]{color:#60a5fa;font-weight:600}.trigo-view .view-header .view-status.ai-mode .ai-level.ai-thinking[data-v-5a46b1db]{color:#fbbf24;animation:pulse-5a46b1db 1.5s ease-in-out infinite}.trigo-view .view-header .view-status.ai-mode .ai-level.ai-error[data-v-5a46b1db]{color:#ef4444}.trigo-view .view-header .view-status.ai-mode .ai-time[data-v-5a46b1db]{color:#9ca3af;font-size:.875rem;font-style:italic}.trigo-view .view-header .view-status.ai-mode .btn-swap-colors[data-v-5a46b1db]{padding:.4rem .8rem;background-color:#4b5563;color:#e5e7eb;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s ease}.trigo-view .view-header .view-status.ai-mode .btn-swap-colors[data-v-5a46b1db]:hover{background-color:#6b7280;transform:translateY(-1px)}.trigo-view .view-header .view-status.ai-mode .btn-swap-colors[data-v-5a46b1db]:active{transform:translateY(0)}.trigo-view .view-header .view-status.people-mode .room-info[data-v-5a46b1db]{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#3a3a3a;border-radius:8px}.trigo-view .view-header .view-status.people-mode .room-label[data-v-5a46b1db]{color:#a0a0a0;font-weight:500}.trigo-view .view-header .view-status.people-mode .room-code[data-v-5a46b1db]{color:#e94560;font-weight:700;font-family:monospace;font-size:1.1rem}.trigo-view .view-header .view-status.people-mode .players-info[data-v-5a46b1db]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background-color:#3a3a3a;border-radius:8px}.trigo-view .view-header .view-status.people-mode .player-name[data-v-5a46b1db]{color:#e0e0e0;font-weight:600}.trigo-view .view-header .view-status.people-mode .vs-divider[data-v-5a46b1db]{color:#606060;font-weight:500}.trigo-view .view-header .view-status.people-mode .connection-status[data-v-5a46b1db]{padding:.5rem 1rem;border-radius:8px;font-weight:600;font-size:.9rem}.trigo-view .view-header .view-status.people-mode .connection-status.connected[data-v-5a46b1db]{background-color:#4ade8026;color:#4ade80}.trigo-view .view-header .view-status.people-mode .connection-status.disconnected[data-v-5a46b1db]{background-color:#ef444426;color:#ef4444}.trigo-view .view-header .view-status.library-mode .game-info[data-v-5a46b1db]{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;background-color:#3a3a3a;border-radius:8px}.trigo-view .view-header .view-status.library-mode .game-title[data-v-5a46b1db]{color:#e0e0e0;font-weight:600;font-size:1.1rem}.trigo-view .view-header .view-status.library-mode .game-date[data-v-5a46b1db]{color:#a0a0a0;font-weight:500;font-family:monospace}.trigo-view .view-header .view-status.library-mode .library-actions[data-v-5a46b1db]{display:flex;gap:.5rem}.trigo-view .view-header .view-status.library-mode .btn-library[data-v-5a46b1db]{padding:.5rem 1rem;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease}.trigo-view .view-header .view-status.library-mode .btn-library.btn-load[data-v-5a46b1db]{background-color:#2d4059;color:#e0e0e0}.trigo-view .view-header .view-status.library-mode .btn-library.btn-load[data-v-5a46b1db]:hover{background-color:#3d5069;transform:translateY(-2px);box-shadow:0 4px 12px #2d405966}.trigo-view .view-header .view-status.library-mode .btn-library.btn-export[data-v-5a46b1db]{background-color:#e94560;color:#fff}.trigo-view .view-header .view-status.library-mode .btn-library.btn-export[data-v-5a46b1db]:hover{background-color:#f95670;transform:translateY(-2px);box-shadow:0 4px 12px #e9456066}.trigo-view .view-body[data-v-5a46b1db]{display:flex;flex:1;overflow:hidden}.trigo-view .view-body .board-container[data-v-5a46b1db]{flex:1;display:flex;align-items:center;justify-content:center;background-color:#484848;padding:1rem;position:relative}.trigo-view .view-body .board-container .viewport-wrapper[data-v-5a46b1db]{width:100%;height:100%;position:relative;border-radius:8px;overflow:hidden;box-shadow:0 4px 16px #00000080}.trigo-view .view-body .board-container .viewport-wrapper .viewport-canvas[data-v-5a46b1db]{width:100%;height:100%;display:block;background-color:#50505a}.trigo-view .view-body .board-container .viewport-wrapper .viewport-overlay[data-v-5a46b1db]{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;pointer-events:none}.trigo-view .view-body .board-container .viewport-wrapper .viewport-overlay .loading-text[data-v-5a46b1db]{color:#ffffff80;font-size:1.2rem;animation:pulse-5a46b1db 2s ease-in-out infinite}.trigo-view .view-body .board-container .viewport-wrapper .inspect-tooltip[data-v-5a46b1db]{position:absolute;top:1rem;left:1rem;background-color:#fff1b0f2;color:#111;padding:.5rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;pointer-events:none;box-shadow:0 2px 8px #0000004d;z-index:100}.trigo-view .view-body .board-container .viewport-wrapper .inspect-tooltip .tooltip-content[data-v-5a46b1db]{display:flex;align-items:center;gap:.5rem}.trigo-view .view-body .board-container .viewport-wrapper .inspect-tooltip .tooltip-content .tooltip-label[data-v-5a46b1db]{white-space:nowrap}.trigo-view .view-body .board-container .viewport-wrapper .inspect-tooltip .tooltip-content .tooltip-divider[data-v-5a46b1db]{color:#888}.trigo-view .view-body .controls-panel[data-v-5a46b1db]{width:320px;background-color:#3a3a3a;border-left:2px solid #606060;display:flex;flex-direction:column;overflow:hidden;box-shadow:-4px 0 16px #0000004d}.trigo-view .view-body .controls-panel .panel-section[data-v-5a46b1db]{padding:.8rem;border-bottom:1px solid #505050;position:relative}.trigo-view .view-body .controls-panel .panel-section .section-title[data-v-5a46b1db]{font-size:.7rem;font-weight:600;color:#f0bcc5;text-transform:uppercase;letter-spacing:1px;position:absolute;top:0;left:.8rem;opacity:0;transition:opacity .3s ease-in}.trigo-view .view-body .controls-panel .panel-section:hover .section-title[data-v-5a46b1db]{opacity:.6}.trigo-view .view-body .controls-panel .score-section .score-display[data-v-5a46b1db]{display:flex;gap:.5rem;margin-bottom:1rem}.trigo-view .view-body .controls-panel .score-section .score-display .score-button[data-v-5a46b1db]{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;border:2px solid #505050;border-radius:8px;background-color:#484848;cursor:default;transition:all .3s ease}.trigo-view .view-body .controls-panel .score-section .score-display .score-button.black .color-indicator[data-v-5a46b1db]{background-color:#2c2c2c;border:2px solid #fff}.trigo-view .view-body .controls-panel .score-section .score-display .score-button.white .color-indicator[data-v-5a46b1db]{background-color:#f0f0f0;border:2px solid #000}.trigo-view .view-body .controls-panel .score-section .score-display .score-button .color-indicator[data-v-5a46b1db]{width:24px;height:24px;border-radius:50%}.trigo-view .view-body .controls-panel .score-section .score-display .score-button .score[data-v-5a46b1db]{font-size:1.5rem;font-weight:700;color:#e0e0e0}.trigo-view .view-body .controls-panel .score-section .score-display .score-button[data-v-5a46b1db]:disabled{opacity:.5}.trigo-view .view-body .controls-panel .score-section .compute-territory[data-v-5a46b1db]{width:100%;padding:.75rem;background-color:#505050;color:#e0e0e0;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.trigo-view .view-body .controls-panel .score-section .compute-territory[data-v-5a46b1db]:hover:not(:disabled){background-color:#606060}.trigo-view .view-body .controls-panel .score-section .compute-territory[data-v-5a46b1db]:disabled{opacity:.5;cursor:not-allowed}.trigo-view .view-body .controls-panel .score-section.show-territory .score-display .score-button[data-v-5a46b1db]{background-color:#3a3a3a;border-color:#606060;box-shadow:0 0 12px #e945604d}.trigo-view .view-body .controls-panel .routine-section[data-v-5a46b1db]{flex:1;display:flex;flex-direction:column;min-height:0}.trigo-view .view-body .controls-panel .routine-section .routine-content[data-v-5a46b1db]{flex:1;overflow-y:auto;background-color:#2a2a2a;border-radius:8px;padding:.5rem}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list[data-v-5a46b1db]{padding:0;margin:0}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row[data-v-5a46b1db]{display:grid;grid-template-columns:30px 1fr 1fr;gap:.25rem;margin-bottom:.25rem;align-items:center}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row.start-row[data-v-5a46b1db]{grid-template-columns:30px 1fr;padding:.5rem;border-radius:4px;cursor:pointer;transition:all .2s ease}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row.start-row[data-v-5a46b1db]:hover{background-color:#484848}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row.start-row.active[data-v-5a46b1db]{background-color:#505050;border-left:3px solid #e94560}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row.start-row .open-label[data-v-5a46b1db]{font-weight:700;color:#e94560;text-transform:uppercase;letter-spacing:1px}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row .round-number[data-v-5a46b1db]{color:gray;font-size:.9em;text-align:right;padding-right:.25rem}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row .move-cell[data-v-5a46b1db]{padding:.5rem;border-radius:4px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;background-color:#1a1a1a}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row .move-cell[data-v-5a46b1db]:hover:not(.empty){background-color:#484848}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row .move-cell.active[data-v-5a46b1db]{background-color:#505050;border-left:3px solid #e94560}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row .move-cell.empty[data-v-5a46b1db]{background-color:transparent;cursor:default}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row .move-cell .stone-icon[data-v-5a46b1db]{width:16px;height:16px;border-radius:50%;flex-shrink:0}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row .move-cell .stone-icon.black[data-v-5a46b1db]{background-color:#2c2c2c;border:2px solid #fff}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row .move-cell .stone-icon.white[data-v-5a46b1db]{background-color:#f0f0f0;border:2px solid #000}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row .move-cell .move-coords[data-v-5a46b1db]{color:#a0a0a0;font-family:monospace;font-size:.9em}.trigo-view .view-body .controls-panel .routine-section .routine-content .move-list .move-row .move-cell .move-label[data-v-5a46b1db]{color:#60a5fa;font-weight:600;font-size:.85em;text-transform:lowercase}.trigo-view .view-body .controls-panel .controls-section .control-buttons[data-v-5a46b1db]{display:flex;flex-direction:column;gap:1rem}.trigo-view .view-body .controls-panel .controls-section .control-buttons .play-controls[data-v-5a46b1db],.trigo-view .view-body .controls-panel .controls-section .control-buttons .history-controls[data-v-5a46b1db]{display:flex;gap:.5rem}.trigo-view .view-body .controls-panel .controls-section .control-buttons .btn[data-v-5a46b1db]{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1}.trigo-view .view-body .controls-panel .controls-section .control-buttons .btn[data-v-5a46b1db]:disabled{opacity:.5;cursor:not-allowed}.trigo-view .view-body .controls-panel .controls-section .control-buttons .btn.btn-pass[data-v-5a46b1db]{background-color:#2d4059;color:#e0e0e0}.trigo-view .view-body .controls-panel .controls-section .control-buttons .btn.btn-pass[data-v-5a46b1db]:hover:not(:disabled){background-color:#3d5069}.trigo-view .view-body .controls-panel .controls-section .control-buttons .btn.btn-resign[data-v-5a46b1db]{background-color:#c23b22;color:#fff}.trigo-view .view-body .controls-panel .controls-section .control-buttons .btn.btn-resign[data-v-5a46b1db]:hover:not(:disabled){background-color:#d44b32}.trigo-view .view-body .controls-panel .controls-section .control-buttons .btn.btn-icon[data-v-5a46b1db]{background-color:#505050;color:#e0e0e0;padding:.75rem;font-size:1.2rem}.trigo-view .view-body .controls-panel .controls-section .control-buttons .btn.btn-icon[data-v-5a46b1db]:hover:not(:disabled){background-color:#606060}.trigo-view .view-body .controls-panel .settings-section .settings-content[data-v-5a46b1db]{display:flex;flex-direction:column;gap:1rem}.trigo-view .view-body .controls-panel .settings-section .settings-content .setting-item[data-v-5a46b1db]{display:flex;align-items:center;justify-content:space-between}.trigo-view .view-body .controls-panel .settings-section .settings-content .setting-item label[data-v-5a46b1db]{font-weight:600;color:#a0a0a0;display:flex;align-items:center;gap:.3rem}.trigo-view .view-body .controls-panel .settings-section .settings-content .setting-item label .dirty-indicator[data-v-5a46b1db]{color:#e94560;font-size:1.2rem;font-weight:700;animation:pulse-5a46b1db 2s ease-in-out infinite}.trigo-view .view-body .controls-panel .settings-section .settings-content .setting-item select[data-v-5a46b1db]{padding:.5rem;border:2px solid #505050;border-radius:8px;background-color:#484848;color:#e0e0e0;cursor:pointer;font-weight:600}.trigo-view .view-body .controls-panel .settings-section .settings-content .setting-item select[data-v-5a46b1db]:disabled{opacity:.5;cursor:not-allowed}.trigo-view .view-body .controls-panel .settings-section .settings-content .btn-new-game[data-v-5a46b1db]{width:100%;padding:.75rem;background-color:#e94560;color:#fff;border:none;border-radius:8px;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase}.trigo-view .view-body .controls-panel .settings-section .settings-content .btn-new-game[data-v-5a46b1db]:hover{background-color:#f95670;transform:translateY(-2px);box-shadow:0 4px 12px #e9456066}.btn-view-tgn[data-v-5a46b1db]{position:absolute;top:0;right:.8rem;padding:.25rem .5rem;background-color:transparent;color:#a0a0a0;border:1px solid #505050;border-radius:4px;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s ease;opacity:0}.btn-view-tgn[data-v-5a46b1db]:hover{background-color:#505050;color:#e0e0e0;border-color:#606060}.routine-section:hover .btn-view-tgn[data-v-5a46b1db]{opacity:1}.tgn-modal[data-v-5a46b1db]{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tgn-modal .tgn-modal-content[data-v-5a46b1db]{background-color:#3a3a3a;border-radius:12px;box-shadow:0 8px 32px #00000080;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.tgn-modal .tgn-modal-content .tgn-modal-header[data-v-5a46b1db]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background-color:#2a2a2a;border-bottom:1px solid #505050}.tgn-modal .tgn-modal-content .tgn-modal-header h3[data-v-5a46b1db]{margin:0;font-size:1.2rem;font-weight:600;color:#e0e0e0}.tgn-modal .tgn-modal-content .tgn-modal-header .tgn-status[data-v-5a46b1db]{font-size:.85rem;font-weight:600;padding:.4rem .8rem;border-radius:4px;white-space:nowrap;transition:all .3s ease}.tgn-modal .tgn-modal-content .tgn-modal-header .tgn-status.idle[data-v-5a46b1db]{background-color:#505050;color:#a0a0a0}.tgn-modal .tgn-modal-content .tgn-modal-header .tgn-status.valid[data-v-5a46b1db]{background-color:#4ade8026;color:#4ade80;border:1px solid rgba(74,222,128,.4)}.tgn-modal .tgn-modal-content .tgn-modal-header .tgn-status.invalid[data-v-5a46b1db]{background-color:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.4)}.tgn-modal .tgn-modal-content .tgn-modal-header .btn-close[data-v-5a46b1db]{background:none;border:none;color:#a0a0a0;font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.tgn-modal .tgn-modal-content .tgn-modal-header .btn-close[data-v-5a46b1db]:hover{background-color:#505050;color:#e0e0e0}.tgn-modal .tgn-modal-content .tgn-modal-body[data-v-5a46b1db]{flex:1;padding:1.5rem;overflow:auto}.tgn-modal .tgn-modal-content .tgn-modal-body .tgn-textarea[data-v-5a46b1db]{width:100%;height:100%;min-height:300px;background-color:#2a2a2a;color:#e0e0e0;border:2px solid #505050;border-radius:8px;padding:1rem;font-family:Courier New,Courier,monospace;font-size:.9rem;line-height:1.6;resize:vertical;cursor:text;transition:border-color .3s ease,box-shadow .3s ease}.tgn-modal .tgn-modal-content .tgn-modal-body .tgn-textarea[data-v-5a46b1db]:focus{outline:none;border-color:#e94560}.tgn-modal .tgn-modal-content .tgn-modal-body .tgn-textarea.valid[data-v-5a46b1db]{border-color:#4ade80;box-shadow:0 0 8px #4ade8033}.tgn-modal .tgn-modal-content .tgn-modal-body .tgn-textarea.invalid[data-v-5a46b1db]{border-color:#ef4444;box-shadow:0 0 8px #ef444433}.tgn-modal .tgn-modal-content .tgn-modal-body .tgn-textarea.idle[data-v-5a46b1db]{border-color:#505050}.tgn-modal .tgn-modal-content .tgn-modal-footer[data-v-5a46b1db]{display:flex;gap:.5rem;padding:1rem 1.5rem;background-color:#2a2a2a;border-top:1px solid #505050}.tgn-modal .tgn-modal-content .tgn-modal-footer .btn[data-v-5a46b1db]{flex:1;padding:.75rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.tgn-modal .tgn-modal-content .tgn-modal-footer .btn[data-v-5a46b1db]:disabled{opacity:.5;cursor:not-allowed}.tgn-modal .tgn-modal-content .tgn-modal-footer .btn.btn-apply[data-v-5a46b1db]{background-color:#4ade80;color:#000}.tgn-modal .tgn-modal-content .tgn-modal-footer .btn.btn-apply[data-v-5a46b1db]:hover:not(:disabled){background-color:#22c55e;transform:translateY(-2px);box-shadow:0 4px 12px #4ade8066}.tgn-modal .tgn-modal-content .tgn-modal-footer .btn.btn-copy[data-v-5a46b1db]{background-color:#e94560;color:#fff}.tgn-modal .tgn-modal-content .tgn-modal-footer .btn.btn-copy[data-v-5a46b1db]:hover{background-color:#f95670;transform:translateY(-2px);box-shadow:0 4px 12px #e9456066}.tgn-modal .tgn-modal-content .tgn-modal-footer .btn.btn-close-modal[data-v-5a46b1db]{background-color:#505050;color:#e0e0e0}.tgn-modal .tgn-modal-content .tgn-modal-footer .btn.btn-close-modal[data-v-5a46b1db]:hover{background-color:#606060}@keyframes pulse-5a46b1db{0%,to{opacity:.5}50%{opacity:1}}.controls-panel[data-v-5a46b1db]::-webkit-scrollbar{width:8px}.controls-panel[data-v-5a46b1db]::-webkit-scrollbar-track{background:#2a2a2a}.controls-panel[data-v-5a46b1db]::-webkit-scrollbar-thumb{background:#505050;border-radius:4px}.controls-panel[data-v-5a46b1db]::-webkit-scrollbar-thumb:hover{background:#606060}.routine-content[data-v-5a46b1db]::-webkit-scrollbar{width:6px}.routine-content[data-v-5a46b1db]::-webkit-scrollbar-track{background:#2a2a2a}.routine-content[data-v-5a46b1db]::-webkit-scrollbar-thumb{background:#505050;border-radius:3px}.routine-content[data-v-5a46b1db]::-webkit-scrollbar-thumb:hover{background:#606060}@keyframes pulse-5a46b1db{0%,to{opacity:1}50%{opacity:.5}}.onnx-test-view[data-v-62e82929]{display:flex;flex-direction:column;height:100%;background-color:#f5f5f5;overflow:auto}.test-header[data-v-62e82929]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;text-align:center}.test-header h1[data-v-62e82929]{margin:0 0 .5rem;font-size:2rem;font-weight:700}.test-header .subtitle[data-v-62e82929]{margin:0;opacity:.9;font-size:1.1rem}.test-body[data-v-62e82929]{flex:1;padding:2rem;max-width:1000px;margin:0 auto;width:100%}.test-section[data-v-62e82929]{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000001a}.test-section h2[data-v-62e82929]{margin:0 0 .5rem;color:#333;font-size:1.3rem;font-weight:600}.test-section p[data-v-62e82929]{margin:0 0 1rem;color:#666}.status-info[data-v-62e82929]{background:#f8f9fa;border-radius:8px;padding:1rem;margin-bottom:1rem}.status-info .status-item[data-v-62e82929]{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e9ecef}.status-info .status-item[data-v-62e82929]:last-child{border-bottom:none}.status-info .status-item.ready .status-value[data-v-62e82929]{color:#28a745;font-weight:600}.status-info .status-item.loading .status-value[data-v-62e82929]{color:#ffc107;font-weight:600}.status-info .status-item .status-label[data-v-62e82929]{font-weight:600;color:#666}.status-info .status-item .status-value[data-v-62e82929]{color:#333}.error-message[data-v-62e82929]{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;padding:.75rem;color:#856404;margin-top:1rem}.btn[data-v-62e82929]{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease}.btn[data-v-62e82929]:disabled{opacity:.5;cursor:not-allowed}.btn.btn-primary[data-v-62e82929]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn.btn-primary[data-v-62e82929]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn.btn-test[data-v-62e82929]{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.btn.btn-test[data-v-62e82929]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #f5576c66}.btn.btn-secondary[data-v-62e82929]{background:#6c757d;color:#fff}.btn.btn-secondary[data-v-62e82929]:hover:not(:disabled){background:#5a6268}.input-group[data-v-62e82929]{margin-bottom:1rem}.input-group label[data-v-62e82929]{display:block;margin-bottom:.5rem;font-weight:600;color:#333}.input-group input[data-v-62e82929]{width:100%;padding:.75rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.input-group input[data-v-62e82929]:focus{outline:none;border-color:#667eea}.input-group input[data-v-62e82929]:disabled{background-color:#f8f9fa;cursor:not-allowed}.test-result[data-v-62e82929]{background:#f8f9fa;border-radius:8px;padding:1rem;margin-top:1rem}.test-result h3[data-v-62e82929]{margin:0 0 1rem;color:#333;font-size:1.1rem}.test-result .result-item[data-v-62e82929]{display:flex;justify-content:space-between;align-items:flex-start;padding:.5rem 0;border-bottom:1px solid #e9ecef}.test-result .result-item[data-v-62e82929]:last-child{border-bottom:none}.test-result .result-item.full-width[data-v-62e82929]{flex-direction:column;gap:.5rem}.test-result .result-item .label[data-v-62e82929]{font-weight:600;color:#666;min-width:150px}.test-result .result-item .value[data-v-62e82929]{color:#333;flex:1;text-align:right}.test-result .result-item .value.code[data-v-62e82929]{font-family:Courier New,monospace;background:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.9rem;text-align:left}.test-result .generated-text[data-v-62e82929]{background:#fff;border:2px solid #e9ecef;border-radius:8px;padding:1rem;font-family:Courier New,monospace;font-size:.95rem;line-height:1.6;color:#333;white-space:pre-wrap;word-break:break-word}.agent-test-view[data-v-6128819e]{display:flex;flex-direction:column;height:100%;background-color:#f5f5f5;overflow:auto}.test-header[data-v-6128819e]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;text-align:center}.test-header h1[data-v-6128819e]{margin:0 0 .5rem;font-size:2rem;font-weight:700}.test-header .subtitle[data-v-6128819e]{margin:0;opacity:.9;font-size:1.1rem}.test-body[data-v-6128819e]{flex:1;padding:2rem;max-width:1200px;margin:0 auto;width:100%}.test-section[data-v-6128819e]{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000001a}.test-section h2[data-v-6128819e]{margin:0 0 .5rem;color:#333;font-size:1.3rem;font-weight:600}.test-section p[data-v-6128819e]{margin:0 0 1rem;color:#666}.status-info[data-v-6128819e]{background:#f8f9fa;border-radius:8px;padding:1rem;margin-bottom:1rem}.status-info .status-item[data-v-6128819e]{display:flex;justify-content:space-between;padding:.5rem 0}.status-info .status-item.ready .status-value[data-v-6128819e]{color:#28a745;font-weight:600}.status-info .status-item.loading .status-value[data-v-6128819e]{color:#ffc107;font-weight:600}.status-info .status-item .status-label[data-v-6128819e]{font-weight:600;color:#666}.status-info .status-item .status-value[data-v-6128819e]{color:#333}.error-message[data-v-6128819e]{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;padding:.75rem;color:#856404;margin-top:1rem}.game-info[data-v-6128819e]{background:#f8f9fa;border-radius:8px;padding:1rem;margin-bottom:1rem}.game-info .info-item[data-v-6128819e]{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e9ecef}.game-info .info-item[data-v-6128819e]:last-child{border-bottom:none}.game-info .info-item .label[data-v-6128819e]{font-weight:600;color:#666}.game-info .info-item .value[data-v-6128819e]{color:#333;font-weight:500}.game-info .info-item .value.black[data-v-6128819e]{color:#2c2c2c}.game-info .info-item .value.white[data-v-6128819e]{color:#666}.game-controls[data-v-6128819e]{display:flex;gap:.5rem;margin-bottom:1rem}.tgn-display h3[data-v-6128819e]{margin:0 0 .5rem;color:#333;font-size:1rem}.tgn-display .tgn-content[data-v-6128819e]{background:#2a2a2a;color:#e0e0e0;padding:1rem;border-radius:8px;font-family:Courier New,monospace;font-size:.9rem;line-height:1.6;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.btn[data-v-6128819e]{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease}.btn[data-v-6128819e]:disabled{opacity:.5;cursor:not-allowed}.btn.btn-primary[data-v-6128819e]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn.btn-primary[data-v-6128819e]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn.btn-test[data-v-6128819e]{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.btn.btn-test[data-v-6128819e]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #f5576c66}.btn.btn-secondary[data-v-6128819e]{background:#6c757d;color:#fff}.btn.btn-secondary[data-v-6128819e]:hover:not(:disabled){background:#5a6268}.btn.btn-apply[data-v-6128819e]{background:#28a745;color:#fff;margin-top:1rem}.btn.btn-apply[data-v-6128819e]:hover:not(:disabled){background:#218838;transform:translateY(-2px);box-shadow:0 4px 12px #28a74566}.test-result[data-v-6128819e]{background:#f8f9fa;border-radius:8px;padding:1rem;margin-top:1rem}.test-result h3[data-v-6128819e]{margin:0 0 1rem;color:#333;font-size:1.1rem}.test-result .result-item[data-v-6128819e]{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e9ecef}.test-result .result-item[data-v-6128819e]:last-of-type{border-bottom:none}.test-result .result-item .label[data-v-6128819e]{font-weight:600;color:#666}.test-result .result-item .value[data-v-6128819e]{color:#333}.test-result .result-item .value.code[data-v-6128819e]{font-family:Courier New,monospace;background:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.9rem}.move-history[data-v-6128819e]{background:#f8f9fa;border-radius:8px;padding:1rem;max-height:400px;overflow-y:auto}.move-history .empty-state[data-v-6128819e]{text-align:center;color:#999;padding:2rem;font-style:italic}.move-history .move-list[data-v-6128819e]{display:flex;flex-direction:column;gap:.5rem}.move-history .move-item[data-v-6128819e]{display:grid;grid-template-columns:40px 80px 100px 1fr;gap:.5rem;padding:.5rem;background:#fff;border-radius:6px;border-left:3px solid}.move-history .move-item.black[data-v-6128819e]{border-color:#2c2c2c}.move-history .move-item.white[data-v-6128819e]{border-color:#999}.move-history .move-item .move-number[data-v-6128819e]{color:#999;font-weight:600}.move-history .move-item .move-player[data-v-6128819e]{font-weight:600;text-transform:capitalize}.move-history .move-item .move-notation[data-v-6128819e]{font-family:Courier New,monospace;font-weight:600}.move-history .move-item .move-pos[data-v-6128819e]{color:#666;font-family:Courier New,monospace;font-size:.9rem}.tree-test-container[data-v-f7c9374e]{max-width:1200px;margin:0 auto;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;overflow-y:auto}h1[data-v-f7c9374e]{color:#2c3e50;margin-bottom:1rem}h2[data-v-f7c9374e],h3[data-v-f7c9374e],h4[data-v-f7c9374e]{color:#34495e;margin-top:2rem;margin-bottom:1rem}.info-section[data-v-f7c9374e]{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.info-section p[data-v-f7c9374e]{margin:0;line-height:1.6;color:#555}.status-section[data-v-f7c9374e],.board-section[data-v-f7c9374e],.generation-section[data-v-f7c9374e],.debug-section[data-v-f7c9374e]{background:#fff;border:1px solid #e1e4e8;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.status-grid[data-v-f7c9374e]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1rem}.status-item[data-v-f7c9374e],.info-item[data-v-f7c9374e]{display:flex;justify-content:space-between;padding:.5rem;background:#f8f9fa;border-radius:4px}.label[data-v-f7c9374e]{font-weight:600;color:#666}.value[data-v-f7c9374e]{color:#2c3e50}.status-ready[data-v-f7c9374e]{color:#28a745;font-weight:600}.status-loading[data-v-f7c9374e]{color:#ffc107;font-weight:600}.status-error[data-v-f7c9374e]{color:#dc3545;font-weight:600}.board-info[data-v-f7c9374e]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.board-display[data-v-f7c9374e]{background:#f8f9fa;border:1px solid #e1e4e8;border-radius:4px;padding:1rem;margin-bottom:1rem}.board-display pre[data-v-f7c9374e]{margin:0;font-family:Courier New,monospace;font-size:.9rem;color:#2c3e50}.button-group[data-v-f7c9374e]{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.btn-primary[data-v-f7c9374e],.btn-secondary[data-v-f7c9374e],.btn-small[data-v-f7c9374e]{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary[data-v-f7c9374e]{background:#007bff;color:#fff}.btn-primary[data-v-f7c9374e]:hover:not(:disabled){background:#0056b3}.btn-primary[data-v-f7c9374e]:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.btn-secondary[data-v-f7c9374e]{background:#6c757d;color:#fff}.btn-secondary[data-v-f7c9374e]:hover{background:#545b62}.btn-large[data-v-f7c9374e]{padding:1rem 2rem;font-size:1.1rem}.btn-small[data-v-f7c9374e]{padding:.25rem .75rem;font-size:.875rem}.timing-info[data-v-f7c9374e]{margin-top:1rem;padding:1rem;background:#e7f5ff;border-left:4px solid #007bff;border-radius:4px}.timing-detail[data-v-f7c9374e]{color:#666;font-size:.9rem;margin-left:.5rem}.success-info[data-v-f7c9374e]{margin-top:1rem;padding:1rem;background:#d4edda;border-left:4px solid #28a745;border-radius:4px;color:#155724;font-weight:600}.moves-section[data-v-f7c9374e]{margin-top:2rem}.moves-table-container[data-v-f7c9374e]{overflow-x:auto;margin-top:1rem}.moves-table[data-v-f7c9374e]{width:100%;border-collapse:collapse;font-size:.9rem}.moves-table thead[data-v-f7c9374e]{background:#f8f9fa}.moves-table th[data-v-f7c9374e]{padding:.75rem;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6}.moves-table td[data-v-f7c9374e]{padding:.75rem;border-bottom:1px solid #dee2e6}.moves-table tbody tr[data-v-f7c9374e]:hover{background:#f8f9fa}.moves-table .top-move[data-v-f7c9374e]{background:#d4edda;font-weight:600}.notation[data-v-f7c9374e]{font-family:Courier New,monospace;font-weight:600;color:#007bff}.position[data-v-f7c9374e]{font-family:Courier New,monospace;color:#666}.score[data-v-f7c9374e]{font-family:Courier New,monospace;text-align:right}.probability[data-v-f7c9374e]{font-family:Courier New,monospace;text-align:right;color:#28a745}.error-section[data-v-f7c9374e]{margin-top:1rem;padding:1rem;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24}.error-section pre[data-v-f7c9374e]{margin:.5rem 0 0;white-space:pre-wrap;word-wrap:break-word;font-size:.9rem}.debug-section[data-v-f7c9374e]{background:#f8f9fa}.debug-content[data-v-f7c9374e]{display:flex;flex-direction:column;gap:1rem}.debug-item[data-v-f7c9374e]{display:flex;flex-direction:column;gap:.5rem}.debug-value[data-v-f7c9374e]{background:#fff;border:1px solid #e1e4e8;border-radius:4px;padding:1rem;margin:0;font-family:Courier New,monospace;font-size:.85rem;overflow-x:auto;color:#2c3e50}.visualization-section[data-v-f7c9374e]{background:#fff;border:1px solid #e1e4e8;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.move-details[data-v-f7c9374e]{margin-bottom:2rem}.details-grid[data-v-f7c9374e]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;margin-top:1rem}.move-detail-item[data-v-f7c9374e]{display:flex;flex-direction:column;padding:.5rem;background:#f8f9fa;border-radius:4px;font-size:.85rem}.move-notation[data-v-f7c9374e]{font-family:Courier New,monospace;font-weight:600;color:#007bff;font-size:1rem}.move-positions[data-v-f7c9374e]{font-family:Courier New,monospace;color:#666;font-size:.75rem;margin-top:.25rem}.token-sequence[data-v-f7c9374e]{margin-bottom:2rem}.tokens-display[data-v-f7c9374e]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.token-item[data-v-f7c9374e]{display:flex;flex-direction:column;align-items:center;padding:.5rem;background:#e7f5ff;border:1px solid #007bff;border-radius:4px;min-width:50px}.token-pos[data-v-f7c9374e]{font-size:.7rem;color:#666;font-weight:600}.token-char[data-v-f7c9374e]{font-family:Courier New,monospace;font-size:1.2rem;font-weight:600;color:#007bff;margin:.25rem 0}.token-id[data-v-f7c9374e]{font-size:.7rem;color:#666;font-family:Courier New,monospace}.mask-matrix[data-v-f7c9374e]{margin-top:2rem}.matrix-container[data-v-f7c9374e]{overflow:auto;margin-top:1rem;max-height:600px;border:1px solid #e1e4e8;border-radius:4px}.matrix-table[data-v-f7c9374e]{border-collapse:collapse;font-size:.75rem;min-width:100%}.corner-cell[data-v-f7c9374e]{background:#f8f9fa;border:1px solid #dee2e6;position:sticky;left:0;top:0;z-index:3}.header-cell[data-v-f7c9374e]{background:#f8f9fa;border:1px solid #dee2e6;padding:.5rem;position:sticky;top:0;z-index:2;text-align:center;min-width:40px}.header-content[data-v-f7c9374e]{display:flex;flex-direction:column;align-items:center}.header-pos[data-v-f7c9374e]{font-size:.65rem;color:#666;font-weight:600}.header-char[data-v-f7c9374e]{font-family:Courier New,monospace;font-size:.9rem;font-weight:600;color:#007bff;margin-top:.1rem}.row-header[data-v-f7c9374e]{background:#f8f9fa;border:1px solid #dee2e6;padding:.5rem;position:sticky;left:0;z-index:1;text-align:center;min-width:50px}.row-content[data-v-f7c9374e]{display:flex;flex-direction:column;align-items:center}.row-pos[data-v-f7c9374e]{font-size:.65rem;color:#666;font-weight:600}.row-char[data-v-f7c9374e]{font-family:Courier New,monospace;font-size:.9rem;font-weight:600;color:#007bff;margin-top:.1rem}.mask-cell[data-v-f7c9374e]{border:1px solid #dee2e6;padding:.5rem;text-align:center;font-family:Courier New,monospace;font-weight:600;font-size:.8rem}.mask-active[data-v-f7c9374e]{background:#d4edda;color:#155724}.mask-inactive[data-v-f7c9374e]{background:#f8f9fa;color:#ccc}.matrix-legend[data-v-f7c9374e]{display:flex;gap:1.5rem;margin-top:1rem;padding:.75rem;background:#f8f9fa;border-radius:4px}.legend-item[data-v-f7c9374e]{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.legend-box[data-v-f7c9374e]{width:20px;height:20px;border:1px solid #dee2e6;border-radius:3px}.legend-box.active[data-v-f7c9374e]{background:#d4edda}.legend-box.inactive[data-v-f7c9374e]{background:#f8f9fa}
