*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:#ddd;-webkit-font-smoothing:antialiased;background:#1a1a1a;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}button,select{font-family:inherit}.step-upload[data-v-4b1384f4]{flex-direction:column;align-items:center;gap:24px;padding:32px 16px;display:flex}.upload-area[data-v-4b1384f4]{text-align:center;cursor:pointer;border:2px dashed #555;border-radius:16px;width:100%;max-width:480px;padding:48px 24px;transition:border-color .2s,background .2s}.upload-area[data-v-4b1384f4]:hover,.upload-area.dragging[data-v-4b1384f4]{background:#4fc3f70d;border-color:#4fc3f7}.upload-icon[data-v-4b1384f4]{margin-bottom:12px;font-size:48px}.upload-text[data-v-4b1384f4]{color:#ddd;margin:0 0 8px;font-size:16px}.upload-hint[data-v-4b1384f4]{color:#888;margin:0;font-size:13px}.error-msg[data-v-4b1384f4]{color:#ff5252;font-size:14px}.preview[data-v-4b1384f4]{flex-direction:column;align-items:center;gap:16px;width:100%;max-width:480px;display:flex}.preview video[data-v-4b1384f4]{background:#000;border-radius:12px;width:100%}.meta-info[data-v-4b1384f4]{color:#aaa;gap:16px;font-size:13px;display:flex}.btn-primary[data-v-4b1384f4]{color:#111;cursor:pointer;background:#4fc3f7;border:none;border-radius:8px;padding:12px 32px;font-size:16px;font-weight:600;transition:background .2s}.btn-primary[data-v-4b1384f4]:hover{background:#29b6f6}.step-crop[data-v-4426da18]{flex-direction:column;gap:24px;max-width:520px;margin:0 auto;padding:16px;display:flex}h3[data-v-4426da18]{color:#ccc;margin:0 0 12px;font-size:15px}.video-wrapper[data-v-4426da18]{touch-action:none;background:#000;border-radius:12px;width:100%;position:relative;overflow:hidden}.video-wrapper video[data-v-4426da18]{width:100%;display:block}.crop-overlay[data-v-4426da18]{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.time-section[data-v-4426da18]{flex-direction:column;gap:8px;display:flex}.time-labels[data-v-4426da18]{color:#aaa;justify-content:space-between;font-size:13px;display:flex}.time-track[data-v-4426da18]{cursor:pointer;touch-action:none;border-radius:6px;height:48px;position:relative;overflow:hidden}.time-bg[data-v-4426da18]{background:#333;position:absolute;inset:0}.thumb-canvas[data-v-4426da18]{opacity:.6;width:100%;height:100%;display:block}.time-range[data-v-4426da18]{pointer-events:none;background:#4fc3f740;border-top:2px solid #4fc3f7;border-bottom:2px solid #4fc3f7;height:100%;position:absolute;top:0}.time-handle[data-v-4426da18]{cursor:ew-resize;z-index:2;width:14px;height:100%;position:absolute;top:0;transform:translate(-50%)}.time-handle[data-v-4426da18]:after{content:"";background:#4fc3f7;border-radius:2px;width:4px;height:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.time-duration[data-v-4426da18]{text-align:center;color:#888;font-size:13px}.actions[data-v-4426da18]{justify-content:center;gap:12px;display:flex}.btn-primary[data-v-4426da18]{color:#111;cursor:pointer;background:#4fc3f7;border:none;border-radius:8px;padding:12px 28px;font-size:15px;font-weight:600;transition:background .2s}.btn-primary[data-v-4426da18]:hover{background:#29b6f6}.btn-secondary[data-v-4426da18]{color:#aaa;cursor:pointer;background:0 0;border:1px solid #555;border-radius:8px;padding:12px 28px;font-size:15px;transition:border-color .2s}.btn-secondary[data-v-4426da18]:hover{border-color:#888}.step-analyze[data-v-fa2cad9f]{justify-content:center;align-items:center;min-height:60vh;padding:32px 16px;display:flex}.analyze-card[data-v-fa2cad9f]{text-align:center;width:100%;max-width:400px}.spinner[data-v-fa2cad9f]{border:3px solid #333;border-top-color:#4fc3f7;border-radius:50%;width:48px;height:48px;margin:0 auto 24px;animation:1s linear infinite spin-fa2cad9f}@keyframes spin-fa2cad9f{to{transform:rotate(360deg)}}h2[data-v-fa2cad9f]{color:#eee;margin:0 0 24px;font-size:18px;font-weight:600}.progress-bar[data-v-fa2cad9f]{background:#333;border-radius:4px;height:8px;margin-bottom:12px;overflow:hidden}.progress-fill[data-v-fa2cad9f]{background:#4fc3f7;border-radius:4px;height:100%;transition:width .15s}.progress-text[data-v-fa2cad9f]{color:#aaa;margin:0;font-size:14px}.status-text[data-v-fa2cad9f]{color:#888;margin-top:8px;font-size:13px}.step-player[data-v-6c92f374]{flex-direction:column;gap:12px;max-width:760px;margin:0 auto;padding:16px;display:flex}.player-layout[data-v-6c92f374]{align-items:flex-start;gap:12px;display:flex}.player-main[data-v-6c92f374]{flex-direction:column;flex:1;gap:12px;min-width:0;display:flex}.player-container[data-v-6c92f374]{background:#000;border-radius:12px;width:100%;position:relative;overflow:hidden}.display-canvas[data-v-6c92f374]{width:100%;display:block}.annot-canvas[data-v-6c92f374]{pointer-events:none;position:absolute;top:0;left:0}.annot-canvas.active[data-v-6c92f374]{pointer-events:auto;cursor:crosshair;touch-action:none}.right-panel[data-v-6c92f374]{flex-direction:column;flex-shrink:0;gap:12px;width:110px;display:flex}.phase-panel[data-v-6c92f374]{flex-direction:column;gap:6px;display:flex}.phase-panel-title[data-v-6c92f374]{color:#888;text-align:center;border-bottom:1px solid #333;padding-bottom:4px;font-size:12px}.phase-list[data-v-6c92f374]{flex-direction:column;gap:4px;display:flex}.phase-item[data-v-6c92f374]{color:#aaa;cursor:pointer;background:#1e1e1e;border:1px solid #333;border-radius:8px;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;font-size:12px;transition:all .15s;display:flex}.phase-item[data-v-6c92f374]:hover{background:#262626;border-color:#555}.phase-item.active[data-v-6c92f374]{color:#fff;background:#4fc3f714;border-color:#4fc3f7}.phase-dot[data-v-6c92f374]{border-radius:50%;flex-shrink:0;width:8px;height:8px}.phase-label[data-v-6c92f374]{font-weight:600;line-height:1.2}.phase-frame[data-v-6c92f374]{color:#666;font-size:10px}.phase-item.active .phase-frame[data-v-6c92f374]{color:#4fc3f7}.phase-badge[data-v-6c92f374]{color:#4fc3f7;vertical-align:middle;background:#4fc3f726;border-radius:4px;margin-left:8px;padding:1px 8px;font-size:11px;display:inline-block}.side-toolbar[data-v-6c92f374]{flex-direction:column;gap:6px;display:flex}.tool-btn[data-v-6c92f374]{color:#ccc;cursor:pointer;-webkit-user-select:none;user-select:none;background:#2a2a2a;border:1px solid #444;border-radius:8px;justify-content:center;align-items:center;gap:4px;width:100%;padding:7px 6px;font-size:12px;transition:background .15s,border-color .15s,color .15s;display:flex}.tool-btn[data-v-6c92f374]:hover{background:#333;border-color:#666}.tool-btn.active[data-v-6c92f374]{color:#4fc3f7;background:#4fc3f726;border-color:#4fc3f7}.tool-dropdown[data-v-6c92f374]{position:relative}.draw-menu[data-v-6c92f374]{z-index:10;background:#2a2a2a;border:1px solid #444;border-radius:10px;flex-direction:column;gap:2px;min-width:140px;padding:6px;display:flex;position:absolute;top:0;right:calc(100% + 6px);box-shadow:0 8px 24px #00000080}.draw-menu button[data-v-6c92f374]{color:#ccc;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;transition:background .12s;display:flex}.draw-menu button[data-v-6c92f374]:hover{background:#3a3a3a}.draw-menu button.active[data-v-6c92f374]{color:#4fc3f7;background:#4fc3f71a}.draw-menu .clear-btn[data-v-6c92f374]{color:#ff7043;border-top:1px solid #3a3a3a;margin-top:2px;padding-top:10px}.ref-menu button[data-v-6c92f374]{gap:6px}.ref-check[data-v-6c92f374]{color:#4fc3f7;border:2px solid #555;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:13px;transition:border-color .15s,background .15s;display:inline-flex}.ref-menu button.active .ref-check[data-v-6c92f374]{background:#4fc3f726;border-color:#4fc3f7}.draw-menu .clear-btn[data-v-6c92f374]:hover{background:#ff70431a}.fade-enter-active[data-v-6c92f374],.fade-leave-active[data-v-6c92f374]{transition:opacity .15s,transform .15s}.fade-enter-from[data-v-6c92f374],.fade-leave-to[data-v-6c92f374]{opacity:0;transform:translate(4px)}.controls[data-v-6c92f374]{flex-direction:column;gap:10px;width:100%;display:flex}.controls-row[data-v-6c92f374]{justify-content:center;align-items:center;gap:12px;display:flex}.ctrl-btn[data-v-6c92f374]{color:#ddd;cursor:pointer;background:0 0;border:1px solid #555;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;transition:background .2s;display:flex}.ctrl-btn[data-v-6c92f374]:hover{background:#ffffff1a}.play-btn[data-v-6c92f374]{color:#4fc3f7;border-color:#4fc3f7;width:48px;height:48px;font-size:20px}.speed-select[data-v-6c92f374]{color:#aaa;cursor:pointer;background:#222;border:1px solid #555;border-radius:6px;padding:6px 8px;font-size:13px}.seek-bar[data-v-6c92f374]{cursor:pointer;touch-action:none;align-items:center;width:100%;height:32px;display:flex;position:relative}.seek-bg[data-v-6c92f374]{background:#444;border-radius:2px;height:4px;position:absolute;left:0;right:0}.seek-fill[data-v-6c92f374]{background:#4fc3f7;border-radius:2px;height:4px;position:absolute;left:0}.seek-thumb[data-v-6c92f374]{background:#4fc3f7;border-radius:50%;width:14px;height:14px;position:absolute;transform:translate(-50%);box-shadow:0 0 4px #00000080}.frame-info[data-v-6c92f374]{text-align:center;color:#888;font-size:13px}.time-info[data-v-6c92f374]{color:#666;margin-left:12px}.ai-coach-section[data-v-6c92f374]{border-top:1px solid #2a2a2a;flex-direction:column;gap:12px;padding-top:16px;display:flex}.ai-coach-header[data-v-6c92f374]{justify-content:space-between;align-items:center;display:flex}.ai-coach-title[data-v-6c92f374]{color:#ddd;font-size:15px;font-weight:600}.ai-coach-btn[data-v-6c92f374]{color:#4fc3f7;cursor:pointer;background:#4fc3f71a;border:1px solid #4fc3f7;border-radius:8px;padding:7px 18px;font-size:13px;transition:background .15s,opacity .15s}.ai-coach-btn[data-v-6c92f374]:hover:not(:disabled){background:#4fc3f733}.ai-coach-btn[data-v-6c92f374]:disabled{opacity:.5;cursor:not-allowed}.ai-coach-loading[data-v-6c92f374]{color:#aaa;align-items:center;gap:10px;padding:12px 0;font-size:13px;display:flex}.ai-spinner[data-v-6c92f374]{border:2px solid #333;border-top-color:#4fc3f7;border-radius:50%;flex-shrink:0;width:20px;height:20px;animation:.8s linear infinite spin-6c92f374}@keyframes spin-6c92f374{to{transform:rotate(360deg)}}.ai-coach-error[data-v-6c92f374]{color:#ef5350;background:#ef53501a;border:1px solid #ef53504d;border-radius:8px;padding:10px 14px;font-size:13px}.coach-summary[data-v-6c92f374]{color:#ccc;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:10px;padding:14px 16px;font-size:14px;line-height:1.7}.coach-issues-title[data-v-6c92f374]{color:#ef5350;margin-top:4px;font-size:14px;font-weight:600}.coach-issue-card[data-v-6c92f374]{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:10px;gap:12px;padding:14px;display:flex}.coach-issue-body[data-v-6c92f374]{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.coach-issue-phase[data-v-6c92f374]{color:#4fc3f7;font-size:14px;font-weight:700}.coach-issue-problem[data-v-6c92f374]{color:#ccc;font-size:13px;line-height:1.6}.coach-issue-suggestion[data-v-6c92f374]{color:#66bb6a;font-size:13px;line-height:1.6}.coach-issue-thumb[data-v-6c92f374]{object-fit:cover;cursor:pointer;border:1px solid #333;border-radius:8px;flex-shrink:0;width:90px;height:120px;transition:border-color .15s,transform .15s}.coach-issue-thumb[data-v-6c92f374]:hover{border-color:#4fc3f7;transform:scale(1.03)}.lightbox-overlay[data-v-6c92f374]{z-index:9999;cursor:pointer;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-img[data-v-6c92f374]{cursor:default;border-radius:10px;max-width:90vw;max-height:90vh;box-shadow:0 8px 40px #0009}.lightbox-close[data-v-6c92f374]{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:24px;transition:background .15s;display:flex;position:absolute;top:20px;right:24px}.lightbox-close[data-v-6c92f374]:hover{background:#ffffff4d}.actions[data-v-6c92f374]{justify-content:center;display:flex}.btn-secondary[data-v-6c92f374]{color:#aaa;cursor:pointer;background:0 0;border:1px solid #555;border-radius:8px;padding:10px 24px;font-size:14px;transition:border-color .2s}.btn-secondary[data-v-6c92f374]:hover{border-color:#888}.app[data-v-6ec4d539]{flex-direction:column;min-height:100vh;display:flex}.app-header[data-v-6ec4d539]{text-align:center;border-bottom:1px solid #2a2a2a;padding:20px 16px 12px}.app-header h1[data-v-6ec4d539]{color:#eee;margin:0 0 12px;font-size:20px;font-weight:700}.step-indicator[data-v-6ec4d539]{justify-content:center;gap:24px;display:flex}.step-dot[data-v-6ec4d539]{color:#555;padding-bottom:6px;font-size:13px;position:relative}.step-dot.active[data-v-6ec4d539]{color:#4fc3f7}.step-dot.active[data-v-6ec4d539]:after{content:"";background:#4fc3f7;border-radius:1px;height:2px;position:absolute;bottom:0;left:0;right:0}.app-main[data-v-6ec4d539]{flex:1}
