:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #000000;--vt-c-black-soft: #1a1a1a;--vt-c-black-mute: #2d2d2d;--vt-c-lime: #33FF6B;--vt-c-lime-soft: #08c4d1cf;--vt-c-lime-mute: #08c4d185;--vt-c-gray: #707070;--vt-c-gray-soft: #8a8a8a;--vt-c-gray-light: #a0a0a0;--vt-c-divider-light-1: rgba(112, 112, 112, .29);--vt-c-divider-light-2: rgba(112, 112, 112, .12);--vt-c-divider-dark-1: #ff00bfb1;--vt-c-divider-dark-2: #ff00bf83;--vt-c-text-light-1: var(--vt-c-black);--vt-c-text-light-2: var(--vt-c-gray);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: var(--vt-c-gray-light)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--color-primary: var(--vt-c-lime);--color-primary-soft: var(--vt-c-lime-soft);--color-primary-mute: var(--vt-c-lime-mute);--color-secondary: var(--vt-c-black);--color-secondary-soft: var(--vt-c-black-soft);--color-accent: var(--vt-c-gray);--color-accent-soft: var(--vt-c-gray-soft);--color-accent-light: var(--vt-c-gray-light);--section-gap: 160px}@media (prefers-color-scheme: dark){:root{--color-background: var(--vt-c-black);--color-background-soft: var(--vt-c-black-soft);--color-background-mute: var(--vt-c-black-mute);--color-border: var(--vt-c-divider-dark-2);--color-border-hover: var(--vt-c-divider-dark-1);--color-heading: var(--vt-c-text-dark-1);--color-text: var(--vt-c-text-dark-2)}}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-secondary);transition:color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{max-width:1280px;margin:0 auto;font-weight:400;background:var(--color-secondary)}a,.green{text-decoration:none;color:#00bd7e;transition:.4s;padding:3px}@media (min-width: 1024px){body{display:flex;place-items:center}}#app[data-v-60e9a1b0]{min-height:100vh;display:flex;flex-direction:column}.app-main[data-v-60e9a1b0]{flex:1;background-color:var(--background-color)}.shortcuts-btn[data-v-06b7d930]{background:#ffffff1a;color:#888;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .3s ease;font-size:.85rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.shortcuts-btn[data-v-06b7d930]:hover{background:#ffffff26;color:var(--color-primary);border-color:var(--color-primary)}.shortcuts-btn svg[data-v-06b7d930]{transition:all .3s ease}.modal-overlay[data-v-06b7d930]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content[data-v-06b7d930]{background-color:#1a1a1a;border:1px solid #333;border-radius:12px;width:90%;max-width:700px;max-height:85vh;overflow-y:auto;color:#fff;box-shadow:0 20px 40px #00000080}.modal-header[data-v-06b7d930]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #333;background:#2a2a2a;border-radius:12px 12px 0 0}.modal-header h2[data-v-06b7d930]{margin:0;font-size:1.5rem;color:var(--color-primary)}.close-btn[data-v-06b7d930]{background:none;border:none;color:#888;font-size:1.8rem;cursor:pointer;padding:0 8px;transition:color .3s ease;line-height:1}.close-btn[data-v-06b7d930]:hover{color:var(--color-primary)}.shortcuts-content[data-v-06b7d930]{padding:24px}.shortcuts-section[data-v-06b7d930]{margin-bottom:32px}.shortcuts-section[data-v-06b7d930]:last-child{margin-bottom:0}.shortcuts-section h3[data-v-06b7d930]{color:var(--color-primary);margin-bottom:16px;font-size:1.1rem;font-weight:600;border-bottom:1px solid #333;padding-bottom:8px}.shortcut-item[data-v-06b7d930]{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1)}.shortcut-item[data-v-06b7d930]:last-child{border-bottom:none}.key[data-v-06b7d930]{background-color:#333;color:var(--color-primary);padding:6px 12px;border-radius:6px;font-family:monospace;font-size:.85rem;font-weight:600;min-width:120px;text-align:center;border:1px solid #444}.step[data-v-06b7d930]{background-color:var(--color-primary);color:var(--color-secondary);padding:6px 12px;border-radius:50%;font-family:monospace;font-size:.85rem;font-weight:700;min-width:30px;text-align:center;margin-right:10px}.description[data-v-06b7d930]{color:#ccc;flex:1;margin-left:16px;line-height:1.4}.modal-content[data-v-06b7d930]::-webkit-scrollbar{width:8px}.modal-content[data-v-06b7d930]::-webkit-scrollbar-track{background:#2a2a2a}.modal-content[data-v-06b7d930]::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.modal-content[data-v-06b7d930]::-webkit-scrollbar-thumb:hover{background:#666}.video-frame-container[data-v-f6919b7a]{flex:2;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:0;border-radius:4px;padding:10px;outline:none}.video-frame[data-v-f6919b7a]{position:relative;overflow:hidden;width:100%;height:calc(100% - 50px);margin-bottom:45px}.image-container[data-v-f6919b7a]{position:absolute;top:0;left:0;will-change:transform}.video-image[data-v-f6919b7a]{display:block;max-width:100%;height:auto}.calibration-point[data-v-f6919b7a]{position:absolute;width:12px;height:12px;background-color:#00ff15;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 6px #4caf50cc,0 0 12px #4caf5080}.selected-point[data-v-f6919b7a]{background-color:#ffc107;box-shadow:0 0 8px #ffc107cc,0 0 15px #ffc10780}.save-section[data-v-f6919b7a]{position:absolute;bottom:10px;left:10px;display:flex;gap:10px}.action-btn[data-v-f6919b7a]{display:flex;align-items:center;padding:.5rem 1rem;background:#ffffff1a;color:#fff;border:1px solid #555;border-radius:6px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease}.action-btn[data-v-f6919b7a]:hover:not(:disabled){background:#ffffff26;border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 15px #d9ff0433}.action-btn[data-v-f6919b7a]:disabled{background:#ffffff0d;color:#666;border-color:#333;cursor:not-allowed;transform:none;box-shadow:none}.process-btn[data-v-f6919b7a]{background:var(--color-primary);color:var(--color-secondary);border-color:var(--color-primary)}.process-btn[data-v-f6919b7a]:hover:not(:disabled){background:var(--color-primary-soft);border-color:var(--color-primary-soft);color:var(--color-secondary);box-shadow:0 4px 15px #d9ff0466}.calibration-polyline[data-v-f6919b7a]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.polyline-svg[data-v-f6919b7a]{width:100%;height:100%;position:absolute;top:0;left:0}.polyline-svg polyline[data-v-f6919b7a]{transition:stroke-width .2s}.selected-line[data-v-f6919b7a]{stroke-width:2;stroke:#ffc107!important}.polyline-point[data-v-f6919b7a]{fill:#00ff15;stroke:#fff;stroke-width:.5;transition:all .2s ease;pointer-events:all;cursor:pointer}.polyline-point[data-v-f6919b7a]:hover{fill:#ffc107;r:3;stroke-width:2}.selected-line .polyline-point[data-v-f6919b7a]{cursor:grab}.polyline-point.dragging[data-v-f6919b7a]{fill:#ff4081;r:4;stroke-width:3}.selected-line-point[data-v-f6919b7a]{fill:#ffc107;r:2;stroke-width:1}.temp-point[data-v-f6919b7a]{background-color:#ffc107;width:8px;height:8px;border-radius:50%;border:2px solid white;z-index:2}.temp-polyline-svg[data-v-f6919b7a]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.polyline-point.shared-point[data-v-f6919b7a]{fill:#ffc107;stroke:#ff4081;stroke-width:2;r:4;animation:pulse-f6919b7a 2s infinite}.polyline-point.hoverable[data-v-f6919b7a]{cursor:pointer;filter:brightness(1.2)}@keyframes pulse-f6919b7a{0%{stroke-width:2;stroke-opacity:1}50%{stroke-width:3;stroke-opacity:.5}to{stroke-width:2;stroke-opacity:1}}.football-field[data-v-ef1d010e]{position:relative;width:100%;height:100%}.field-line[data-v-ef1d010e]{stroke-width:.8;cursor:pointer}.field-line[class*=Goal][data-v-ef1d010e]{stroke-width:1}.field-line[data-v-ef1d010e]:hover{stroke-width:1.2;opacity:.8}.line-info[data-v-ef1d010e]{position:absolute;bottom:10px;left:50%;transform:translate(-50%);background-color:#000000b3;color:#fff;padding:5px 10px;border-radius:4px;font-size:.9rem}.keypoint[data-v-ef1d010e]{filter:drop-shadow(0 0 2px rgba(255,255,255,.5));cursor:pointer}.keypoint[data-v-ef1d010e]:hover{filter:drop-shadow(0 0 4px rgba(255,0,0,.8))}.info-overlay[data-v-ef1d010e]{position:absolute;bottom:10px;left:50%;transform:translate(-50%);background-color:#000000b3;color:#fff;padding:5px 10px;border-radius:4px;font-size:.9rem}.plotly-chart[data-v-ac5fac03]{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.chart-container[data-v-ac5fac03]{position:relative;min-height:200px}.chart-container.loading[data-v-ac5fac03]{display:flex;align-items:center;justify-content:center}.loading-spinner[data-v-ac5fac03]{display:flex;flex-direction:column;align-items:center;gap:1rem}.spinner[data-v-ac5fac03]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin-ac5fac03 1s linear infinite}@keyframes spin-ac5fac03{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message[data-v-ac5fac03]{text-align:center;padding:2rem;color:#dc3545}.retry-btn[data-v-ac5fac03]{background:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;margin-top:1rem}.retry-btn[data-v-ac5fac03]:hover{background:#c82333}.plotly-chart[data-v-ac5fac03] .modebar{display:flex!important;align-items:center!important;justify-content:flex-end!important;padding:5px!important;background:none!important}.plotly-chart[data-v-ac5fac03] .modebar-group{display:flex!important;align-items:center!important;margin:0 2px!important;background:none!important;border:none!important}.plotly-chart[data-v-ac5fac03] .modebar-btn{display:flex!important;align-items:center!important;justify-content:center!important;margin:0 1px!important;background:none!important;border:none!important}.plotly-chart[data-v-ac5fac03] .modebar-btn .icon path{fill:#000!important}.plotly-chart[data-v-ac5fac03] .modebar-btn:hover{background:#0000001a!important}.plotly-chart[data-v-ac5fac03] .modebar-btn.active{background:#0003!important}@media (max-width: 768px){.chart-header[data-v-ac5fac03]{flex-direction:column;gap:.5rem;text-align:center}.chart-container[data-v-ac5fac03]{min-height:300px}}.btn-back-home[data-v-93ffb620]{position:fixed;top:20px;left:20px;background:#ffffff1a;color:#888;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:10px;cursor:pointer;transition:all .3s ease;z-index:1000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-back-home[data-v-93ffb620]:hover{background:#ffffff26;color:var(--color-primary);border-color:var(--color-primary);transform:scale(1.05)}.btn-back-home svg[data-v-93ffb620]{transition:all .3s ease}.home-container[data-v-93ffb620]{margin:0 auto;background:var(--color-secondary);min-height:100vh}.section[data-v-93ffb620]{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.hero h1[data-v-93ffb620]{font-size:3rem;font-weight:700;margin-bottom:1rem;color:#fff;letter-spacing:-.025em;position:relative}.hero h1[data-v-93ffb620]:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:80px;height:4px;background:var(--color-primary);border-radius:2px}.hero-subtitle[data-v-93ffb620]{font-size:1.1rem;color:#b0b0b0;margin-bottom:4rem;max-width:600px;line-height:1.6;font-weight:500}.mode-selection h2[data-v-93ffb620]{font-size:1.5rem;margin-bottom:3rem;color:#fff;font-weight:600}.mode-cards[data-v-93ffb620],.video-type-cards[data-v-93ffb620]{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;width:100%;max-width:800px}.mode-card[data-v-93ffb620],.type-card[data-v-93ffb620]{background:var(--color-secondary-soft);border-radius:12px;padding:2rem;box-shadow:0 4px 20px #0000004d;cursor:pointer;transition:all .3s ease;border:2px solid #333;position:relative;overflow:hidden}.mode-card[data-v-93ffb620]:before,.type-card[data-v-93ffb620]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--color-primary);transform:translateY(-4px);transition:transform .3s ease}.mode-card[data-v-93ffb620]:hover:before,.type-card[data-v-93ffb620]:hover:before{transform:translateY(0)}.mode-card[data-v-93ffb620]:hover,.type-card[data-v-93ffb620]:hover{transform:translateY(-8px);box-shadow:0 8px 30px #0006;border-color:var(--color-primary);background:#2a2a2a}.mode-card.selected[data-v-93ffb620],.type-card.selected[data-v-93ffb620]{border-color:var(--color-primary);background:#2a2a2a;transform:translateY(-4px);box-shadow:0 6px 25px #ffffff4d}.mode-card.selected[data-v-93ffb620]:before,.type-card.selected[data-v-93ffb620]:before{transform:translateY(0)}.mode-card h3[data-v-93ffb620],.type-card h3[data-v-93ffb620]{font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:1rem}.mode-card p[data-v-93ffb620],.type-card p[data-v-93ffb620]{color:#b0b0b0;margin-bottom:1.5rem;line-height:1.5;font-weight:500}.mode-card ul[data-v-93ffb620],.type-card ul[data-v-93ffb620]{list-style:none;padding:0;margin:0}.mode-card li[data-v-93ffb620],.type-card li[data-v-93ffb620]{color:#d0d0d0;font-size:.9rem;position:relative;padding:.5rem 0 .5rem 1.5rem;font-weight:500}.mode-card li[data-v-93ffb620]:before,.type-card li[data-v-93ffb620]:before{content:"●";color:var(--color-primary);font-weight:700;position:absolute;left:0}.upload-section h2[data-v-93ffb620],.video-type-section h2[data-v-93ffb620],.parameters-section h2[data-v-93ffb620],.processing-section h2[data-v-93ffb620],.results-section h2[data-v-93ffb620]{font-size:1.5rem;margin-bottom:3rem;color:#fff;font-weight:600}.upload-grid[data-v-93ffb620]{display:grid;grid-template-columns:1fr 1fr;gap:3rem;width:100%;max-width:1200px;align-items:start;padding:2rem}.upload-left[data-v-93ffb620],.upload-right[data-v-93ffb620]{display:flex;flex-direction:column;height:100%}.upload-right[data-v-93ffb620]{justify-content:center;align-items:center}.upload-title[data-v-93ffb620]{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:2rem;text-align:center}.drop-zone[data-v-93ffb620]{border:3px dashed #555;border-radius:12px;padding:3rem;transition:all .3s ease;background:var(--color-secondary-soft);width:100%;max-width:600px;position:relative}.drop-zone.active[data-v-93ffb620]{border-color:var(--color-primary);background:#2a2a2a;box-shadow:0 4px 20px #d9ff0433}.drop-zone.has-file[data-v-93ffb620]{border-color:var(--color-primary);border-style:solid;background:#2a2a2a}.upload-icon[data-v-93ffb620]{font-size:3rem;color:#888;margin-bottom:1rem;font-weight:300}.drop-content h4[data-v-93ffb620]{font-size:1.25rem;color:#fff;margin-bottom:1rem;font-weight:600}.test-image-container[data-v-93ffb620]{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%}.test-image-card.single[data-v-93ffb620]{background:var(--color-secondary-soft);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .3s ease;border:2px solid transparent;position:relative;width:100%;height:100%;display:flex}.test-image-card[data-v-93ffb620]:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000004d;border-color:#fff3}.test-image-card.selected[data-v-93ffb620]{border-color:var(--color-primary);box-shadow:0 4px 20px #d9ff044d}.test-image-card.selected[data-v-93ffb620]:after{content:"✓";position:absolute;top:8px;right:8px;background:var(--color-primary);color:var(--color-secondary);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem}.test-image-thumb[data-v-93ffb620]{width:100%;height:100%;object-fit:cover;display:block}.test-image-overlay[data-v-93ffb620]{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity .3s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.test-image-card.single:hover .test-image-overlay[data-v-93ffb620]{opacity:0}.overlay-content[data-v-93ffb620]{text-align:center;color:#fff}.overlay-content p[data-v-93ffb620]{font-size:.9rem;margin:0;color:#e0e0e0;font-weight:500}.or-text[data-v-93ffb620]{color:#888;margin:1.5rem 0;font-size:.9rem;font-weight:500}.file-input-label[data-v-93ffb620]{display:inline-block;background:var(--color-primary);color:var(--color-secondary);padding:.875rem 2rem;border-radius:8px;cursor:pointer;transition:all .3s ease;font-weight:700;font-size:.9rem;position:relative;overflow:hidden}.file-input-label[data-v-93ffb620]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.file-input-label[data-v-93ffb620]:hover:before{left:100%}.file-input-label[data-v-93ffb620]:hover{background:#fff;transform:translateY(-2px);box-shadow:0 4px 15px #fff6}.format-info[data-v-93ffb620]{color:#888;font-size:.85rem;margin-top:1.5rem;font-weight:500}.file-preview[data-v-93ffb620]{text-align:center}.file-info h4[data-v-93ffb620]{color:var(--color-primary);margin-bottom:1.5rem;font-weight:600}.file-name[data-v-93ffb620]{font-weight:700;color:#fff;margin-bottom:1rem}.file-details[data-v-93ffb620]{color:#b0b0b0;font-size:.9rem;margin-bottom:2rem;font-weight:500}.file-details span[data-v-93ffb620]{margin-right:1rem}.preview-media[data-v-93ffb620]{max-width:100%;max-height:300px;border-radius:8px;box-shadow:0 4px 20px #0000004d;margin:2rem 0}.parameters-form[data-v-93ffb620]{background:var(--color-secondary-soft);padding:2.5rem;border-radius:12px;box-shadow:0 4px 20px #0000004d;width:100%;max-width:500px;text-align:left;border:1px solid #333}.param-group[data-v-93ffb620]{margin-bottom:2rem}.param-group label[data-v-93ffb620]{display:block;margin-bottom:.75rem;font-weight:600;color:#fff;font-size:.9rem}.param-group input[type=range][data-v-93ffb620]{width:100%;height:6px;background:#333;border-radius:3px;outline:none;margin:.5rem 0;-webkit-appearance:none}.param-group input[type=range][data-v-93ffb620]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:3px solid var(--color-secondary);box-shadow:0 2px 6px #0000004d}.param-group input[type=range][data-v-93ffb620]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:3px solid var(--color-secondary);box-shadow:0 2px 6px #0000004d}.param-value[data-v-93ffb620]{font-weight:700;float:right;background:var(--color-primary);color:var(--color-secondary);padding:.25rem .5rem;border-radius:4px;font-size:.8rem}.launch-btn[data-v-93ffb620]{width:100%;margin-top:1rem;font-size:1rem;padding:1rem;font-weight:700}.error-section h2[data-v-93ffb620]{font-size:1.5rem;margin-bottom:3rem;color:#fff;font-weight:600}.error-card[data-v-93ffb620]{background:var(--color-secondary-soft);border-radius:12px;padding:3rem;box-shadow:0 4px 20px #0000004d;width:100%;max-width:400px;border:1px solid #333;text-align:center;display:flex;flex-direction:column;gap:2rem}.error-message[data-v-93ffb620]{color:#b0b0b0;font-size:.95rem;font-weight:500;margin:0}.btn-manual-primary[data-v-93ffb620]{background:var(--color-primary);color:var(--color-secondary);border:none;padding:1rem 2rem;border-radius:8px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s ease}.btn-restart-small[data-v-93ffb620]{background:transparent;color:#888;border:none;padding:.5rem;font-size:.85rem;cursor:pointer;transition:color .3s ease;text-decoration:underline}.btn-restart-small[data-v-93ffb620]:hover{color:#fff}.processing-card[data-v-93ffb620]{background:var(--color-secondary-soft);border-radius:12px;padding:3rem;box-shadow:0 4px 20px #0000004d;width:100%;max-width:500px;border:1px solid #333}.processing-spinner[data-v-93ffb620]{width:48px;height:48px;border:4px solid #333;border-top:4px solid var(--color-primary);border-radius:50%;animation:spin-93ffb620 1s linear infinite;margin:0 auto 2rem}@keyframes spin-93ffb620{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.processing-card h3[data-v-93ffb620]{font-size:1.1rem;color:#fff;margin-bottom:2rem;font-weight:600}.progress-container[data-v-93ffb620]{margin:2rem 0}.progress-bar[data-v-93ffb620]{width:100%;height:10px;background:#333;border-radius:5px;overflow:hidden;margin-bottom:.75rem}.progress-fill[data-v-93ffb620]{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-soft));transition:width .3s ease;border-radius:5px}.progress-text[data-v-93ffb620]{font-weight:700;color:#fff;font-size:.9rem}.processing-info[data-v-93ffb620]{margin-top:2rem;text-align:left}.info-item[data-v-93ffb620]{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem}.info-item .label[data-v-93ffb620]{color:#b0b0b0;font-weight:500}.info-item .value[data-v-93ffb620]{color:#fff;font-weight:600}.results-summary[data-v-93ffb620]{background:var(--color-secondary-soft);border-radius:12px;margin-bottom:3rem;box-shadow:0 4px 20px #0000004d;width:100%;max-width:600px;border:1px solid #333}.results-container[data-v-93ffb620]{max-width:800px;width:100%;display:flex;flex-direction:column;gap:2rem}.result-status h2[data-v-93ffb620]{margin:0;font-size:1.5rem;font-weight:600}.status-success h2[data-v-93ffb620]{color:var(--color-primary)}.status-error h2[data-v-93ffb620]{color:#dc3545}.result-message[data-v-93ffb620]{background:var(--color-secondary-soft);border-radius:8px;padding:1.5rem;border-left:4px solid var(--color-primary)}.result-message p[data-v-93ffb620]{margin:0;color:#e0e0e0;line-height:1.5;font-size:.95rem}.result-actions[data-v-93ffb620]{display:flex;flex-direction:column;gap:.75rem}.btn-primary[data-v-93ffb620],.btn-secondary[data-v-93ffb620],.btn-tertiary[data-v-93ffb620]{padding:.875rem 1.5rem;border-radius:8px;border:none;cursor:pointer;font-weight:600;font-size:.9rem;transition:all .3s ease}.btn-primary[data-v-93ffb620]:hover{background:var(--color-primary-soft);transform:translateY(-1px)}.btn-secondary[data-v-93ffb620]:hover{background:#666;transform:translateY(-1px)}.btn-tertiary[data-v-93ffb620]{background:transparent;color:#888;border:1px solid #555}.btn-tertiary[data-v-93ffb620]:hover{color:#fff;border-color:#777;background:#333}.result-details[data-v-93ffb620]{margin-top:1rem}.result-details summary[data-v-93ffb620]{color:#888;font-size:.9rem;cursor:pointer;padding:.5rem 0;transition:color .3s ease}.result-details summary[data-v-93ffb620]:hover{color:#fff}.result-details[open] summary[data-v-93ffb620]{color:var(--color-primary);margin-bottom:1rem}.result-data[data-v-93ffb620]{background:#0d1117;color:#e6edf3;padding:1.5rem;border-radius:8px;font-family:Monaco,Consolas,Ubuntu Mono,monospace;font-size:.875rem;line-height:1.6;overflow-x:auto;white-space:pre;border:1px solid #30363d;max-height:400px;overflow-y:auto;text-align:left;box-shadow:inset 0 1px 3px #0000004d;color:#c9d1d9}.result-details[data-v-93ffb620]{position:relative}.confidence-score[data-v-93ffb620]{font-size:1rem;color:#fff;font-weight:600}.quick-info[data-v-93ffb620]{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #333}.quick-info .info-item[data-v-93ffb620]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:.9rem}.quick-info .info-item span[data-v-93ffb620]:first-child{color:#b0b0b0;font-weight:500}.quick-info .info-item span[data-v-93ffb620]:last-child{color:#fff;font-weight:600;font-family:monospace}.error-card-simple[data-v-93ffb620]{max-width:500px;width:100%;text-align:center}.error-card-simple h2[data-v-93ffb620]{color:#dc3545;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.error-card-simple .error-message[data-v-93ffb620]{color:#b0b0b0;font-size:1rem;margin-bottom:2rem;line-height:1.5}.error-actions[data-v-93ffb620]{display:flex;flex-direction:column;gap:1rem;max-width:300px;margin:0 auto}.manual-error-actions[data-v-93ffb620],.auto-error-actions[data-v-93ffb620]{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:300px;margin:0 auto}.btn-manual-primary[data-v-93ffb620]{background:var(--color-primary);color:var(--color-secondary);border:none;padding:1rem 2rem;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease}.btn-manual-primary[data-v-93ffb620]:hover{background:var(--color-primary-soft);transform:translateY(-2px);box-shadow:0 4px 15px #d9ff0466}.btn-restart-small[data-v-93ffb620]{background:transparent;color:#888;border:1px solid #555;padding:.75rem 1.5rem;border-radius:8px;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .3s ease}.btn-restart-small[data-v-93ffb620]:hover{color:#fff;border-color:#777;background:#333}.btn-primary[data-v-93ffb620],.btn-secondary[data-v-93ffb620],.btn-export[data-v-93ffb620]{border:none;padding:.875rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;text-decoration:none;display:inline-block;font-size:.9rem;position:relative;overflow:hidden}.btn-primary[data-v-93ffb620]{background:var(--color-primary);color:var(--color-secondary)}.btn-primary[data-v-93ffb620]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s ease}.btn-primary[data-v-93ffb620]:hover:before{left:100%}.btn-primary[data-v-93ffb620]:hover{background:var(--color-primary-soft);transform:translateY(-2px);box-shadow:0 4px 15px #d9ff0466}.btn-secondary[data-v-93ffb620]{background:#555;color:#fff;border:1px solid #666}.btn-secondary[data-v-93ffb620]:hover{background:#666;transform:translateY(-2px);box-shadow:0 4px 15px #ffffff1a}.btn-export[data-v-93ffb620]{background:var(--color-primary);color:var(--color-secondary);padding:.5rem 1rem;font-size:.85rem;font-weight:700}.btn-export[data-v-93ffb620]:hover{background:var(--color-primary-soft);transform:translateY(-2px);box-shadow:0 4px 15px #d9ff0466}.manual-section[data-v-93ffb620]{height:100svh;min-height:100svh;padding:0}.manual-container[data-v-93ffb620]{height:100%;width:100%;display:flex;flex-direction:column}.manual-content[data-v-93ffb620]{flex:1;display:flex;gap:15px;padding:15px;overflow:hidden;height:100%}.manual-section .calibration-container[data-v-93ffb620]{flex:1;min-width:0;display:flex;flex-direction:column;height:100%}.manual-section .field-container[data-v-93ffb620]{flex:1;min-width:0;overflow:hidden;display:flex;align-items:center;justify-content:center;height:100%}.manual-section .field-container[data-v-93ffb620] svg{width:100%;height:100%;object-fit:contain;margin-top:-10px}.manual-section .calibration-container[data-v-93ffb620] .video-frame-container{height:100%}.manual-section .calibration-container[data-v-93ffb620] .video-frame{height:calc(100% - 80px)}.result-chart[data-v-93ffb620]{width:100%;max-width:1000px;margin:2rem 0;background:#ffffff05;border-radius:12px;padding:1.5rem;border:1px solid rgba(255,255,255,.1)}.result-chart h3[data-v-93ffb620]{font-size:1.25rem;color:#fff;margin-bottom:1rem;text-align:center;font-weight:600}@media (max-width: 768px){.home-container[data-v-93ffb620]{padding:0 1rem}.section[data-v-93ffb620]{min-height:auto}.mode-cards[data-v-93ffb620],.video-type-cards[data-v-93ffb620],.main-actions[data-v-93ffb620]{grid-template-columns:1fr}.hero h1[data-v-93ffb620]{font-size:2.5rem}.manual-content[data-v-93ffb620]{flex-direction:column}.result-chart[data-v-93ffb620]{padding:1rem;margin:1rem 0}}
