.top-bar{background:#2a2a2a;border-bottom:1px solid #333;border-radius:8px 8px 0 0;flex-shrink:0;height:60px;justify-content:space-between;margin-bottom:0;padding:0 16px}.top-bar,.top-bar-section{align-items:center;display:flex}.top-bar-section{gap:12px}.top-bar-section:first-child .btn{background:#4caf50!important;border-color:#4caf50!important;color:#fff!important}.top-bar-section:first-child .btn:hover{background:#45a049!important;border-color:#45a049!important}.top-bar-section:first-child .btn:disabled{background:#2e7031!important;border-color:#2e7031!important;opacity:.6}.video-info{align-items:center;color:#ccc;display:flex;font-size:14px;gap:8px}.video-name{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modified-indicator{color:#f59e0b;font-size:18px;line-height:1}.event-dropdown,.export-dropdown{position:relative}.event-dropdown .btn{align-items:center;display:flex;gap:8px}.event-menu-item{color:#ccc;padding:8px 16px;transition:background .2s;width:100%}.event-menu-item:hover{background:#444}.event-color-indicator{border-radius:50%;flex-shrink:0;height:12px;width:12px}.dropdown-menu{background:#333;border:1px solid #555;border-radius:6px;box-shadow:0 4px 12px #00000080;margin-top:4px;min-width:160px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.dropdown-menu button{background:#0000;border:none;color:#fff;cursor:pointer;display:block;font-size:14px;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.dropdown-menu button:hover{background:#404040}.dropdown-menu button:not(:last-child){border-bottom:1px solid #555}.top-bar .btn:disabled{cursor:not-allowed;opacity:.5}.top-bar .btn-success{background:#22c55e}.top-bar .btn-warning{background:#f59e0b}@media (max-width:768px){.top-bar{padding:0 12px}.top-bar-section{gap:8px}.video-info{display:none}.btn{font-size:13px;padding:6px 12px}.btn span:not(.modified-indicator){display:none}}@media (max-width:480px){.top-bar{height:50px;padding:0 8px}.top-bar-section:nth-child(2){display:none}}.player-management-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.player-management-modal{background:#2a2a2a;border:1px solid #555;border-radius:12px;box-shadow:0 8px 32px #00000080;display:flex;flex-direction:column;height:85vh;max-height:800px;max-width:1000px;overflow:hidden;width:90vw}.player-management-header{align-items:center;background:#333;border-bottom:1px solid #555;display:flex;justify-content:space-between;padding:20px 24px}.header-title{align-items:center;color:#fff;display:flex;gap:12px}.header-title h2{font-size:20px;font-weight:600;margin:0}.player-management-content{background:#1e1e1e;flex:1 1;overflow-y:auto;padding:24px}.add-player-section{background:#2a2a2a;border:1px solid #555;border-radius:8px;margin-bottom:24px;padding:20px}.add-player-section h3{border-bottom:1px solid #555;color:#fff;font-size:16px;font-weight:500;margin:0 0 16px;padding-bottom:8px}.add-player-form{display:flex;flex-direction:column;gap:16px}.form-group label{color:#ccc;font-size:13px;letter-spacing:.5px;text-transform:uppercase}.form-group input,.form-group select{background:#333;border:1px solid #555;border-radius:6px;color:#fff;padding:10px 12px;transition:all .2s ease}.form-group input:focus,.form-group select:focus{border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.form-group input.error{border-color:#dc3545}.error-message{color:#dc3545;font-size:12px;margin-top:-2px}.add-player-btn{align-items:center;align-self:flex-start;display:flex;font-weight:500;gap:8px;padding:10px 20px}.filter-section{align-items:center;display:flex;gap:16px;margin-bottom:24px}.search-box{background:#2a2a2a;border:1px solid #555;border-radius:6px;color:#ccc;flex:1 1;gap:8px;padding:10px 12px}.search-box input{flex:1 1;font-size:14px;outline:none}.search-box input::placeholder{color:#888}.team-filter{align-items:center;display:flex;gap:8px}.team-filter label{color:#ccc;font-size:13px;white-space:nowrap}.team-filter select{background:#2a2a2a;border:1px solid #555;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:10px 12px}.players-section{background:#2a2a2a;border:1px solid #555;border-radius:8px;padding:20px}.players-section h3{border-bottom:1px solid #555;color:#fff;font-size:16px;font-weight:500;margin:0 0 16px;padding-bottom:8px}.team-roster{background:#1e1e1e;border:1px solid #555}.team-roster:last-child{margin-bottom:0}.team-roster-header{background:#333;border-bottom:1px solid #555}.team-roster-header h4{color:#fff;flex:1 1}.player-count{color:#888;font-size:13px;font-weight:400}.players-list{padding:12px}.player-item{background:#2a2a2a;border:1px solid #555;transition:all .2s ease}.player-item:hover{background:#333;border-color:#666}.player-number{border:2px solid #fff3;height:40px;width:40px}.player-details{min-width:0}.player-name{color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-position{color:#888}.player-actions{flex-shrink:0}.player-edit-form input{background:#333;border:1px solid #06c;color:#fff;outline:none;padding:8px 10px}.player-edit-form input:focus{border-color:#08f;box-shadow:0 0 0 2px #06c3}.player-edit-form input:first-child{min-width:0}.player-edit-form input:nth-child(2){flex-shrink:0;width:70px}.player-edit-form input:nth-child(3){min-width:0}.btn-done{align-items:center;background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:32px;justify-content:center;transition:background .2s ease;width:32px}.btn-done:hover{background:#218838}.btn-icon{color:#ccc;padding:8px}.btn-icon:hover{background:#ffffff1a}.btn-icon.btn-danger:hover{color:#ff4d5a}.empty-state{font-size:14px;padding:24px}.empty-state-main{color:#888;font-size:16px;font-style:italic;padding:48px 24px;text-align:center}.player-management-footer{align-items:center;background:#333;border-top:1px solid #555;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.btn{white-space:nowrap}.btn-primary:disabled{background:#555;color:#888;cursor:not-allowed}.btn-secondary{background:#555}.btn-secondary:hover{background:#666}@media (max-width:768px){.player-management-modal{height:90vh;width:95vw}.form-row{flex-direction:column;gap:12px}.filter-section{align-items:stretch;flex-direction:column}.team-filter{justify-content:space-between}.player-info{flex-wrap:wrap}.player-actions{justify-content:flex-end;width:100%}.player-edit-form{flex-wrap:wrap}.player-edit-form input{min-width:0}.player-edit-form input:first-child,.player-edit-form input:nth-child(3){flex:1 1 100%}.player-edit-form input:nth-child(2){flex:1 1}}@media (max-width:480px){.player-management-modal{border-radius:0;height:100vh;width:100vw}.add-player-section,.player-management-content,.players-section{padding:16px}.player-number{font-size:13px;height:36px;width:36px}}.player-management-content::-webkit-scrollbar,.players-list::-webkit-scrollbar{width:8px}.player-management-content::-webkit-scrollbar-track,.players-list::-webkit-scrollbar-track{background:#1e1e1e}.player-management-content::-webkit-scrollbar-thumb,.players-list::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.player-management-content::-webkit-scrollbar-thumb:hover,.players-list::-webkit-scrollbar-thumb:hover{background:#666}.tooltip-container{display:inline-flex;position:relative}.tooltip-content{animation:tooltipFadeIn .15s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000e6;border:1px solid #ffffff1a;border-radius:4px;box-shadow:0 4px 12px #0000004d;color:#fff;font-size:12px;font-weight:500;padding:6px 10px;pointer-events:none;position:absolute;white-space:nowrap;z-index:10000}.tooltip-content:before{content:"";height:0;position:absolute;width:0}.tooltip-content[style*="margin-top: 8px"]:before,.tooltip-content[style*="top: 100%"]:before{border-bottom:6px solid #000000e6;border-left:6px solid #0000;border-right:6px solid #0000;bottom:100%;left:50%;transform:translateX(-50%)}.tooltip-content[style*="bottom: 100%"]:before,.tooltip-content[style*="margin-bottom: 8px"]:before{border-left:6px solid #0000;border-right:6px solid #0000;border-top:6px solid #000000e6;left:50%;top:100%;transform:translateX(-50%)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateX(-50%) translateY(-4px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.video-player-container{align-items:center;background:#000;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;width:100%}.video-element{display:block;height:auto;max-height:100%;max-width:100%;width:auto}.zoom-controls{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9;border:1px solid #ffffff1a;border-radius:10px;bottom:16px;box-shadow:0 4px 16px #0006;gap:6px;padding:10px 14px;position:absolute;right:16px;z-index:20}.zoom-level{border-right:1px solid #fff3;font-family:SF Mono,Monaco,Consolas,monospace;letter-spacing:.5px;margin-right:6px;min-width:45px;padding:0 6px}.zoom-btn{background:#ffffff1f;border:1px solid #ffffff1a;height:36px;width:36px}.zoom-btn:hover:not(:disabled){background:#ffffff40;border-color:#fff3;box-shadow:0 2px 8px #ffffff26;transform:scale(1.08)}.zoom-btn:active:not(:disabled){background:#ffffff4d;transform:scale(.96)}.zoom-btn:disabled{background:#ffffff0d;border-color:#ffffff0d;opacity:.3}.video-player-placeholder{align-items:center;background:#111;display:flex;height:100%;justify-content:center;width:100%}.placeholder-content{color:#666;padding:48px;text-align:center}.placeholder-icon{font-size:64px;margin-bottom:24px;opacity:.5}.placeholder-content h3{color:#888;font-size:18px;font-weight:500;margin-bottom:12px}.placeholder-content p{font-size:14px;opacity:.8}.video-controls-overlay{align-items:center;background:#000c;border-radius:8px;bottom:16px;display:flex;gap:12px;left:16px;opacity:0;padding:12px;position:absolute;right:16px;transition:opacity .3s ease}.video-player-container:hover .video-controls-overlay{opacity:1}.video-time-display{color:#fff;font-family:SF Mono,Monaco,Consolas,monospace;font-size:14px;min-width:140px}.zoom-indicator{right:16px}.pan-indicator,.zoom-indicator{background:#000000b3;font-family:SF Mono,Monaco,Consolas,monospace;position:absolute;top:16px}.pan-indicator{border-radius:4px;color:#fff;font-size:12px;left:16px;padding:4px 8px}.video-loading{align-items:center;color:#888;display:flex;flex-direction:column;gap:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.video-loading-spinner{animation:spin 1s linear infinite;border:3px solid #333;border-radius:50%;border-top-color:#06c;height:40px;width:40px}.video-error{color:#ff6b6b;left:50%;padding:24px;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.video-error-icon{font-size:48px;margin-bottom:16px;opacity:.7}.video-error h3{font-weight:500;margin-bottom:8px}.video-error p{font-size:14px;opacity:.8}@media (max-width:768px){.video-controls-overlay{bottom:8px;left:8px;padding:8px;right:8px}.pan-indicator,.zoom-indicator{font-size:11px;padding:2px 6px;top:8px}.zoom-indicator{right:8px}.pan-indicator{left:8px}}*{-webkit-touch-callout:none!important;-webkit-context-menu:none!important;-moz-context-menu:none!important;-ms-context-menu:none!important;context-menu:none!important;-webkit-user-select:none!important}[contenteditable=true],input,textarea{-webkit-user-select:text!important;user-select:text!important}video{pointer-events:none!important}.video-player-container,video{-webkit-context-menu:none!important;-moz-context-menu:none!important;context-menu:none!important}.field-overlay,.video-player-container,body,video{-webkit-touch-callout:none!important;-webkit-user-select:none!important}body{-webkit-context-menu:none!important;-moz-context-menu:none!important;context-menu:none!important}video::-webkit-media-controls,video::-webkit-media-controls-panel{display:none!important}video::-webkit-media-controls-play-button,video::-webkit-media-controls-start-playback-button{display:none!important}video::-webkit-media-controls-fullscreen-button,video::-webkit-media-controls-mute-button{display:none!important}video::-webkit-media-controls-timeline,video::-webkit-media-controls-volume-slider{display:none!important}video::-webkit-media-controls-current-time-display,video::-webkit-media-controls-time-remaining-display{display:none!important}video::-webkit-media-controls-seek-back-button,video::-webkit-media-controls-seek-forward-button{display:none!important}video::-webkit-media-controls-return-to-realtime-button,video::-webkit-media-controls-rewind-button{display:none!important}video::-webkit-media-controls-toggle-closed-captions-button,video::-webkit-media-controls-volume-control-container{display:none!important}video::-webkit-media-controls-overlay-play-button,video::-webkit-media-controls-volume-control-hover-background{display:none!important}video::-webkit-media-controls-overlay-enclosure{display:none!important}video::-ms-media-controls{display:none!important}.field-overlay{bottom:0;cursor:grab;left:0;pointer-events:auto;position:absolute;right:0;top:0;z-index:10}@keyframes clickPulse{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(1.5)}}.position-connection-line{transition:all .5s ease-out}.position-connection-line.segment-0{animation:fadeIn .3s ease-in}.position-connection-line.segment-1{animation:fadeIn .5s ease-in}.position-connection-line.segment-2{animation:fadeIn .7s ease-in}.field-overlay.calibration-mode{cursor:crosshair}.field-overlay.dragging{cursor:grabbing!important}.calibration-field-guide{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9;border:1px solid #ffffff1a;border-radius:12px;bottom:20px;box-shadow:0 8px 32px #0006;left:20px;padding:16px;position:absolute;width:280px;z-index:35}.field-guide-svg{background:#0000004d;border-radius:6px;height:auto;width:100%}.field-guide-legend{border-top:1px solid #ffffff1a;display:flex;gap:16px;justify-content:center;margin-top:12px;padding-top:12px}.field-guide-legend .legend-item{align-items:center;color:#ccc;display:flex;font-size:11px;gap:6px}.field-guide-legend .legend-dot{border-radius:50%;height:10px;width:10px}.field-guide-legend .legend-dot.required{background:#f44}.field-guide-legend .legend-dot.optional{background:#48f}.field-guide-legend .legend-dot.completed{background:#22c55e}.calibration-instruction{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000e6;border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 8px 24px #0006;max-width:280px;position:absolute;right:16px;top:16px;z-index:30}.calibration-step{align-items:center;color:#888;font-size:12px;font-weight:600;gap:8px}.calibration-step .required-badge{background:#f44}.calibration-step .recommended-badge,.calibration-step .required-badge{border-radius:4px;color:#fff;font-size:9px;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.calibration-step .recommended-badge{background:#48f}.calibration-current-instruction{align-items:center;display:flex;font-size:18px;font-weight:600;gap:10px;margin-bottom:8px}.instruction-icon{font-size:24px}.calibration-hint{color:#888;font-size:12px;font-style:italic}.overlay-toolbar{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000c;border-radius:8px;padding:8px}.tool-group{border-right:1px solid #555;padding-right:8px}.tool-btn{background:#0000;border:none;border-radius:6px;color:#ccc;cursor:pointer;font-size:16px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.tool-btn:hover{background:#ffffff1a;color:#fff}.tool-btn.active{background:#06c;color:#fff}.event-type-selector{align-items:center;gap:8px}.event-type-select{background:#ffffff1a;border:1px solid #555;border-radius:4px;color:#fff;font-size:12px;min-width:100px;padding:6px 8px}.event-type-select:focus{border-color:#06c;outline:none}.zoom-indicator{background:#06cc;border-radius:4px;color:#fff;font-size:12px;font-weight:500;margin-left:8px;padding:4px 8px}.calibration-toolbar .calibration-info{align-items:center;color:#fff;display:flex;font-size:14px;font-weight:500;gap:12px}.calibration-toolbar .calibration-info span:first-child{color:#22c55e}.calibration-zoom-controls{border-radius:8px;gap:8px;margin-left:12px;padding:6px 12px}.calibration-zoom-controls,.zoom-btn{align-items:center;background:#ffffff1a;display:flex}.zoom-btn{border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;height:32px;justify-content:center;transition:all .2s ease;width:32px}.zoom-btn:hover:not(:disabled){background:#fff3;border-color:#ffffff80;transform:scale(1.05)}.zoom-btn:active:not(:disabled){transform:scale(.95)}.zoom-btn:disabled{cursor:not-allowed;opacity:.4}.zoom-btn.reset-btn{background:#ff980033;border-color:#ff980066;height:28px;margin-left:4px;width:28px}.zoom-btn.reset-btn:hover:not(:disabled){background:#ff980066;border-color:#ff980099}.zoom-level{padding:0 4px}.pan-hint{align-items:center;background:#0000004d;border-radius:4px;color:#ffffffb3;display:flex;font-size:11px;gap:6px;margin-left:8px;padding:4px 10px}.pan-hint svg{opacity:.8}.calibration-toolbar{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9!important;border-radius:12px!important;box-shadow:0 4px 16px #0000004d;display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px!important}.pass-indicators{height:100%;left:0;top:0;width:100%;z-index:25}.pass-indicators,.pass-point{pointer-events:none;position:absolute}.pass-point{z-index:26}.pass-point.start-point .pass-point-inner{animation:passPulse 1.5s infinite;background:#4caf50;border:3px solid #fff;border-radius:50%;box-shadow:0 3px 8px #0006;height:16px;width:16px}@keyframes passPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.pass-instruction{animation:slideDown .3s ease-out;background:#4caf50f2;border-radius:8px;box-shadow:0 4px 12px #0000004d;color:#fff;font-size:14px;font-weight:500;left:50%;padding:12px 20px;position:absolute;text-align:center;top:50px;transform:translateX(-50%);z-index:30}.instruction-text{margin:0}.pass-toolbar .pass-info{align-items:center;color:#fff;display:flex;font-size:14px;font-weight:500;gap:12px}.pass-toolbar .pass-info span:first-child{color:#4caf50}.pass-step{color:#ccc;font-size:12px}.cancel-pass-btn{background:#f44336cc;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:11px;padding:4px 8px;transition:background-color .2s ease}.cancel-pass-btn:hover{background:#f44336}.calibration-point{animation:calibrationPulse 2s infinite;pointer-events:none;position:absolute;z-index:20}.calibration-point.required .calibration-point-inner{align-items:center;background:linear-gradient(135deg,#f44,#c00);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #ff444480,0 0 10px #ff44444d;display:flex;height:16px;justify-content:center;width:16px}.calibration-point.optional .calibration-point-inner{align-items:center;background:linear-gradient(135deg,#48f,#04c);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #4488ff80,0 0 8px #4488ff4d;display:flex;height:12px;justify-content:center;width:12px}.calibration-point.current .calibration-point-inner{animation:calibrationPulse 1s infinite;box-shadow:0 0 0 4px #fff6,0 2px 8px #0000004d}.point-number{color:#fff;font-size:9px;font-weight:700;text-shadow:0 1px 2px #00000080}@keyframes calibrationPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.calibration-point-inner{align-items:center;background:#f44;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000004d;display:flex;height:12px;justify-content:center;width:12px}.calibration-point-label{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000e6;box-shadow:0 2px 6px #0000004d;font-weight:500;padding:3px 6px}.event-marker{align-items:center;border:2px solid #fff;border-radius:50%;cursor:pointer;display:flex;height:16px;justify-content:center;position:absolute;transition:all .2s ease;width:16px;z-index:15}.event-marker:hover{box-shadow:0 2px 8px #0000004d;transform:scale(1.2)}.event-marker-text{color:#fff;font-size:8px;font-weight:700;text-shadow:0 1px 2px #00000080}.player-marker{background:#ffffffe6;box-shadow:0 2px 4px #0000004d}.player-marker.selected{box-shadow:0 0 0 3px #0066cc80}.player-number{color:#333}.overlay-backdrop{bottom:0;right:0;z-index:100}.event-menu{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#333;border:1px solid #555;box-shadow:0 4px 12px #00000080;min-width:200px;z-index:101}.event-menu-header{background:#2a2a2a;border-bottom:1px solid #555;color:#ccc;font-weight:500}.event-menu-grid{grid-gap:4px;gap:4px}.event-menu-item{background:#0000;border-left:3px solid;color:#fff;font-size:13px;padding:8px 12px;transition:background-color .2s ease}.event-menu-item:hover{background:#404040}.motion-trail{pointer-events:none;position:absolute;z-index:5}.trail-point{background:#fff9;border-radius:50%;height:4px;position:absolute;width:4px}@media (max-width:768px){.overlay-toolbar{left:8px;padding:6px;top:8px}.tool-btn{font-size:14px;height:32px;width:32px}.event-type-select{font-size:11px;min-width:80px;padding:4px 6px}.event-menu{min-width:180px}.event-menu-grid{grid-template-columns:1fr}.calibration-point-label{font-size:9px;padding:1px 4px}.calibration-field-guide{bottom:10px;left:10px;padding:12px;width:200px}.field-guide-legend{flex-wrap:wrap;gap:8px}.field-guide-legend .legend-item{font-size:9px}.calibration-instruction{max-width:200px;padding:12px;right:10px;top:10px}.calibration-current-instruction{font-size:14px}.instruction-icon{font-size:18px}.calibration-hint{font-size:10px}}.overlay-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000004d;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:999}.event-menu{animation:contextMenuAppear .15s ease-out;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;max-height:calc(100vh - 40px);max-width:360px;min-width:280px;overflow:hidden;position:fixed;transform-origin:top left;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;z-index:1000}.event-menu-content{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:8px;scrollbar-color:#0000004d #0000;scrollbar-width:thin}.event-menu-content::-webkit-scrollbar{width:8px}.event-menu-content::-webkit-scrollbar-track{background:#0000}.event-menu-content::-webkit-scrollbar-thumb{background:#0000004d;border-radius:4px}.event-menu-content::-webkit-scrollbar-thumb:hover{background:#00000080}.event-menu-group{margin-bottom:8px}.event-menu-group:last-child{margin-bottom:0}.event-menu-group-title{border-bottom:1px solid #eee;color:#666;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;padding:6px 8px 4px;text-transform:uppercase}.event-menu-group-items{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(2,1fr)}.event-icon{font-size:16px;text-align:center;width:20px}.event-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes contextMenuAppear{0%{opacity:0;transform:scale(.9) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes contextMenuAppearAbove{0%{opacity:0;transform:scale(.9) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.event-menu.menu-below{animation:contextMenuAppear .15s ease-out;transform-origin:top left}.event-menu.menu-above{animation:contextMenuAppearAbove .15s ease-out;transform-origin:bottom left}.event-menu-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:14px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.event-menu-grid{grid-gap:0;gap:0;grid-template-columns:repeat(2,1fr);padding:8px}.event-menu-item{align-items:center;background:none;border:none;border-left:3px solid #0000;border-radius:4px;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin:2px;padding:12px 16px;text-align:left;transition:all .15s ease}.event-menu-item:hover{background:#f8f9fa;border-left-color:inherit;box-shadow:0 2px 8px #0000001a;color:#000;transform:translateX(2px)}.event-menu-item:active{background:#e9ecef;transform:translateX(1px)}.event-menu-item .event-icon{flex-shrink:0}*{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,textarea{-webkit-user-select:text;user-select:text}.field-overlay,.field-overlay *{-webkit-context-menu:none!important;-moz-context-menu:none!important;context-menu:none!important}.field-overlay:after{background:#000000b3;border-radius:20px;color:#fff;content:"Right-click for events";font-size:12px;left:50%;opacity:0;padding:8px 16px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .3s ease;z-index:10}.field-overlay:hover:after{opacity:.8}.field-overlay.calibration-mode:after{display:none}@media (max-width:768px){.event-menu{max-width:90vw;min-width:280px}.event-menu-grid{grid-template-columns:1fr}.event-menu-item{font-size:16px;padding:16px 20px}.field-overlay{-webkit-touch-callout:none;touch-action:none;-webkit-user-select:none}}@media (prefers-color-scheme:dark){.event-menu{background:#2d3748;border-color:#4a5568;color:#fff}.event-menu-header{background:linear-gradient(135deg,#4a5568,#2d3748)}.event-menu-item{color:#e2e8f0}.event-menu-item:hover{background:#4a5568;color:#fff}.event-menu-item:active{background:#2d3748}}.position-tracking-info{background:#00bcd41a;border:1px solid #00bcd4;border-radius:4px;color:#00bcd4;font-size:12px;font-weight:500;margin-top:8px;padding:6px 10px}.selected-player-info{color:#00bcd4}.no-player-warning,.selected-player-info{display:block;font-weight:600;margin-top:4px}.no-player-warning{animation:pulse 2s infinite;color:#ff5722}.player-distance-info{background:#4caf501a;border:1px solid #4caf50;border-radius:4px;font-size:11px;padding:4px 8px}.distance-label{align-items:center;color:#4caf50;display:flex;font-weight:600;gap:4px}.event-marker.position-marker{animation:positionPing 2s infinite;box-shadow:0 0 8px #00bcd499}@keyframes positionPing{0%{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.player-marker.tracking-active{animation:trackingActive 1.5s infinite;border:3px solid #00bcd4!important;box-shadow:0 0 12px #00bcd4cc}@keyframes trackingActive{0%,to{box-shadow:0 0 12px #00bcd4cc;transform:scale(1)}50%{box-shadow:0 0 20px #00bcd4;transform:scale(1.1)}}.overlay-toolbar{align-items:flex-start;flex-wrap:wrap}.event-type-selector{display:flex;flex-direction:column;gap:4px}.position-tracking-help{background:#000c;border-radius:8px;color:#fff;font-size:12px;left:16px;max-width:250px;padding:12px;position:absolute;top:80px;z-index:25}.position-tracking-help h4{color:#00bcd4;font-size:14px;margin:0 0 8px}.position-tracking-help ul{margin:0;padding-left:16px}.position-tracking-help li{margin-bottom:4px}@media (max-width:768px){.position-tracking-info{font-size:10px;padding:4px 6px}.player-distance-info{font-size:9px;padding:2px 4px}.overlay-toolbar{align-items:flex-start;flex-direction:column}.position-tracking-help{font-size:10px;left:8px;max-width:200px;top:60px}}.player-selection-group{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffffa;border:1px solid #ddd;border-radius:12px;box-shadow:0 4px 20px #0003;max-width:350px;position:fixed;right:16px;top:80px;transition:all .3s ease;width:320px;z-index:50}.player-selection-group.collapsed{background:#007bfff2;border-radius:8px;box-shadow:0 2px 12px #0003;max-width:40px;min-width:40px;width:40px}.player-panel-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px;-webkit-user-select:none;user-select:none}.player-selection-group.collapsed .player-panel-header{flex-direction:column;gap:8px;height:100%;justify-content:center;min-height:120px;padding:10px 8px}.player-selection-group.collapsed .panel-title{color:#fff;font-size:11px;text-orientation:mixed;transform:rotate(180deg);writing-mode:vertical-rl}.player-selection-group.collapsed .panel-title svg{color:#fff}.player-selection-group.collapsed .collapsed-info{display:none}.player-selection-group.collapsed .toggle-button{color:#fff;transform:rotate(0)}.panel-title{align-items:center;color:#333;display:flex;font-size:13px;font-weight:600;gap:8px}.panel-title svg{color:#666}.collapsed-info{color:#007bff;font-size:12px;font-weight:500;margin-left:4px}.toggle-button{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.toggle-button:hover{background:#0000000d;color:#333}.toggle-button:active{background:#0000001a}.player-panel-content{animation:slideDown .3s ease;padding:0 12px 12px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.selection-row{align-items:center;display:flex;gap:8px;margin-bottom:8px}.selection-row:last-child{margin-bottom:0}.selection-label{color:#333;font-size:12px;font-weight:600;min-width:50px}.player-select,.team-select{background:#fff;border:1px solid #ccc;border-radius:4px;color:#333;flex:1 1;font-size:12px;min-width:120px;padding:6px 8px}.player-select:focus,.team-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.player-select:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.selected-player-info{background:#00bcd41a;border:1px solid #00bcd44d;border-radius:6px;margin-top:8px;padding:8px}.player-session-header{justify-content:space-between;margin-bottom:6px}.player-session-header,.player-stats{align-items:center;display:flex;gap:8px}.player-badge{align-items:center;color:#00bcd4;display:flex;flex:1 1;font-size:12px;font-weight:600;gap:4px}.finish-player-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:10px;font-weight:600;padding:4px 8px;transition:background-color .2s}.finish-player-btn:hover{background:#218838}.stats-player-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:4px;box-shadow:0 2px 4px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:10px;font-weight:600;gap:4px;padding:4px 10px;transition:all .2s ease}.stats-player-btn:hover{background:linear-gradient(135deg,#5a6fd6,#6a4190);box-shadow:0 4px 8px #667eea66;transform:translateY(-1px)}.stats-player-btn svg{flex-shrink:0}.events-count{align-items:center;background:#00bcd440;border:1px solid #00bcd466;border-radius:12px;color:#fff;display:flex;font-size:11px;font-weight:600;gap:4px;padding:4px 8px}.player-selection-notice{background:#ffc107f2;border:2px solid #ffc107;border-radius:8px;bottom:40px;box-shadow:0 4px 12px #00000026;left:50%;max-width:300px;padding:12px 16px;position:absolute;text-align:center;transform:translateX(-50%);z-index:100}.notice-icon{font-size:24px;margin-bottom:8px}.notice-text{color:#856404}.notice-text strong{display:block;font-size:14px;margin-bottom:4px}.notice-text p{font-size:12px;line-height:1.4;margin:4px 0}.distance-badge{align-items:center;background:#4caf5040;border:1px solid #4caf5066;border-radius:12px;color:#fff;display:flex;font-size:11px;font-weight:600;gap:4px;padding:4px 8px}.overlay-toolbar{display:flex;flex-direction:column;gap:8px;left:16px;max-width:300px;position:absolute;top:16px;z-index:20}.tool-group{gap:4px;padding:4px}.event-type-selector,.tool-group{background:#fffffff2;border:1px solid #ddd;border-radius:6px}.event-type-selector{padding:8px}.player-selection-hint{background:#000c;border-radius:6px;color:#fff;font-size:11px;max-width:200px;padding:8px 12px;position:absolute;right:16px;top:16px;z-index:19}.player-selection-hint h5{color:#00bcd4;font-size:12px;margin:0 0 4px}.player-selection-hint ul{margin:0;padding-left:12px}.player-selection-hint li{margin-bottom:2px}.player-marker:hover{box-shadow:0 0 12px #0000004d;transform:scale(1.1)}.player-marker.selected{animation:selectedPulse 2s infinite;border-width:3px!important;box-shadow:0 0 16px #007bff99;transform:scale(1.1)}@keyframes selectedPulse{0%,to{box-shadow:0 0 16px #007bff99}50%{box-shadow:0 0 24px #007bffe6}}.no-player-selected-warning{animation:warningPulse 2s infinite;background:#ff5722f2;border-radius:8px;box-shadow:0 4px 16px #0000004d;color:#fff;left:50%;padding:16px 20px;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:25}.no-player-selected-warning h4{font-size:16px;margin:0 0 8px}.no-player-selected-warning p{font-size:14px;margin:0}@media (max-width:768px){.overlay-toolbar{left:8px;max-width:280px;top:8px}.player-selection-group{padding:8px}.selection-row{align-items:stretch;flex-direction:column;gap:4px;margin-bottom:6px}.selection-label{margin-bottom:2px;min-width:auto}.player-select,.team-select{min-width:auto;width:100%}.selected-player-info{align-items:stretch;flex-direction:column;gap:4px;text-align:center}.player-selection-hint{font-size:10px;max-width:150px;right:8px;top:8px}}.no-players-warning{align-items:center;background:#ff98001a;border:1px solid #ff9800;border-radius:6px;display:flex;gap:12px;margin-bottom:8px;padding:12px}.warning-icon{flex-shrink:0;font-size:20px}.warning-text{flex:1 1}.warning-text strong{color:#ff9800;display:block;font-size:13px;margin-bottom:4px}.warning-text p{color:#666;font-size:11px;line-height:1.3;margin:0}.player-marker{align-items:center;background:#fff;border:2px solid;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;transition:all .2s ease;width:24px;z-index:15}.player-marker:hover{box-shadow:0 4px 12px #0000004d;transform:scale(1.15);z-index:16}.player-marker .player-number{font-size:10px;font-weight:700;line-height:1}.player-marker:before{background:#ffffff4d;border-radius:50%;bottom:-2px;content:"";left:-2px;position:absolute;right:-2px;top:-2px;z-index:-1}.quick-add-player{align-items:center;background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:11px;gap:8px;margin-top:8px;padding:8px 12px;transition:background .2s;width:100%}.quick-add-player:hover{background:#0056b3}.quick-add-player:active{transform:translateY(1px)}.active-tracking{animation:activeTrackingPulse 2s infinite;background:linear-gradient(135deg,#00bcd4,#009688);padding:12px;text-align:center}@keyframes activeTrackingPulse{0%,to{box-shadow:0 4px 12px #00bcd44d;transform:scale(1)}50%{box-shadow:0 6px 20px #00bcd480;transform:scale(1.02)}}.active-tracking strong{display:block;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.tracking-details{margin-bottom:4px;opacity:.95}.tracking-instructions{font-style:italic;opacity:.85}.ready-to-track{background:#00bcd41a;border:1px solid #00bcd4;color:#00695c;font-size:12px;font-weight:500;padding:10px;text-align:center}.ready-to-track .tracking-instructions{color:#00838f;font-style:italic;margin-top:4px}.select-player-first{background:#ff98001a;border:1px solid #ff9800;border-radius:6px;color:#e65100;font-size:11px;font-weight:500;margin-top:8px;padding:8px;text-align:center}.field-overlay.position-tracking-active:after{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00bcd4e6;border-radius:20px;bottom:20px;box-shadow:0 4px 12px #0003;color:#fff;content:"Click to track position • " attr(data-player-name);font-size:12px;font-weight:500;left:50%;padding:8px 16px;pointer-events:none;position:absolute;transform:translateX(-50%);z-index:30}.event-marker.position-marker{animation:positionMarkerPulse 3s infinite;background:linear-gradient(135deg,#00bcd4,#009688)!important;box-shadow:0 0 12px #00bcd499,0 2px 4px #0003}@keyframes positionMarkerPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.15)}}.event-marker.position-marker .event-marker-text{color:#fff;font-weight:700;text-shadow:0 1px 2px #0000004d}.player-marker.being-tracked{animation:beingTracked 2s infinite;border-width:3px!important;box-shadow:0 0 16px #00bcd4cc,0 4px 8px #0003;z-index:20}@keyframes beingTracked{0%,to{box-shadow:0 0 16px #00bcd4cc,0 4px 8px #0003;transform:scale(1)}50%{box-shadow:0 0 24px #00bcd4,0 6px 12px #0000004d;transform:scale(1.1)}}.tracking-help-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000e6;border:1px solid #ffffff1a;border-radius:12px;color:#fff;left:50%;max-width:300px;padding:20px;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:35}.tracking-help-overlay h3{color:#00bcd4;font-size:16px;margin:0 0 12px}.tracking-help-overlay p{font-size:13px;line-height:1.4;margin:8px 0}.tracking-help-overlay .help-steps{margin:12px 0;text-align:left}.tracking-help-overlay .help-steps li{font-size:12px;margin:4px 0}.tracking-help-overlay button{background:#00bcd4;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;margin-top:12px;padding:8px 16px}.tracking-help-overlay button:hover{background:#0097a7}.calibration-required-warning{align-items:center;animation:calibrationWarningPulse 2s infinite;background:linear-gradient(135deg,#ff5722,#ff9800);border-radius:8px;color:#fff;display:flex;gap:12px;margin-bottom:8px;padding:12px}@keyframes calibrationWarningPulse{0%,to{box-shadow:0 4px 12px #ff57224d}50%{box-shadow:0 6px 20px #ff572280}}.calibration-required-warning .warning-icon{flex-shrink:0;font-size:24px}.calibration-required-warning .warning-text{flex:1 1}.calibration-required-warning .warning-text strong{color:#fff;display:block;font-size:14px;font-weight:700;margin-bottom:4px}.calibration-required-warning .warning-text p{font-size:12px;line-height:1.3;margin:0;opacity:.9}.tool-btn.disabled{background:#f5f5f5!important;border-color:#ddd!important;color:#999!important;cursor:not-allowed;opacity:.4}.tool-btn.disabled:hover{box-shadow:none;opacity:.4;transform:none}.field-overlay:not(.calibration-mode).not-calibrated{cursor:not-allowed!important}.field-overlay:not(.calibration-mode).not-calibrated:after{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ff5722f2;border:2px solid #fff3;border-radius:8px;box-shadow:0 8px 24px #0000004d;color:#fff;content:'🎯 Field calibration required - Click "Calibrate Field" button';font-size:14px;font-weight:600;left:50%;padding:16px 24px;pointer-events:none;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:30}.calibration-mode .calibration-info{background:linear-gradient(135deg,#4caf50,#2196f3);border-radius:8px;box-shadow:0 4px 12px #4caf504d;color:#fff;font-weight:600;padding:12px 16px;text-align:center}.calibration-mode .calibration-info span:first-child{font-size:14px;letter-spacing:.5px;text-transform:uppercase}.field-overlay:not(.calibration-mode).not-calibrated .player-marker{opacity:.3;pointer-events:none}.field-overlay:not(.calibration-mode).not-calibrated .position-tracking-info{opacity:.5;pointer-events:none}.calibration-instruction{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#4caf50f2;border:2px solid #fff3;border-radius:8px;color:#fff;padding:16px 20px;text-align:center}.calibration-step{font-size:16px;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.calibration-current-instruction{font-size:14px;line-height:1.4;opacity:.95}.calibration-point.current{animation:currentCalibrationPoint 1.5s infinite}@keyframes currentCalibrationPoint{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.calibration-point-label{background:#000c;border-radius:4px;color:#fff;font-size:10px;font-weight:600;left:50%;padding:2px 6px;pointer-events:none;position:absolute;top:14px;transform:translateX(-50%);white-space:nowrap}.calibration-point.current .calibration-point-label{animation:labelPulse 1.5s infinite;background:#ff9800}@keyframes labelPulse{0%,to{opacity:1}50%{opacity:.7}}.calibration-help-hint{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ff5722f2;border:2px solid #fff3;border-radius:8px;box-shadow:0 4px 16px #ff57224d;color:#fff;font-size:11px;max-width:220px;padding:12px 16px;position:absolute;right:16px;top:16px;z-index:25}.calibration-help-hint h5{color:#fff;font-size:12px;font-weight:600;margin:0 0 8px}.calibration-help-hint ul{margin:0;padding-left:12px}.calibration-help-hint li{line-height:1.3;margin-bottom:4px}.player-select:disabled,.team-select:disabled{background:#f5f5f5!important;border-color:#ddd!important;color:#999!important;cursor:not-allowed}.calibration-status-indicator{background:linear-gradient(135deg,#4caf50,#2196f3);border:2px solid #fff3;border-radius:6px;color:#fff;font-size:11px;font-weight:600;margin-bottom:8px;padding:8px 12px;text-align:center}.calibration-status-indicator.not-calibrated{animation:calibrationNeededPulse 2s infinite;background:linear-gradient(135deg,#ff5722,#ff9800)}@keyframes calibrationNeededPulse{0%,to{opacity:1}50%{opacity:.8}}.calibration-progress{background:#4caf501a;border:1px solid #4caf50;border-radius:6px;color:#2e7d32;font-size:11px;margin:8px 0;padding:8px 12px}.calibration-progress-bar{background:#e8f5e8;border-radius:2px;height:4px;margin:6px 0 4px;overflow:hidden}.calibration-progress-fill{background:linear-gradient(90deg,#4caf50,#2196f3);border-radius:2px;height:100%;transition:width .3s ease}.player-marker.tracking-active{animation:trackingPulse 2s infinite;border-style:solid!important;border-width:3px!important;position:relative;z-index:15}@keyframes trackingPulse{0%,to{box-shadow:0 0 20px #00bcd4,0 0 40px #00bcd44d;transform:scale(1)}50%{box-shadow:0 0 30px #00bcd4,0 0 60px #00bcd480;transform:scale(1.1)}}.tracking-indicator{align-items:center;background:#00bcd4;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #0000004d;color:#fff;display:flex;font-size:8px;height:16px;justify-content:center;position:absolute;right:-8px;top:-8px;width:16px}.tracking-pulse{animation:pulse 1s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.active-tracking{animation:trackingInfoPulse 3s infinite;background:linear-gradient(135deg,#00bcd4,#0097a7);border:2px solid #fff3;border-radius:8px;box-shadow:0 4px 12px #00bcd44d;color:#fff;margin-top:8px;padding:12px 16px}@keyframes trackingInfoPulse{0%,to{background:linear-gradient(135deg,#00bcd4,#0097a7);box-shadow:0 4px 12px #00bcd44d}50%{background:linear-gradient(135deg,#00e676,#00bcd4);box-shadow:0 4px 16px #00e67666}}.tracking-details{font-weight:600;gap:8px;margin:4px 0}.tracking-details,.tracking-stats{align-items:center;display:flex;font-size:12px}.tracking-stats{background:#ffffff26;border-radius:6px;justify-content:space-between;margin:6px 0;padding:6px 10px}.tracking-stats strong{color:#e0f7fa;font-weight:700}.tracking-instructions{background:#0003;border-radius:4px;font-size:10px;line-height:1.3;margin-top:6px;opacity:.9;padding:4px 8px}.ready-to-track{background:linear-gradient(135deg,#4caf50,#2e7d32);border:1px solid #fff3;border-radius:6px;color:#fff;margin-top:8px;padding:10px 14px}.ready-to-track .tracking-instructions{background:#00000026;border-radius:4px;font-size:10px;margin-top:6px;padding:4px 8px}.field-overlay.position-tracking-active{cursor:crosshair!important}.field-overlay.position-tracking-active:before{display:none}@keyframes trackingHintPulse{0%,to{background:#00bcd4f2;transform:translateX(-50%) scale(1)}50%{background:#00e676f2;transform:translateX(-50%) scale(1.02)}}.event-marker.position-marker{animation:positionMarkerGlow 2s infinite;background:#00bcd4!important;border:2px solid #fff;box-shadow:0 2px 8px #00bcd466}@keyframes positionMarkerGlow{0%,to{box-shadow:0 2px 8px #00bcd466}50%{box-shadow:0 4px 16px #00bcd4b3}}.event-marker.position-marker .event-marker-text{animation:none;font-size:12px}.tracking-session-summary{display:none}.tracking-session-header{align-items:center;display:flex;font-size:14px;font-weight:700;gap:8px;margin-bottom:8px}.tracking-session-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-top:8px}.tracking-stat{background:#ffffff26;border-radius:4px;padding:6px 8px;text-align:center}.tracking-stat-label{display:block;font-size:10px;opacity:.8}.tracking-stat-value{display:block;font-size:14px;font-weight:700;margin-top:2px}@media (max-width:768px){.active-tracking{font-size:11px;padding:8px 12px}.tracking-details{font-size:11px}.tracking-stats{font-size:10px;padding:4px 8px}.field-overlay.position-tracking-active:before{bottom:60px;font-size:10px;padding:6px 12px}.tracking-session-summary{left:12px;min-width:160px;padding:8px 12px;top:12px}}.tracking-controls{display:flex;justify-content:center;margin-top:12px}.stop-tracking-btn{background:linear-gradient(135deg,#ff5722,#d32f2f);border:2px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;font-size:11px;font-weight:600;padding:6px 12px;transition:all .2s ease}.stop-tracking-btn:hover{background:linear-gradient(135deg,#e64a19,#c62828);box-shadow:0 4px 12px #ff572266;transform:translateY(-1px)}.stop-tracking-btn:active{transform:translateY(0)}.tracking-session-player{background:#ffffff26;border-radius:6px;font-size:13px;margin:6px 0;padding:6px 10px;text-align:center}.tracking-session-time{background:#0003;border-radius:4px;font-size:10px;margin-top:8px;opacity:.8;padding:4px 8px;text-align:center}.position-sequence{align-items:center;background:#ff9800;border:1px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0000004d;color:#fff;display:flex;font-size:8px;font-weight:700;height:12px;justify-content:center;position:absolute;right:-6px;top:-6px;width:12px}.event-marker.position-marker:hover:after{background:#000000e6;border-radius:4px;bottom:24px;color:#fff;content:attr(data-coordinates);font-size:10px;left:50%;padding:4px 8px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:100}.field-overlay.position-tracking-active:after{display:none}.field-overlay.position-tracking-active{background:none;border:none}.tracking-session-coords{background:#ffffff1a;border-radius:4px;font-family:Courier New,monospace;font-size:11px;margin:4px 0;padding:4px 8px;text-align:center}.tracking-session-coords-label{display:block;font-size:9px;margin-bottom:2px;opacity:.8}.tool-mode-warning{animation:warningPulse 2s infinite;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#ff5722,#ff9800);border:2px solid #fff3;border-radius:12px;box-shadow:0 8px 24px #ff572266;color:#fff;left:50%;max-width:350px;padding:20px 24px;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:50}@keyframes warningPulse{0%,to{box-shadow:0 8px 24px #ff572266;transform:translate(-50%,-50%) scale(1)}50%{box-shadow:0 12px 32px #ff572299;transform:translate(-50%,-50%) scale(1.02)}}.tool-mode-warning h5{font-size:16px;font-weight:700;margin:0 0 12px}.tool-mode-warning p{font-size:14px;line-height:1.4;margin:0 0 16px;opacity:.95}.quick-switch-btn{background:#fff3;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:all .2s ease}.quick-switch-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.quick-switch-btn:active{transform:translateY(0)}.tool-btn{position:relative}.tool-btn.active:after{background:#4caf50;border:1px solid #fff;border-radius:4px;color:#fff;content:"ACTIVE";font-size:8px;font-weight:700;padding:2px 4px;position:absolute;right:-8px;top:-8px}.tool-btn:not(.active){opacity:.6}.tool-btn:not(.active):hover{opacity:.8}.tool-btn{align-items:center;display:flex;flex-direction:column;gap:4px;min-width:60px;padding:8px 6px}.tool-label{font-size:10px;font-weight:600;letter-spacing:.5px;opacity:.8;text-transform:uppercase}.tool-btn.active .tool-label{color:#2196f3;opacity:1}.tool-notification{animation:notificationPulse 1s infinite;background:#ff5722;border:1px solid #fff;border-radius:6px;color:#fff;font-size:8px;font-weight:700;letter-spacing:.3px;padding:2px 4px;position:absolute;right:-6px;text-transform:uppercase;top:-6px}@keyframes notificationPulse{0%,to{background:#ff5722;transform:scale(1)}50%{background:#ff9800;transform:scale(1.1)}}.tool-group{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;display:flex;gap:8px;padding:8px}.event-menu.event-menu-redesigned{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:480px;min-width:420px;overflow:hidden}.event-menu-redesigned .event-menu-header{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);border-bottom:none;color:#fff;display:flex;font-size:15px;font-weight:600;gap:8px;padding:14px 16px}.event-menu-redesigned .header-icon{font-size:18px}.event-menu-player-indicator{align-items:center;background:#00bcd41a;border-bottom:1px solid #00bcd433;color:#00838f;display:flex;font-size:13px;gap:8px;padding:8px 16px}.player-badge-icon{font-size:16px}.event-menu-player-indicator .player-name{font-weight:600}.event-menu-section{padding:12px}.event-menu-section.primary-events{background:#fff;border-bottom:1px solid #eee}.event-menu-section.secondary-events{background:#f8f9fa}.event-menu-section .section-title{color:#666;font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:10px;padding-left:4px;text-transform:uppercase}.event-menu-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.event-menu-item-new{align-items:center;background:#fff;border:1px solid #e0e0e0;border-left:4px solid #666;border-left:4px solid var(--event-color,#666);border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:13px;gap:10px;padding:12px 14px;position:relative;text-align:left;transition:all .2s ease}.event-menu-item-new:hover{background:#f5f5f5;border-color:#666;border-color:var(--event-color,#666);box-shadow:0 2px 8px #0000001a;transform:translateX(2px)}.event-menu-item-new:active{background:#eee;transform:translateX(1px)}.event-menu-item-new .event-icon{flex-shrink:0;font-size:18px;text-align:center;width:24px}.event-menu-item-new .event-label{flex:1 1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-menu-item-new.has-submenu .submenu-arrow{color:#999;font-size:10px;margin-left:auto}.event-menu-item-new.secondary-item{background:#f8f9fa;font-size:12px;padding:10px 12px}.event-menu-item-new.secondary-item:hover{background:#eee}.section-toggle{align-items:center;background:#0000;border:1px dashed #ccc;border-radius:6px;color:#666;cursor:pointer;display:flex;font-size:12px;gap:8px;padding:10px 12px;transition:all .2s ease;width:100%}.section-toggle:hover{background:#eee;border-color:#999;color:#333}.section-toggle .toggle-icon{align-items:center;color:#999;display:flex}.section-toggle .toggle-text{font-weight:500}.section-toggle .toggle-count{color:#999;font-size:11px}.secondary-grid{gap:4px;margin-top:10px}.pass-submenu{background:#fff;padding:16px}.pass-submenu-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.pass-submenu-title{color:#333;font-size:16px;font-weight:600}.pass-submenu-close{background:#0000;border:none;color:#999;cursor:pointer;font-size:24px;line-height:1;padding:0;transition:color .2s}.pass-submenu-close:hover{color:#333}.pass-submenu-section{margin-bottom:20px}.pass-outcome-label,.pass-quality-label{color:#555;font-size:13px;font-weight:600;margin-bottom:10px}.pass-quality-label .quality-value{color:#4caf50;font-size:18px;font-weight:700;margin-left:4px}.pass-quality-label .quality-description{color:#888;font-size:12px;font-weight:400}.pass-outcome-option,.pass-outcome-options{display:flex;gap:10px}.pass-outcome-option{align-items:center;background:#f8f9fa;border:2px solid #e0e0e0;border-radius:10px;cursor:pointer;flex:1 1;padding:14px 16px;transition:all .2s ease}.pass-outcome-option:hover{background:#f0f0f0;border-color:#ccc}.pass-outcome-option.selected{background:#e3f2fd;border-color:#4caf50}.pass-outcome-option input[type=radio]{display:none}.pass-outcome-option .option-icon{align-items:center;background:#fff;border:2px solid #ddd;border-radius:50%;display:flex;font-size:20px;height:28px;justify-content:center;width:28px}.pass-outcome-option.selected .option-icon{background:#4caf50;border-color:#4caf50;color:#fff}.pass-outcome-option:first-child.selected .option-icon{background:#4caf50}.pass-outcome-option:last-child.selected .option-icon{background:#f44336;border-color:#f44336}.pass-outcome-option:last-child.selected{background:#ffebee;border-color:#f44336}.pass-outcome-option .option-text{color:#333;font-size:13px;font-weight:500}.pass-quality-slider-container{align-items:center;display:flex;gap:12px;padding:0 4px}.slider-label-left,.slider-label-right{color:#999;font-size:14px;font-weight:700;text-align:center;width:20px}.pass-quality-slider{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#f44336,#ff9800,#ffeb3b,#8bc34a,#4caf50);border-radius:4px;flex:1 1;height:8px;outline:none}.pass-quality-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border:3px solid #333;border-radius:50%;box-shadow:0 2px 6px #0003;cursor:pointer;height:24px;-webkit-transition:transform .2s;transition:transform .2s;width:24px}.pass-quality-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.pass-quality-slider::-moz-range-thumb{background:#fff;border:3px solid #333;border-radius:50%;box-shadow:0 2px 6px #0003;cursor:pointer;height:24px;width:24px}.pass-quality-marks{display:flex;justify-content:space-between;padding:8px 32px}.quality-mark{align-items:center;background:#f0f0f0;border:2px solid #ddd;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:12px;font-weight:700;height:28px;justify-content:center;transition:all .2s ease;width:28px}.quality-mark:hover{background:#e0e0e0;border-color:#bbb}.quality-mark.active{background:#4caf50;border-color:#4caf50;color:#fff;transform:scale(1.1)}.pass-submit-btn{background:linear-gradient(135deg,#4caf50,#2e7d32);border:none;border-radius:8px;box-shadow:0 4px 12px #4caf504d;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px 20px;transition:all .2s ease;width:100%}.pass-submit-btn:hover{background:linear-gradient(135deg,#43a047,#1b5e20);box-shadow:0 6px 16px #4caf5066;transform:translateY(-1px)}.pass-submit-btn:active{transform:translateY(0)}@media (max-width:768px){.event-menu.event-menu-redesigned{max-width:95vw;min-width:280px}.event-menu-grid{grid-template-columns:1fr}.event-menu-item-new{padding:14px 16px}.pass-outcome-options{flex-direction:column}.pass-outcome-option{padding:12px 14px}}.stats-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.stats-modal{animation:slideUp .3s ease-out;background:linear-gradient(145deg,#1a1a1a,#121212);border-radius:20px;box-shadow:0 25px 50px #00000080,0 0 0 1px #ffffff1a;display:flex;flex-direction:column;max-height:90vh;max-width:1100px;overflow:hidden;width:90%}.stats-modal-header{align-items:center;background:linear-gradient(90deg,#ffffff0d,#0000);border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:24px 28px}.stats-player-info{align-items:center;display:flex;gap:16px}.stats-player-avatar{align-items:center;border-radius:50%;box-shadow:0 4px 12px #0000004d;color:#fff;display:flex;font-size:20px;font-weight:700;height:56px;justify-content:center;width:56px}.stats-player-details h2{color:#fff;font-size:22px;font-weight:600;margin:0 0 4px}.stats-team-name{color:#888;font-size:14px;margin-right:8px}.stats-position{background:#ffffff1a;border-radius:4px;color:#aaa;font-size:12px;padding:2px 8px}.stats-close-btn{align-items:center;background:#ffffff1a;border:none;border-radius:50%;color:#888;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.stats-close-btn:hover{background:#fff3;color:#fff}.stats-header-actions{align-items:center;display:flex;gap:12px}.stats-save-btn{align-items:center;background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:8px;box-shadow:0 2px 8px #4caf504d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 18px;transition:all .2s ease}.stats-save-btn:hover:not(:disabled){background:linear-gradient(135deg,#5cbf60,#4caf50);box-shadow:0 4px 12px #4caf5066;transform:translateY(-1px)}.stats-save-btn:active:not(:disabled){transform:translateY(0)}.stats-save-btn:disabled{cursor:not-allowed;opacity:.8}.stats-save-btn.saving{background:linear-gradient(135deg,#2196f3,#1976d2);box-shadow:0 2px 8px #2196f34d}.stats-save-btn.saved{background:linear-gradient(135deg,#00c49f,#00a080);box-shadow:0 2px 8px #00c49f4d}.stats-save-btn.error{background:linear-gradient(135deg,#f44336,#d32f2f);box-shadow:0 2px 8px #f443364d}.stats-save-btn .spin{animation:spin 1s linear infinite}.stats-tabs{background:#0000004d;border-bottom:1px solid #ffffff0d;display:flex;padding:0 24px}.stats-tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#666;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:-1px;padding:16px 20px;transition:all .2s ease}.stats-tab:hover{color:#aaa}.stats-tab.active{border-bottom-color:#00c49f;color:#00c49f}.stats-tab svg{opacity:.7}.stats-tab.active svg{opacity:1}.stats-content{flex:1 1;overflow-y:auto;padding:24px}.stats-content::-webkit-scrollbar{width:8px}.stats-content::-webkit-scrollbar-track{background:#0000}.stats-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.stats-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.stats-cards-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:28px}.stats-card{align-items:center;background:linear-gradient(145deg,#ffffff14,#ffffff08);border:1px solid #ffffff0d;border-radius:16px;display:flex;gap:14px;padding:20px;transition:all .2s ease}.stats-card:hover{border-color:#ffffff1a;transform:translateY(-2px)}.stats-card.highlight{background:linear-gradient(145deg,#00c49f26,#00c49f0d);border-color:#00c49f4d}.stats-card-icon{align-items:center;background:#ffffff1a;border-radius:12px;color:#00c49f;display:flex;height:44px;justify-content:center;width:44px}.stats-card-content{display:flex;flex-direction:column}.stats-card-value{color:#fff;font-size:24px;font-weight:700;line-height:1.2}.stats-card-label{color:#888;font-size:12px;margin-top:2px}.stats-insights{margin-bottom:28px}.stats-insights h3{color:#fff;font-size:16px;font-weight:600;margin:0 0 16px}.insights-list{display:flex;flex-direction:column;gap:10px}.insight-item{align-items:center;background:#ffffff0d;border-left:3px solid;border-radius:10px;display:flex;gap:12px;padding:14px 16px}.insight-item.insight-positive{background:#4caf501a;border-color:#4caf50}.insight-item.insight-improvement{background:#ff98001a;border-color:#ff9800}.insight-item.insight-info{background:#2196f31a;border-color:#2196f3}.insight-badge{background:#ffffff1a;border-radius:4px;color:#aaa;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase}.insight-text{color:#ddd;font-size:14px}.stats-chart-section{margin-bottom:28px}.stats-chart-section h3{color:#fff;font-size:16px;font-weight:600;margin:0 0 16px}.chart-container{background:#ffffff08;border:1px solid #ffffff0d;border-radius:16px;padding:20px}.stats-section{margin-bottom:28px}.stats-section h3{border-bottom:1px solid #ffffff1a;color:#fff;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:10px}.stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stats-item{background:#ffffff0d;border:1px solid #ffffff0d;border-radius:10px;display:flex;flex-direction:column;padding:14px 16px}.stats-label{color:#888;font-size:12px;margin-bottom:4px}.stats-value{color:#fff;font-size:18px;font-weight:600}.stats-value.highlight{color:#00c49f}.stats-value.positive{color:#4caf50}.stats-value.negative{color:#f44336}.stats-value.yellow{color:#ffc107}.stats-value.red{color:#f44336}.distance-breakdown{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.distance-zone{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:100px 1fr 70px}.zone-header{display:flex;flex-direction:column}.zone-name{font-size:13px;font-weight:600}.zone-range{color:#666;font-size:10px}.zone-bar-container{background:#ffffff1a;border-radius:12px;height:24px;overflow:hidden}.zone-bar{border-radius:12px;height:100%;min-width:4px;transition:width .5s ease}.zone-value{color:#aaa;font-size:13px;font-weight:500;text-align:right}.pass-accuracy-visual{align-items:center;background:#ffffff08;border-radius:16px;display:flex;gap:40px;margin-bottom:20px;padding:20px}.accuracy-circle{height:140px;position:relative;width:140px}.accuracy-circle svg{height:100%;transform:rotate(-90deg);width:100%}.accuracy-text{left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.accuracy-value{color:#00c49f;display:block;font-size:32px;font-weight:700}.accuracy-label{color:#888;font-size:12px}.pass-stats{display:flex;gap:32px}.pass-stat{align-items:center;display:flex;flex-direction:column}.pass-stat span{color:#fff;font-size:28px;font-weight:700}.pass-stat label{color:#888;font-size:12px;margin-top:4px}.zone-presence-visual{margin-bottom:24px}.field-zones{border-radius:12px;display:flex;height:80px;margin-bottom:16px;overflow:hidden}.zone{align-items:center;color:#fff;display:flex;flex:1 1;flex-direction:column;font-weight:600;justify-content:center;transition:all .3s ease}.zone span{font-size:20px}.zone label{font-size:11px;margin-top:2px;opacity:.8}.zone.defensive{background:linear-gradient(180deg,#f44336,#c62828)}.zone.middle{background:linear-gradient(180deg,#2196f3,#1565c0)}.zone.attacking{background:linear-gradient(180deg,#4caf50,#2e7d32)}.avg-position-visual{align-items:center;display:flex;flex-direction:column;gap:16px}.mini-field{aspect-ratio:105/68;background:linear-gradient(90deg,#f4433633,#f4433633 33.33%,#2196f333 0,#2196f333 66.66%,#4caf5033 0,#4caf5033);border:2px solid #fff3;max-width:400px;position:relative}.field-thirds{display:flex;height:100%}.field-thirds .third{border-right:1px dashed #fff3;flex:1 1}.field-thirds .third:last-child{border-right:none}.player-position-dot{align-items:center;background:#00c49f;border-radius:50%;box-shadow:0 0 0 3px #00c49f4d,0 4px 12px #0006;color:#fff;display:flex;font-size:12px;font-weight:700;height:32px;justify-content:center;position:absolute;transform:translate(-50%,-50%);width:32px}.position-coords{display:flex;gap:24px}.position-coords span{background:#ffffff0d;border-radius:6px;color:#888;font-size:14px;padding:6px 12px}@media (max-width:768px){.stats-modal{border-radius:16px;max-height:95vh;width:95%}.stats-modal-header{padding:16px 20px}.stats-player-avatar{font-size:16px;height:44px;width:44px}.stats-player-details h2{font-size:18px}.stats-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:0 12px}.stats-tab{font-size:12px;padding:12px 14px;white-space:nowrap}.stats-content{padding:16px}.stats-cards-grid{gap:10px;grid-template-columns:repeat(2,1fr)}.stats-card{padding:14px}.stats-card-value{font-size:20px}.stats-grid{grid-template-columns:repeat(2,1fr)}.pass-accuracy-visual{flex-direction:column;gap:20px}.accuracy-circle{height:120px;width:120px}.pass-stats{gap:20px}.distance-zone{grid-template-columns:80px 1fr 60px}}.recharts-tooltip-wrapper{outline:none}.recharts-default-tooltip{background:#1e1e1e!important;border:1px solid #444!important;border-radius:8px!important;box-shadow:0 4px 12px #0000004d!important}.recharts-tooltip-label{color:#fff!important;font-weight:600!important}.recharts-tooltip-item{color:#ccc!important}.recharts-legend-wrapper{padding-top:10px!important}.recharts-legend-item-text{color:#aaa!important;font-size:12px!important}.tactical-view-toggle{background:#ffffff0d;border-radius:12px;display:flex;gap:8px;margin-bottom:20px;padding:6px;width:-webkit-fit-content;width:fit-content}.toggle-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#888;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:10px 16px;transition:all .2s ease}.toggle-btn:hover{background:#ffffff0d;color:#ccc}.toggle-btn.active{background:linear-gradient(135deg,#00c49f,#00a080);box-shadow:0 2px 8px #00c49f4d;color:#fff}.toggle-btn svg{flex-shrink:0}.soccer-field-container{align-items:center;background:#0000004d;border:1px solid #ffffff1a;border-radius:16px;display:flex;justify-content:center;overflow:hidden;padding:16px}.soccer-field-svg{border-radius:8px;box-shadow:0 4px 20px #0000004d;height:auto;max-width:520px;width:100%}.no-data-message{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.no-data-message svg{margin-bottom:16px;opacity:.5}.no-data-message p{font-size:14px;margin:0}.heatmap-legend{align-items:center;color:#888;display:flex;font-size:12px;gap:12px;justify-content:center;margin-top:16px}.heatmap-gradient{background:linear-gradient(90deg,#00f9,#0ff9 20%,#0f09 40%,#ff09 60%,#ff800099 80%,#f009);border-radius:6px;height:12px;width:150px}.path-animation-container{display:flex;flex-direction:column;gap:12px}.animation-controls{background:#ffffff0d;border-radius:12px;flex-wrap:wrap;gap:10px;padding:12px 16px}.anim-btn,.animation-controls{align-items:center;display:flex}.anim-btn{background:#ffffff1a;border:none;border-radius:8px;color:#fff;cursor:pointer;gap:4px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.anim-btn:hover{background:#fff3;transform:scale(1.05)}.anim-btn.speed-btn{gap:6px;padding:0 12px;width:auto}.anim-btn.speed-btn span{font-size:11px;font-weight:600}.animation-progress{background:#ffffff1a;border-radius:3px;flex:1 1;height:6px;min-width:100px;overflow:hidden}.progress-bar{background:linear-gradient(90deg,#00c49f,#00a080);height:100%;transition:width .05s linear}.animation-counter{color:#888;font-size:12px;min-width:60px;text-align:right}.speed-legend{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:8px}.legend-item{color:#aaa}.legend-color{border-radius:3px;height:12px;width:12px}.zone-bars-horizontal{background:#ffffff08;border-radius:12px;display:flex;flex-direction:column;gap:16px;padding:16px}.zone-bar-row{align-items:center;display:flex;gap:12px}.zone-bar-row .zone-label{color:#ccc;font-size:13px;font-weight:500;width:80px}.zone-bar-track{background:#ffffff1a;border-radius:8px;flex:1 1;height:32px;overflow:hidden}.zone-bar-fill{align-items:center;color:#fff;display:flex;font-size:13px;font-weight:600;height:100%;justify-content:center;min-width:-webkit-fit-content;min-width:fit-content;padding:0 12px;transition:width .5s ease}.zone-bar-fill.attacking{background:linear-gradient(90deg,#4caf50,#2e7d32)}.zone-bar-fill.middle{background:linear-gradient(90deg,#2196f3,#1565c0)}.zone-bar-fill.defensive{background:linear-gradient(90deg,#f44336,#c62828)}.avg-position-container{align-items:center;background:#ffffff08;border-radius:16px;display:flex;flex-direction:column;gap:20px;padding:20px}.position-info{display:flex;gap:24px}.position-coord{align-items:center;background:#ffffff0d;border-radius:10px;display:flex;flex-direction:column;gap:4px;padding:12px 24px}.coord-label{color:#888;font-size:11px}.coord-value{color:#00c49f;font-size:18px;font-weight:600}@media (max-width:768px){.tactical-view-toggle{justify-content:center;width:100%}.toggle-btn{font-size:12px;padding:8px 12px}.animation-controls,.soccer-field-container{padding:10px}.anim-btn{height:32px;width:32px}.speed-legend{gap:8px}.legend-item{font-size:10px}.zone-bar-row .zone-label{font-size:11px;width:60px}.zone-bar-fill{font-size:11px;padding:0 8px}.position-info{flex-direction:column;gap:12px}}.clip-modal-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.clip-modal{background:#1a1a2e;border:1px solid #00d4ff4d;border-radius:12px;box-shadow:0 20px 60px #00000080;max-width:480px;width:90%}.clip-modal-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:16px 20px}.clip-modal-header h2{align-items:center;color:#fff;display:flex;font-size:18px;gap:8px;margin:0}.clip-modal-close{background:none;border:none;color:#888;cursor:pointer;padding:4px}.clip-modal-close:hover{color:#fff}.clip-modal-content{padding:20px}.clip-event-info{align-items:center;background:#ffffff0d;border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:12px}.clip-event-type{background:linear-gradient(135deg,#a855f7,#00d4ff);border-radius:20px;font-size:12px;font-weight:600;padding:4px 12px;text-transform:uppercase}.clip-event-player{color:#fff;font-weight:500}.clip-event-time{align-items:center;color:#888;display:flex;gap:4px;margin-left:auto}.clip-timing-section{margin-bottom:20px}.clip-timing-slider{margin-bottom:16px}.clip-timing-slider label{color:#aaa;display:block;font-size:14px;margin-bottom:8px}.clip-timing-slider input[type=range]{-webkit-appearance:none;background:#ffffff1a;border-radius:3px;height:6px;outline:none;width:100%}.clip-timing-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:linear-gradient(135deg,#a855f7,#00d4ff);border-radius:50%;cursor:pointer;height:18px;width:18px}.clip-summary{background:#ffffff0d;border-radius:8px;display:flex;gap:20px;margin-bottom:20px;padding:12px}.clip-summary-item{display:flex;flex-direction:column}.clip-summary-item span{color:#888;font-size:12px}.clip-summary-item strong{color:#00d4ff;font-size:16px}.clip-progress{margin-bottom:16px}.clip-progress-bar{background:#ffffff1a;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.clip-progress-fill{background:linear-gradient(90deg,#a855f7,#00d4ff);height:100%;transition:width .3s ease}.clip-progress-text{color:#aaa;font-size:13px}.clip-error{align-items:center;background:#ef444433;border:1px solid #ef444480;border-radius:8px;color:#ef4444}.clip-error,.clip-success{display:flex;font-size:14px;gap:8px;padding:12px}.clip-success{align-items:flex-start;background:#22c55e33;border:1px solid #22c55e80;border-radius:8px;color:#22c55e}.clip-saved-path{align-items:center;color:#888;display:flex;font-size:11px;gap:6px;margin-top:6px;word-break:break-all}.clip-modal-footer{border-top:1px solid #ffffff1a;display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.clip-btn-cancel{background:#0000;border:1px solid #fff3;border-radius:8px;color:#aaa;cursor:pointer;font-size:14px;padding:10px 20px}.clip-btn-cancel:hover:not(:disabled){background:#ffffff1a}.clip-btn-generate{align-items:center;background:linear-gradient(135deg,#a855f7,#00d4ff);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 24px}.clip-btn-generate:hover:not(:disabled){opacity:.9}.clip-btn-cancel:disabled,.clip-btn-generate:disabled{cursor:not-allowed;opacity:.5}.events-panel{background:#1a1a1a;display:flex;flex-direction:column;height:100%;position:relative;transition:all .3s ease}.events-panel.collapsed{background:#0066ccf2;border-radius:8px 0 0 8px;box-shadow:-2px 0 8px #0000004d;height:auto!important;max-width:40px!important;min-height:120px;min-width:40px!important;position:fixed;right:0;top:50%;transform:translateY(-50%);width:40px!important;z-index:100}.collapse-toggle{background:#2a2a2a;border:1px solid #444;border-radius:4px;color:#ccc;cursor:pointer;left:-12px;padding:8px 4px;position:absolute;top:50%;transform:translateY(-50%);transition:background .2s;z-index:10}.collapse-toggle:hover{background:#333;color:#fff}.events-panel.collapsed .collapse-toggle{align-items:center;background:#0000;border:none;color:#fff;display:flex;justify-content:center;left:auto;margin:10px auto;position:relative;top:auto;transform:none}.collapsed-panel-label{color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 0;text-align:center;text-orientation:mixed;transform:rotate(180deg);writing-mode:vertical-rl}.collapsed-event-count{background:#fff3;border-radius:4px;display:block;font-size:14px;font-weight:700;margin-top:8px;padding:4px}.events-header{align-items:center;background:#2a2a2a;border-bottom:1px solid #333;display:flex;justify-content:space-between;padding:16px}.events-header h3{color:#fff;font-size:16px;font-weight:500;margin:0}.events-controls{gap:8px}.events-controls,.search-box{align-items:center;display:flex}.search-box{background:#333;border-radius:4px;min-width:160px;padding:0 8px;position:relative}.search-box svg{color:#888;margin-right:6px}.search-box input{background:#0000;border:none;color:#fff;font-size:13px;padding:6px 0;width:100%}.search-box input:focus{outline:none}.search-box input::placeholder{color:#666}.filters-panel{background:#2a2a2a;border-bottom:1px solid #333;display:flex;flex-direction:column;gap:8px;padding:12px 16px}.filter-row{align-items:center;display:flex;gap:8px}.filter-row label{color:#ccc;font-size:12px;min-width:70px}.filter-row select{background:#333;border:1px solid #555;border-radius:3px;color:#fff;flex:1 1;font-size:12px;padding:4px 6px}.events-list{flex:1 1;overflow-y:auto;padding:8px}.event-item{background:#2a2a2a;border:1px solid #333;border-radius:6px;cursor:pointer;margin-bottom:8px;padding:12px;position:relative;transition:all .2s ease}.event-item:hover{background:#333;border-color:#555}.event-item.selected{background:#1a2332;border-color:#06c}.event-item.current{border-color:#22c55e;box-shadow:0 0 0 2px #22c55e33}.event-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.event-type-indicator{border-radius:2px;height:16px;margin-right:8px;width:4px}.event-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.event-type{color:#fff;font-size:13px;font-weight:500;text-transform:capitalize}.event-time{color:#888;font-family:SF Mono,Monaco,Consolas,monospace;font-size:11px}.event-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.event-item:hover .event-actions{opacity:1}.btn-warning{color:#ff9800!important}.btn-warning:hover{background:#ff98001a!important}.event-details{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.event-player{color:#ccc;font-size:12px}.event-player-to{color:#888;font-size:12px}.event-notes{background:#222;border-radius:3px;color:#aaa;font-size:12px;font-style:italic;margin-top:4px;padding:4px 8px}.event-edit-form{background:#333;border:1px solid #555;border-radius:6px;margin-bottom:8px;padding:12px}.form-row{align-items:center;gap:8px;margin-bottom:8px}.form-row label{color:#ccc;font-size:12px;min-width:50px}.form-row input,.form-row select,.form-row textarea{background:#444;border:1px solid #666;border-radius:3px;color:#fff;flex:1 1;font-size:12px;padding:4px 6px}.form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.form-actions .btn{font-size:12px;padding:4px 12px}.events-stats{background:linear-gradient(135deg,#1e1e1ef2,#141414f2);border-top:1px solid #ffffff1a;box-shadow:0 -4px 12px #0000004d;display:flex;flex-direction:column;gap:12px;padding:16px}.stat-row{display:flex;gap:8px;justify-content:space-around}.stat-item{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;flex:1 1;padding:10px 8px;text-align:center;transition:all .2s ease}.stat-item:hover{background:#ffffff14;border-color:#ffffff26;box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.stat-label{color:#fff9;display:block;font-size:10px;font-weight:500;letter-spacing:.8px;margin-bottom:4px;text-transform:uppercase}.stat-value{color:#fff;display:block;font-family:SF Mono,Monaco,Consolas,monospace;font-size:18px;font-weight:700}.events-list .empty-state{padding:32px 16px}.events-list .empty-icon{font-size:32px;margin-bottom:12px}@media (max-width:768px){.events-header{padding:12px}.search-box{min-width:120px}.events-list{padding:6px}.event-item{padding:10px}.events-stats{padding:10px 12px}.stat-item{font-size:12px}.stat-value{font-size:14px}}.stats-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.stats-header h4{color:#fff;font-size:14px;font-weight:700;letter-spacing:.5px;margin:0}.btn-toggle{background:#ffffff14;border:1px solid #ffffff26;border-radius:6px;box-shadow:0 2px 4px #0003;cursor:pointer;font-size:16px;padding:6px 12px;transition:all .2s ease}.btn-toggle:hover{background:#ffffff1f;border-color:#ffffff40;transform:scale(1.05)}.btn-toggle.active{background:linear-gradient(135deg,#007bff,#0056b3);border-color:#007bff;box-shadow:0 4px 8px #007bff66;color:#fff}.distance-panel{border-top:1px solid #e0e0e0;margin-top:16px;padding-top:16px}.distance-header{margin-bottom:12px}.distance-header h4{color:#333;font-size:14px;font-weight:600;margin:0 0 4px}.distance-instructions{color:#666;font-size:11px;font-style:italic}.no-distance-data{color:#666;padding:20px;text-align:center}.no-distance-data p{margin:8px 0}.instruction-text{background:#007bff1a;border-left:3px solid #007bff;border-radius:4px;font-size:11px;padding:8px}.distance-list{display:flex;flex-direction:column;gap:12px}.distance-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:12px}.player-distance-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.player-info{gap:8px}.player-number{font-size:10px;height:20px;width:20px}.player-name{font-size:13px}.team-indicator{border:1px solid #ffffff4d;border-radius:50%;height:12px;width:12px}.distance-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.distance-stats .stat{align-items:center;display:flex;flex-direction:column;text-align:center}.distance-stats .stat-label{color:#666;font-size:10px;margin-bottom:2px}.distance-stats .stat-value{color:#333;font-size:12px;font-weight:600}.event-item.position-event{background:#00bcd40d;border-left:3px solid #00bcd4}.event-item.position-event .event-type-indicator{background:#00bcd4!important}@media (max-width:768px){.distance-stats{gap:4px;grid-template-columns:1fr}.distance-stats .stat{background:#fff;border-radius:4px;flex-direction:row;justify-content:space-between;padding:4px 8px}.player-distance-header,.stat-row{flex-direction:column;gap:4px}.player-distance-header{align-items:flex-start}}.position-event-coordinates{background:#00bcd41a;border:1px solid #00bcd44d;border-radius:3px;color:#00695c;display:inline-block;font-family:Courier New,monospace;font-size:11px;font-weight:600;margin-left:8px;padding:2px 6px}.position-event-coordinates:before{content:"";margin-right:4px}.event-details .position-event-coordinates{display:block;margin-left:0;margin-top:4px;width:-webkit-fit-content;width:fit-content}.event-item[data-event-type=position]{border-left:3px solid #00bcd4}.event-item[data-event-type=position] .event-type-indicator{animation:positionIndicatorPulse 2s infinite}@keyframes positionIndicatorPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.event-meta{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px;margin-top:8px}.event-badge{align-items:center;border-radius:3px;display:inline-flex;font-size:10px;font-weight:500;letter-spacing:.3px;padding:2px 6px;text-transform:uppercase}.event-badge.outcome{background:#4caf5026;border:1px solid #4caf504d;color:#4caf50}.event-badge.body-part{background:#9c27b026;border:1px solid #9c27b04d;color:#9c27b0}.event-badge.xg{background:#ff980026;border:1px solid #ff98004d;color:#ff9800;font-family:SF Mono,Monaco,Consolas,monospace}.event-badge.phase{background:#2196f326;border:1px solid #2196f34d;color:#2196f3}.event-badge.possession{background:#ffffff14;border:1px solid #ffffff26;font-size:12px}.event-badge.possession.has-ball{background:#4caf5026;border-color:#4caf504d}.event-badge.possession.no-ball{background:#9e9e9e26;border-color:#9e9e9e4d;color:#9e9e9e}.event-edit-form .form-row label{min-width:100px}.event-edit-form input[type=number]{max-width:100px}.event-edit-form input,.event-edit-form select,.event-edit-form textarea{font-size:13px}.event-edit-form select option{background:#333;color:#fff}.event-clip-btn{align-items:center;background:linear-gradient(135deg,#a855f7,#00d4ff);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;padding:4px 8px}.event-clip-btn:hover{opacity:.8}.timeline-bar{align-items:center;background:#2a2a2a;border-top:1px solid #333;display:flex;gap:12px;height:56px;padding:0 12px}.timeline-bar.disabled{opacity:.5;pointer-events:none}.timeline-placeholder{color:#666;flex:1 1;font-size:14px;text-align:center}.timeline-controls-left,.timeline-controls-right{align-items:center;display:flex;gap:8px}.control-btn{align-items:center;background:#404040;border:none;border-radius:5px;color:#ccc;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.control-btn:hover{background:#505050;color:#fff}.control-btn:active{transform:scale(.95)}.control-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.play-btn{background:#06c;color:#fff;height:36px;width:36px}.play-btn:hover{background:#0052a3}.frame-btn{height:26px;width:26px}.timeline-center{flex:1 1;flex-direction:row;gap:12px;max-width:none}.time-display,.timeline-center{align-items:center;display:flex}.time-display{background:#0006;border:1px solid #ffffff1a;border-radius:4px;color:#ccc;font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;gap:6px;padding:4px 10px;white-space:nowrap}.current-time{color:#4caf50;font-size:13px;font-weight:600;text-shadow:0 0 8px #4caf5066}.time-separator{color:#888;font-weight:400}.duration{color:#ccc;font-weight:500}.timeline-container{cursor:pointer;flex:1 1;height:6px;min-width:200px;padding:8px 0;position:relative}.timeline-track{background:#404040;border-radius:3px;height:6px;overflow:hidden;position:relative}.timeline-progress{background:linear-gradient(90deg,#06c,#0080ff);border-radius:3px;height:100%;transition:width .1s ease}.timeline-thumb{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0000004d;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%);transition:left .1s ease;width:14px}.timeline-thumb:hover{transform:translate(-50%,-50%) scale(1.2)}.timeline-event{background:#22c55e;border-radius:1px;height:100%;position:absolute;top:0;width:2px;z-index:2}.timeline-event:hover{background:#16a34a;width:3px}.timeline-bookmark{background:#3b82f6;cursor:pointer;height:calc(100% + 8px);position:absolute;top:-4px;transition:all .2s ease;width:3px;z-index:4}.timeline-bookmark:before{border-left:5px solid #0000;border-right:5px solid #0000;border-top-color:inherit;border-top-style:solid;border-top-width:6px;content:"";height:0;left:50%;position:absolute;top:-6px;transform:translateX(-50%);width:0}.timeline-bookmark:hover{opacity:.8;width:5px}.frame-display{background:#0000004d;border-radius:4px;color:#aaa;font-family:SF Mono,Monaco,Consolas,monospace;font-size:11px;font-weight:500;padding:3px 8px;white-space:nowrap}.loop-region{height:100%;top:0;z-index:1}.loop-bracket,.loop-region{background:#f59e0b;pointer-events:none;position:absolute}.loop-bracket{height:calc(100% + 8px);top:-4px;width:3px;z-index:3}.loop-bracket-end:before,.loop-bracket-start:before{background:#f59e0b;content:"";height:3px;position:absolute;top:0;width:8px}.loop-bracket-start:before{left:0}.loop-bracket-end:before{right:0}.loop-bracket-end:after,.loop-bracket-start:after{background:#f59e0b;bottom:0;content:"";height:3px;position:absolute;width:8px}.loop-bracket-start:after{left:0}.loop-bracket-end:after{right:0}.loop-controls{align-items:center;display:flex;gap:3px}.loop-btn{background:#444;font-size:10px;font-weight:600;height:24px;width:24px}.loop-btn:hover{background:#555}.playback-rate-selector{align-items:center;display:flex}.playback-rate-select{background:#404040;border:1px solid #555;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;min-width:60px;padding:6px 8px}.playback-rate-select:focus{border-color:#06c;outline:none}.volume-controls{align-items:center;display:flex;gap:8px}.volume-slider{-webkit-appearance:none;background:#404040;border-radius:2px;cursor:pointer;height:4px;outline:none;width:80px}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0000004d;cursor:pointer;height:12px;width:12px}.volume-slider::-moz-range-thumb{background:#fff;border:none;border-radius:50%;box-shadow:0 1px 3px #0000004d;cursor:pointer;height:12px;width:12px}@media (max-width:768px){.timeline-bar{gap:8px;padding:0 8px}.timeline-controls-left,.timeline-controls-right{gap:4px}.control-btn{height:28px;width:28px}.play-btn{height:32px;width:32px}.frame-btn{height:22px;width:22px}.time-display{font-size:11px;padding:3px 6px}.volume-slider{width:50px}}@media (max-width:480px){.timeline-bar{gap:6px;height:48px;padding:0 6px}.frame-display,.loop-controls,.playback-rate-selector{display:none}.volume-controls{gap:4px}.volume-slider{width:40px}}.calibration-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2a2a2afa;border-left:1px solid #555;bottom:0;box-shadow:-4px 0 20px #00000080;display:flex;flex-direction:column;position:fixed;right:0;top:0;width:400px;z-index:1000}.calibration-modal{background:#0000;border:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.calibration-header{align-items:center;background:#333;border-bottom:1px solid #555;display:flex;justify-content:space-between;padding:20px 24px}.calibration-header h2{color:#fff;font-size:18px;font-weight:600;margin:0}.calibration-controls{align-items:center;display:flex;gap:8px}.calibration-content{display:flex;flex:1 1;flex-direction:column;gap:24px;overflow-y:auto;padding:24px}.calibration-progress{display:flex;flex-direction:column;gap:8px}.progress-bar{background:#404040;border-radius:4px;height:8px}.progress-fill{background:linear-gradient(90deg,#06c,#22c55e);border-radius:4px}.progress-text{color:#ccc;font-size:14px;text-align:center}.calibration-ready{color:#22c55e;font-weight:500}.current-instruction{background:#333;border:1px solid #555;border-radius:8px;padding:16px}.instruction-step{align-items:center;color:#888;display:flex;font-size:14px;gap:8px;margin-bottom:8px}.required-badge{background:#ef4444;border-radius:3px;color:#fff;font-size:10px;font-weight:500;padding:2px 6px;text-transform:uppercase}.instruction-text{color:#fff;font-size:16px;line-height:1.4}.calibration-points-list{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.point-item{align-items:center;background:#333;border:1px solid #555;border-radius:6px;display:flex;gap:12px;padding:12px;position:relative;transition:all .2s ease}.point-item.completed{background:#1a2e1a;border-color:#22c55e}.point-item.current{background:#1a2332;border-color:#06c;box-shadow:0 0 0 2px #06c3}.point-item.required{border-left:3px solid #ef4444}.point-item.recommended{border-left:3px solid #48f}.point-item.optional{border-left:3px solid #fa4}.point-indicator{align-items:center;background:#555;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:500;height:24px;justify-content:center;width:24px}.point-item.completed .point-indicator{background:#22c55e}.point-item.current .point-indicator{background:#06c}.point-name{color:#ccc;flex:1 1;font-size:14px;text-transform:capitalize}.point-item.completed .point-name{color:#fff}.required-tag{background:#ef4444}.recommended-tag,.required-tag{border-radius:3px;color:#fff;font-size:10px;font-weight:500;padding:2px 6px;text-transform:uppercase}.recommended-tag{background:#48f}.recommended-badge{background:#48f;border-radius:4px;color:#fff;font-size:9px;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.point-actions{align-items:center;display:flex;gap:4px;margin-left:auto}.btn-icon-small{border:1px solid #555;border-radius:4px;color:#ccc;padding:4px}.btn-icon-small:hover{background:#444;border-color:#777;color:#fff}.btn-icon-small:active{background:#555}.validation-errors{background:#ef44441a;border:1px solid #ef4444;border-radius:8px;padding:12px}.validation-header{align-items:center;color:#ef4444;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:8px}.validation-error{color:#fca5a5;font-size:13px;padding:4px 0 4px 24px}.mini-field{background:#333;border:1px solid #555;padding:16px}.mini-field-title{color:#fff;font-size:14px;font-weight:500;margin-bottom:12px;text-align:center}.mini-field-container{background:#1a1a1a;border-radius:6px;display:flex;justify-content:center;padding:16px}.field-svg{height:auto;max-width:300px;width:100%}.mini-field-legend{display:flex;gap:16px;justify-content:center;margin-top:12px}.legend-item{color:#ccc;font-size:12px}.legend-color{border-radius:50%;height:8px;width:8px}.legend-color.required{background:#f44}.legend-color.recommended{background:#48f}.legend-color.optional{background:#fa4}.calibration-footer{align-items:center;background:#333;border-top:1px solid #555;display:flex;gap:12px;justify-content:space-between;padding:16px 24px}.footer-center{display:flex;gap:8px}.calibration-footer .btn-icon.calibrated{background:#22c55e;border-color:#22c55e;color:#fff}.calibration-footer .btn-icon.calibrated:hover:not(:disabled){background:#16a34a;border-color:#16a34a}.calibration-modal-overlay.minimized{height:auto;min-height:80px}.minimized-content{background:#333;border-top:1px solid #555;padding:16px 24px}.minimized-info{display:flex;flex-direction:column;gap:4px}.minimized-step{color:#fff;font-size:14px;font-weight:500}.minimized-progress{color:#888;font-size:12px}@media (max-width:1024px){.calibration-modal-overlay{width:350px}}@media (max-width:768px){.calibration-modal-overlay{width:300px}.calibration-content,.calibration-footer,.calibration-header{padding:16px}.calibration-content{gap:16px}.calibration-points-list{grid-template-columns:1fr}.mini-field{display:none}}@media (max-width:480px){.calibration-modal-overlay{border-left:none;border-top:1px solid #555;bottom:0;height:60vh;left:0;right:auto;top:auto;width:100vw}.calibration-footer{flex-direction:column;gap:12px}.footer-left,.footer-right{flex:none}.footer-center{order:-1}}.field-setup{padding:16px}.field-setup-title{color:#fff;font-size:16px;font-weight:600;margin-bottom:8px}.field-setup-description{color:#ccc;font-size:13px;line-height:1.4;margin-bottom:16px}.field-setup-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.preset-btn{background:#444;border:1px solid #666;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:8px 12px;transition:all .2s}.preset-btn:hover{background:#555;border-color:#06c}.field-setup-inputs{display:flex;gap:16px;margin-bottom:16px}.field-input-group{display:flex;flex:1 1;flex-direction:column;gap:4px}.field-input-group label{color:#ccc;font-size:12px;font-weight:500}.field-input-group input{background:#2a2a2a;border:1px solid #666;border-radius:4px;box-sizing:border-box;color:#fff;font-size:14px;padding:10px 12px;width:100%}.field-input-group input:focus{border-color:#06c;box-shadow:0 0 0 2px #06c3;outline:none}.field-input-group input.invalid{border-color:#ef4444}.input-hint{color:#888;font-size:11px}.field-setup-error{align-items:center;background:#ef444426;border:1px solid #ef44444d;border-radius:4px;color:#ef4444;display:flex;font-size:12px;gap:6px;margin-bottom:16px;padding:8px 12px}.btn-confirm-dimensions{background:#06c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 16px;transition:all .2s;width:100%}.btn-confirm-dimensions:hover:not(:disabled){background:#05a}.btn-confirm-dimensions:disabled{cursor:not-allowed;opacity:.5}.current-field-dimensions{align-items:center;background:#444;border-radius:4px;color:#ccc;cursor:pointer;display:flex;font-size:13px;justify-content:space-between;margin-bottom:12px;padding:8px 12px;transition:all .2s}.current-field-dimensions:hover{background:#555;color:#fff}.current-field-dimensions svg{color:#ccc;opacity:.6}.current-field-dimensions:hover svg{color:#fff;opacity:1}.settings-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.settings-modal{background:#2a2a2a;border:1px solid #555;border-radius:12px;box-shadow:0 8px 32px #00000080;display:flex;flex-direction:column;height:80vh;max-height:700px;max-width:900px;overflow:hidden;width:90vw}.settings-header{align-items:center;background:#333;border-bottom:1px solid #555;display:flex;justify-content:space-between;padding:20px 24px}.settings-header h2{color:#fff;font-size:18px;font-weight:600;margin:0}.settings-content{display:flex;flex:1 1;min-height:0}.settings-tabs{background:#333;border-right:1px solid #555;overflow-y:auto;padding:16px 0;width:200px}.settings-tab{background:#0000;border:none;border-left:3px solid #0000;color:#ccc;cursor:pointer;display:block;font-size:14px;padding:12px 20px;text-align:left;transition:all .2s ease;width:100%}.settings-tab:hover{background:#404040;color:#fff}.settings-tab.active{background:#1a2332;border-left-color:#06c;color:#fff}.settings-panel{flex:1 1;overflow-y:auto;padding:24px}.settings-tab-content{display:flex;flex-direction:column;gap:24px}.settings-section{background:#333;border:1px solid #555;border-radius:8px;padding:20px}.settings-section h3{border-bottom:1px solid #555;color:#fff;font-size:16px;font-weight:500;margin:0 0 16px;padding-bottom:8px}.setting-item{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.setting-item:last-child{margin-bottom:0}.setting-item label{align-items:center;color:#ccc;cursor:pointer;display:flex;flex:1 1;font-size:14px;gap:8px}.setting-item input[type=checkbox]{accent-color:#06c;height:16px;width:16px}.setting-item input[type=number],.setting-item input[type=text],.setting-item select{background:#404040;border:1px solid #666;border-radius:4px;color:#fff;font-size:14px;padding:6px 8px;width:120px}.setting-item input[type=range]{accent-color:#06c;width:120px}.team-config{background:#404040;border:1px solid #666;border-radius:6px;margin-bottom:12px;padding:16px}.team-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.team-color-indicator{border:2px solid #fff;border-radius:50%;flex-shrink:0;height:20px;width:20px}.team-name-input{background:#555;border:1px solid #777;border-radius:4px;flex:1 1;font-size:14px;padding:6px 8px}.team-controls{align-items:center;display:flex;gap:8px}.team-controls label{color:#ccc;font-size:12px}.team-controls input[type=color]{border:none;border-radius:4px;cursor:pointer;height:24px;width:32px}.add-event-type{display:flex;gap:8px;margin-bottom:16px}.add-event-type input{background:#404040;border:1px solid #666;border-radius:4px;color:#fff;flex:1 1;font-size:14px;padding:8px 12px}.custom-event-types{display:flex;flex-direction:column;gap:8px}.custom-event-item{align-items:center;background:#404040;border:1px solid #666;border-radius:4px;display:flex;justify-content:space-between;padding:8px 12px}.custom-event-item span{color:#fff;font-size:14px}.hotkeys-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.hotkey-item{align-items:center;background:#404040;border:1px solid #666;border-radius:4px;display:flex;justify-content:space-between;padding:12px}.hotkey-item label{color:#ccc;font-size:13px;text-transform:capitalize}.hotkey-input{background:#555;border:1px solid #777;border-radius:4px;color:#fff;font-size:14px;font-weight:700;padding:4px 6px;text-align:center;text-transform:uppercase;width:40px}.hotkeys-help{background:#404040;border:1px solid #666;border-radius:6px;padding:16px}.hotkeys-help h4{color:#fff;font-size:14px;margin:0 0 12px}.hotkeys-help ul{color:#ccc;margin:0;padding-left:16px}.hotkeys-help li{font-size:13px;margin-bottom:6px}.dimensions-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px}.dimension-item{display:flex;flex-direction:column;gap:6px}.dimension-item label{color:#ccc;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.dimension-item input{background:#404040;border:1px solid #666;border-radius:4px;color:#fff;font-size:14px;padding:8px 10px}.field-presets{background:#404040;border:1px solid #666;border-radius:6px;padding:16px}.field-presets h4{color:#fff;font-size:14px;margin:0 0 12px}.field-presets button{margin-bottom:8px;margin-right:8px}.settings-footer{align-items:center;background:#333;border-top:1px solid #555;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}@media (max-width:768px){.settings-modal{height:85vh;width:95vw}.settings-content{flex-direction:column}.settings-tabs{border-bottom:1px solid #555;border-right:none;display:flex;height:auto;overflow-x:auto;padding:8px 0;width:100%}.settings-tab{border-bottom:3px solid #0000;border-left:none;flex-shrink:0;padding:8px 16px}.settings-tab.active{border-bottom-color:#06c;border-left:none}.settings-panel{padding:16px}.hotkeys-grid{grid-template-columns:1fr}.dimensions-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.settings-modal{border-radius:0;height:100vh;width:100vw}.setting-item{align-items:stretch;flex-direction:column;gap:8px}.setting-item input[type=number],.setting-item input[type=range],.setting-item input[type=text],.setting-item select{width:100%}.dimensions-grid{grid-template-columns:1fr}}.add-player-form{background:#0000000d;border-radius:8px;margin-bottom:24px;padding:16px}.settings-modal input[type=email],.settings-modal input[type=number],.settings-modal input[type=password],.settings-modal input[type=text],.settings-modal select,.settings-modal textarea{background:#fff!important;border:1px solid #ccc;color:#333!important}.settings-modal input[type=email]:focus,.settings-modal input[type=number]:focus,.settings-modal input[type=password]:focus,.settings-modal input[type=text]:focus,.settings-modal select:focus,.settings-modal textarea:focus{background:#fff!important;color:#333!important}.form-row{display:flex;gap:16px;margin-bottom:16px}.form-group{display:flex;flex:1 1;flex-direction:column;gap:6px}.form-group label{color:#333!important;font-size:14px;font-weight:500;margin-bottom:4px}.form-group input,.form-group select{background:#fff;border:1px solid #ccc;border-radius:4px;color:#333!important;font-size:14px;padding:8px 12px}.form-group input:focus,.form-group select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;color:#333!important;outline:none}.team-roster{border:1px solid #e0e0e0;border-radius:8px;margin-bottom:24px;overflow:hidden}.team-roster-header{align-items:center;background:#00000005;border-bottom:1px solid #e0e0e0;display:flex;gap:12px;padding:16px}.team-roster-header h4{font-size:16px;font-weight:600;margin:0}.player-count{color:#666;font-size:14px;margin-left:auto}.players-list{padding:16px}.player-item{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:6px;display:flex;margin-bottom:8px;padding:12px}.player-item:last-child{margin-bottom:0}.player-info{gap:12px;width:100%}.player-info,.player-number{align-items:center;display:flex}.player-number{background:#007bff;border-radius:50%;color:#fff;flex-shrink:0;font-size:14px;font-weight:700;height:32px;justify-content:center;width:32px}.player-details{flex:1 1}.player-name{color:#333;font-size:15px;font-weight:500;margin-bottom:2px}.player-position{color:#666;font-size:13px;font-style:italic}.player-actions,.player-edit-form{display:flex;gap:8px}.player-edit-form{align-items:center;width:100%}.player-edit-form input{background:#fff;border:1px solid #ccc;border-radius:4px;color:#333!important;font-size:14px;padding:6px 8px}.player-edit-form input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;color:#333!important;outline:none}.player-edit-form input:first-child{flex:2 1}.player-edit-form input:nth-child(2){width:60px}.player-edit-form input:nth-child(3){flex:1 1}.player-edit-form button{align-items:center;background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;width:28px}.player-edit-form button:hover{background:#218838}.btn-icon{background:none;color:#666;display:flex;padding:6px;transition:all .2s}.btn-icon:hover{background:#0000001a;color:#333}.btn-icon.btn-danger{color:#dc3545}.btn-icon.btn-danger:hover{background:#dc35451a;color:#c82333}@media (max-width:768px){.form-row{flex-direction:column;gap:12px}.player-info{flex-wrap:wrap;gap:8px}.player-actions{justify-content:flex-end;width:100%}.player-edit-form{flex-wrap:wrap;gap:8px}.player-edit-form input{min-width:120px}}.form-group input::placeholder,.player-edit-form input::placeholder,.settings-modal input::placeholder{color:#666!important;opacity:1}.team-roster-header h4{color:#333!important}.player-count{color:#666!important}.player-name{color:#333!important}.empty-state,.player-position{color:#666!important}.empty-state{font-style:italic;padding:20px}.onboarding-screen{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);bottom:0;display:flex;flex-direction:column;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:9999}.onboarding-header{background:#0003;border-bottom:1px solid #ffffff1a;padding:24px 32px;text-align:center;transition:all .3s ease}.onboarding-screen.calibration-mode .onboarding-header{align-items:center;display:flex;gap:16px;justify-content:flex-start;padding:8px 20px}.onboarding-screen.calibration-mode .onboarding-logo{margin-bottom:0}.onboarding-screen.calibration-mode .logo-icon{font-size:20px}.onboarding-screen.calibration-mode .logo-text{font-size:16px}.onboarding-screen.calibration-mode .onboarding-header h1{font-size:16px;margin:0}.onboarding-screen.calibration-mode .onboarding-header p{display:none}.onboarding-screen.calibration-mode .onboarding-progress{justify-content:flex-end;padding:8px 20px}.onboarding-screen.calibration-mode .progress-step{flex-direction:row;gap:6px}.onboarding-screen.calibration-mode .step-circle{font-size:11px;height:24px;width:24px}.onboarding-screen.calibration-mode .step-label{font-size:11px}.onboarding-screen.calibration-mode .progress-line{width:20px}.onboarding-logo{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:8px}.logo-icon{font-size:32px}.logo-text{color:#fff;font-size:24px;font-weight:700;letter-spacing:1px}.onboarding-header h1{color:#fff;font-size:28px;font-weight:600;margin:0 0 4px}.onboarding-header p{color:#fff9;font-size:14px;margin:0}.onboarding-progress{align-items:center;display:flex;gap:0;justify-content:center;padding:24px 32px}.progress-step{align-items:center;display:flex;flex-direction:column;gap:8px;opacity:.5;transition:all .3s ease}.progress-step.active,.progress-step.complete{opacity:1}.progress-step.clickable{cursor:pointer}.progress-step.clickable:hover .step-circle{transform:scale(1.1)}.step-circle{align-items:center;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:50%;color:#ffffff80;display:flex;font-size:16px;font-weight:600;height:40px;justify-content:center;transition:all .3s ease;width:40px}.progress-step.active .step-circle{background:#3b82f6;border-color:#3b82f6;box-shadow:0 0 20px #3b82f680;color:#fff}.progress-step.complete .step-circle{background:#10b981;border-color:#10b981;color:#fff}.step-label{color:#ffffff80;font-size:12px;font-weight:500;white-space:nowrap}.progress-step.active .step-label,.progress-step.complete .step-label{color:#fff}.progress-line{background:#fff3;height:2px;margin:0 8px 28px;transition:background .3s ease;width:80px}.progress-line.complete{background:#10b981}.onboarding-content{display:flex;flex:1 1;justify-content:center;overflow-y:auto;padding:24px 32px;transition:all .3s ease}.onboarding-screen.calibration-mode .onboarding-content{padding:8px 12px}.onboarding-screen.calibration-mode .step-content{max-width:100%}.step-content{max-width:900px;width:100%}.step-header{margin-bottom:32px;text-align:center}.step-header h2{color:#fff;font-size:24px;font-weight:600;margin:0 0 8px}.step-header p{color:#fff9;font-size:14px;margin:0}.onboarding-footer{align-items:center;background:#0003;border-top:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:16px 32px;transition:all .3s ease}.onboarding-screen.calibration-mode .onboarding-footer{padding:8px 20px}.onboarding-screen.calibration-mode .onboarding-footer .btn{font-size:13px;padding:8px 16px}.onboarding-screen.calibration-mode .step-indicator{font-size:12px}.step-indicator{color:#ffffff80;font-size:14px}.btn{border-radius:8px;gap:8px;padding:10px 20px}.btn-primary{background:#3b82f6}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-secondary{background:#ffffff1a;border:1px solid #fff3}.btn-secondary:hover:not(:disabled){background:#fff3}.btn-success{background:#10b981}.btn-success:hover:not(:disabled){background:#059669}.teams-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:24px}.team-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;overflow:hidden}.team-card-header{background:#0003;color:#fff9;font-size:12px;font-weight:600;letter-spacing:1px;padding:12px 16px}.team-card-content{padding:24px}.color-picker-section{margin-bottom:20px}.color-picker-section label,.team-name-section label{color:#fff9;display:block;font-size:12px;font-weight:500;margin-bottom:8px}.color-picker-large{border:none;border-radius:12px;cursor:pointer;height:60px;padding:0;width:60px}.color-picker-large::-webkit-color-swatch-wrapper{padding:0}.color-picker-large::-webkit-color-swatch{border:2px solid #fff3;border-radius:10px}.team-name-input{background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;color:#fff;font-size:16px;padding:12px 16px;width:100%}.team-name-input:focus{border-color:#3b82f6;outline:none}.team-name-input::placeholder{color:#ffffff4d}.step-hint{align-items:center;background:#3b82f61a;border:1px solid #3b82f633;border-radius:8px;color:#ffffffb3;display:flex;font-size:13px;gap:8px;padding:12px 16px}.hint-icon{font-size:16px}.team-tabs{display:flex;gap:12px;margin-bottom:20px}.team-tab{align-items:center;background:#ffffff0d;border:2px solid #0000;border-radius:8px;color:#ffffffb3;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;transition:all .2s ease}.team-tab:hover{background:#ffffff1a}.team-tab.active{background:rgba(var(--team-color),.1);color:#fff}.team-color-dot{border-radius:50%;height:12px;width:12px}.player-count{background:#0000004d;border-radius:12px;font-size:12px;padding:2px 8px}.players-table-container{background:#0003;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:16px;overflow:hidden}.players-table{border-collapse:collapse;width:100%}.players-table th{background:#0003;border-bottom:1px solid #ffffff1a;color:#ffffff80;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.players-table td{border-bottom:1px solid #ffffff0d;color:#fff;font-size:14px;padding:8px 16px}.players-table tr:last-child td{border-bottom:none}.col-number{width:60px}.col-position{width:150px}.col-actions{text-align:center;width:50px}.new-row td{background:#3b82f60d}.new-row input{background:#0000004d;border:1px solid #ffffff1a;border-radius:6px;color:#fff;font-size:14px;padding:8px 12px;width:100%}.new-row input:focus{border-color:#3b82f6;outline:none}.new-row input::placeholder{color:#ffffff4d}.btn-icon-small{align-items:center;background:#0000;border:none;border-radius:6px;color:#ffffff80;cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .2s ease;width:28px}.btn-icon-small:hover{background:#ef444433;color:#ef4444}.btn-icon-small.btn-add{background:#3b82f633;color:#3b82f6;font-size:18px;font-weight:600}.btn-icon-small.btn-add:hover:not(:disabled){background:#3b82f64d}.btn-icon-small.btn-add:disabled{cursor:not-allowed;opacity:.3}.table-hint{border-top:1px solid #ffffff0d;color:#fff6;font-size:12px;padding:12px 16px;text-align:center}.import-section{margin-bottom:20px}.btn-import{justify-content:center;padding:14px;width:100%}.player-summary{display:flex;gap:24px;justify-content:center}.team-summary{align-items:center;color:#ffffffb3;display:flex;font-size:14px;gap:8px}.calibration-step{display:flex;flex-direction:column;height:100%;max-width:100%!important;width:100%}.calibration-step .step-header{align-items:baseline!important;display:flex!important;flex-direction:row!important;flex-shrink:0;gap:16px!important;justify-content:flex-start!important;margin-bottom:8px!important;text-align:left!important}.calibration-step .step-header h2{font-size:15px!important;font-weight:600;margin:0!important;white-space:nowrap}.calibration-step .step-header p{color:#ffffff80!important;font-size:12px!important;margin:0!important}.calibration-step .step-header:after{background:#ffffff1a;content:"";flex:1 1;height:1px;margin-left:16px}.calibration-layout{display:flex;flex:1 1;flex-direction:row;gap:16px;min-height:0}.video-calibration-container{background:#000;border-radius:12px;display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}.video-wrapper{align-items:center;background:#000;cursor:crosshair;display:flex;flex:1 1;justify-content:center;min-height:0;position:relative}.calibration-video{height:100%;max-height:100%;max-width:100%;object-fit:contain;width:100%}.calibration-overlay{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.no-video-message{color:#ffffff80;flex:1 1;font-size:14px;text-align:center}.no-video-message,.video-controls{align-items:center;display:flex;justify-content:center}.video-controls{background:#00000080;flex-shrink:0;gap:8px;padding:12px}.btn-control{align-items:center;background:#ffffff1a;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.btn-control:hover{background:#fff3}.btn-control.btn-play{background:#3b82f6;height:50px;width:50px}.btn-control.btn-play:hover{background:#2563eb}.calibration-anleitung{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;width:420px}.anleitung-header{background:#0003;border-bottom:1px solid #ffffff1a;padding:12px 16px}.anleitung-header h3{color:#fff;font-size:14px;font-weight:600;margin:0 0 8px}.anleitung-progress{display:flex;flex-direction:column;gap:4px}.anleitung-progress .progress-bar{background:#ffffff1a;border-radius:3px;height:5px;margin-bottom:0;overflow:hidden}.anleitung-progress .progress-fill{background:#10b981;height:100%;transition:width .3s ease}.anleitung-progress>span{color:#fff9;font-size:11px}.anleitung-content{display:flex;flex-direction:column;gap:10px;padding:12px}.guide-steps-compact{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.guide-step-compact{align-items:center;background:#0003;border-radius:6px;color:#ffffff80;cursor:default;display:flex;font-size:11px;gap:6px;padding:6px 10px;transition:all .2s ease}.guide-step-compact:hover{background:#ffffff1a}.guide-step-compact.current{background:#3b82f640;border:1px solid #3b82f680;color:#fff}.guide-step-compact.complete{background:#10b98126;color:#10b981}.guide-step-compact.required{border-left:2px solid #ff5722}.guide-step-compact.recommended{border-left:2px solid #48f}.guide-step-compact.optional{border-left:2px solid #fa4}.guide-step-compact .guide-step-number{font-size:10px;height:20px;width:20px}.guide-step-short{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guide-step-compact .guide-step-actions{display:flex;gap:2px;margin-left:auto}.guide-step-compact .btn-icon-action{height:22px;width:22px}.field-reference-section{background:#0003;border-top:1px solid #ffffff1a;display:flex;flex:1 1;flex-direction:column;min-height:0;padding:12px}.field-reference-section h4{color:#fff;font-size:12px;font-weight:600;margin:0 0 8px;text-align:center}.field-reference-section .field-preview-large{align-items:center;display:flex;flex:1 1;justify-content:center;margin-bottom:8px}.mini-field-xl{height:auto;max-width:400px;min-height:180px;width:100%}@keyframes blink-point{0%,to{stroke-width:2;opacity:1}50%{stroke-width:3;opacity:.3}}@keyframes blink-point-slow{0%,to{stroke-width:1.5;opacity:.8}50%{stroke-width:2;opacity:.3}}.blink-point{animation:blink-point 1s ease-in-out infinite}.blink-point-slow{animation:blink-point-slow 1.5s ease-in-out infinite}.legend-inline{color:#fff9;display:flex;font-size:10px;gap:16px;justify-content:center}.legend-inline span{align-items:center;display:flex;gap:4px}.legend-inline .legend-dot{height:8px;width:8px}.guide-step-info{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.guide-step-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guide-step-actions{display:flex;gap:4px;margin-left:auto}.btn-icon-action{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#ffffffb3;cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.btn-icon-action:hover{background:#3b82f64d;border-color:#3b82f680;color:#fff}.btn-icon-action.btn-danger:hover{background:#ef44444d;border-color:#ef444480;color:#ef4444}.anleitung-footer{background:#0003;border-top:1px solid #ffffff1a;display:flex;flex-direction:column;gap:12px;padding:16px 20px}.calibration-helper{display:none}.field-preview-large{align-items:center;display:flex;flex:1 1;justify-content:center;margin-bottom:16px}.mini-field-large{background:#0000004d;border-radius:8px;height:auto;padding:12px;width:100%}.calibration-guide{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;flex-direction:column;flex-shrink:0;padding:20px;width:260px}.calibration-guide h3{color:#fff;font-size:16px;font-weight:600;margin:0 0 16px}.guide-steps{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.guide-step{align-items:center;background:#0003;border-radius:8px;color:#ffffff80;display:flex;font-size:14px;gap:12px;padding:10px 12px;transition:all .2s ease}.guide-step.current{background:#3b82f633;border:1px solid #3b82f666;color:#fff}.guide-step.complete{color:#10b981}.guide-step-number{align-items:center;background:#ffffff1a;border-radius:50%;display:flex;flex-shrink:0;font-size:13px;font-weight:600;height:28px;justify-content:center;width:28px}.guide-step.current .guide-step-number{background:#3b82f6;color:#fff}.guide-step.complete .guide-step-number{background:#10b981;color:#fff}.field-preview{margin-bottom:20px}.mini-field{background:#0000004d;border-radius:8px;height:auto;padding:8px;width:100%}.calibration-progress{margin-bottom:16px}.progress-bar{background:#ffffff1a;border-radius:3px;height:6px;margin-bottom:8px;overflow:hidden}.progress-fill{background:#10b981;height:100%;transition:width .3s ease}.calibration-progress span{color:#fff9;font-size:13px}.btn-reset{justify-content:center;margin-top:auto;width:100%}.calibration-zoom-footer{align-items:center;background:#000000b3;border:1px solid #fff3;border-radius:8px;bottom:16px;display:flex;gap:8px;left:50%;padding:8px 16px;position:fixed;transform:translateX(-50%);z-index:100}.calibration-zoom-footer .zoom-level{color:#fff;font-size:13px;font-weight:600;min-width:50px;text-align:center}.zoom-controls-center{background:#0000004d;border-radius:8px;padding:4px 12px}.zoom-controls,.zoom-controls-center{align-items:center;display:flex;gap:8px}.zoom-controls{border-left:1px solid #fff3;margin-left:16px;padding-left:16px}.zoom-level{color:#fff;font-size:13px;font-weight:600;min-width:50px;text-align:center}.btn-control.btn-zoom{height:36px;width:36px}.btn-control:disabled{cursor:not-allowed;opacity:.4}.zoom-hint{align-items:center;background:#000c;border-radius:6px;bottom:70px;color:#ffffffb3;display:flex;font-size:12px;gap:8px;left:50%;padding:8px 16px;pointer-events:none;position:absolute;transform:translateX(-50%)}.point-badge{border-radius:4px;font-size:10px;letter-spacing:.3px;margin-left:auto;padding:2px 6px;text-transform:uppercase}.point-badge.recommended{background:#4488ff4d;color:#48f}.point-badge.optional{background:#ffaa444d;color:#fa4}.guide-step.recommended{border-left:3px solid #48f}.guide-step.optional{border-left:3px solid #fa4}.guide-step.required{border-left:3px solid #ff5722}.optional-toggle{background:#0003;border-radius:8px;margin-bottom:16px;padding:10px 12px}.optional-toggle label{align-items:center;color:#ffffffb3;cursor:pointer;display:flex;font-size:13px;gap:10px}.optional-toggle input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;height:18px;width:18px}.legend{background:#0003;border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:10px 12px}.legend-item{align-items:center;color:#fff9;display:flex;font-size:11px;gap:6px}.legend-dot{border-radius:50%;height:12px;width:12px}.legend-dot.required{background:#ff5722}.legend-dot.recommended{background:#48f}.legend-dot.optional{background:#fa4}.extra-points{background:#48f3;border-radius:10px;color:#48f;display:inline-block;font-size:11px;margin-left:8px;padding:2px 8px}.guide-steps{overflow-y:auto;padding-right:4px}.guide-steps::-webkit-scrollbar{width:4px}.guide-steps::-webkit-scrollbar-track{background:#ffffff0d;border-radius:2px}.guide-steps::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.anleitung-content::-webkit-scrollbar{width:4px}.anleitung-content::-webkit-scrollbar-track{background:#ffffff0d;border-radius:2px}.anleitung-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.summary-cards{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.summary-card{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:16px;padding:20px}.summary-card.complete{border-color:#10b9814d}.summary-card-icon{align-items:center;background:#ffffff1a;border-radius:12px;color:#ffffff80;display:flex;font-size:18px;font-weight:600;height:48px;justify-content:center;width:48px}.summary-card.complete .summary-card-icon{background:#10b98133;color:#10b981}.summary-card-content h4{color:#fff;font-size:16px;font-weight:600;margin:0 0 4px}.summary-card-content p{color:#ffffff80;font-size:14px;margin:0}.team-colors{display:flex;gap:8px;margin-top:8px}.team-badge{border-radius:20px;color:#fff;font-size:12px;font-weight:500;padding:4px 12px}.quick-tips{background:#3b82f61a;border:1px solid #3b82f633;border-radius:12px;margin-bottom:32px;padding:20px}.quick-tips h3{color:#3b82f6;font-size:14px;font-weight:600;margin:0 0 12px}.quick-tips ul{list-style:none;margin:0;padding:0}.quick-tips li{color:#ffffffb3;font-size:14px;padding:8px 0}.quick-tips li strong{color:#fff}.start-section{text-align:center}.btn-start{font-size:18px;font-weight:600;padding:16px 48px}@media (max-width:1400px){.calibration-anleitung{width:380px}.mini-field-xl{max-width:350px;min-height:150px}}@media (max-width:1200px){.calibration-anleitung{width:320px}.mini-field-xl{max-width:300px;min-height:130px}.guide-step-short{max-width:80px}}@media (max-width:1024px){.calibration-layout{flex-wrap:wrap}.video-calibration-container{flex:1 1 100%;max-height:50vh}.calibration-anleitung{flex:1 1;min-width:300px;width:100%}.field-reference-section{flex:0 0 auto;min-height:200px}}@media (max-width:768px){.teams-container{grid-template-columns:1fr}.calibration-layout{flex-direction:column}.video-calibration-container{max-height:40vh}.calibration-anleitung{max-height:none;width:100%}.calibration-helper{display:none}.calibration-guide{order:-1}.progress-line{width:40px}.guide-step-short{max-width:60px}.field-reference-section{min-height:150px}.mini-field-xl{max-width:250px;min-height:100px}}.app{background:#1a1a1a;box-sizing:border-box;display:flex;flex-direction:column;height:100vh;padding:0 20px;width:100vw}.app.calibration-mode{padding-right:400px}.main-content{border-radius:8px;display:flex;flex:1 1;min-height:0;overflow:hidden}.video-section{background:#000;border-right:1px solid #333;flex:1 1;position:relative;transition:width .3s ease}.events-section{background:#1a1a1a;border-left:1px solid #333;display:flex;flex-direction:column;max-width:500px;min-width:300px;transition:all .3s ease;width:350px}.events-section.collapsed{max-width:40px;min-width:40px;width:40px}.timeline-section{background:#2a2a2a;border-radius:0;border-top:1px solid #333;flex-shrink:0;height:56px;margin-top:0}@media (max-width:1200px){.app.calibration-mode{padding-right:350px}.events-section{width:300px}}@media (max-width:900px){.app.calibration-mode{padding-right:300px}.main-content{flex-direction:column}.video-section{border-bottom:1px solid #333;border-right:none;height:60vh}.events-section{border-left:none;border-top:1px solid #333;height:calc(40vh - 56px);width:100%}}@media (max-width:480px){.app.calibration-mode{padding-bottom:60vh;padding-right:0}}.loading{align-items:center;color:#888;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:32px}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #333;border-radius:50%;border-top-color:#06c;height:32px;width:32px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error{background:#2d1b1b;border:1px solid #5d2f2f;border-radius:6px;color:#ff6b6b;margin:16px;padding:16px}.error-title{font-weight:600;margin-bottom:8px}.error-message{font-size:14px;opacity:.9}.empty-state{align-items:center;color:#888;display:flex;flex-direction:column;justify-content:center;padding:48px 24px;text-align:center}.empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state h3{color:#ccc;font-weight:500;margin-bottom:8px}.empty-state p{font-size:14px;margin-bottom:4px}.empty-subtitle{opacity:.7}[title]:hover:after{background:#333;border-radius:4px;bottom:100%;color:#fff;content:attr(title);font-size:12px;left:50%;margin-bottom:4px;padding:4px 8px;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:1000}.fade-in{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.slide-in-right{animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.slide-in-up{animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}#root,.app,body,html{-webkit-touch-callout:none!important;-webkit-context-menu:none!important;-moz-context-menu:none!important;-ms-context-menu:none!important;context-menu:none!important;-webkit-user-drag:none!important;-khtml-user-drag:none!important;-moz-user-drag:none!important;-o-user-drag:none!important;user-drag:none!important;-webkit-user-select:none!important}.settings-modal input,.settings-modal textarea,[contenteditable=true],input,textarea{-webkit-user-select:text!important;user-select:text!important}.field-overlay,.main-content,.video-player-container,video{pointer-events:auto!important}.btn,.controls,.field-overlay,.main-content,.toolbar,.video-player-container,[role=button],button,video{-webkit-touch-callout:none!important;-webkit-context-menu:none!important;-moz-context-menu:none!important;context-menu:none!important;-webkit-user-select:none!important}video{border:none!important;outline:none!important}video::-webkit-media-controls-fullscreen-button,video::-webkit-media-controls-mute-button,video::-webkit-media-controls-panel,video::-webkit-media-controls-play-button,video::-webkit-media-controls-timeline,video::-webkit-media-controls-volume-slider{-webkit-appearance:none!important;display:none!important}video::-moz-media-controls{display:none!important}*{-webkit-app-region:no-drag!important}img{-webkit-user-drag:none!important;-khtml-user-drag:none!important;-moz-user-drag:none!important;-o-user-drag:none!important;user-drag:none!important;pointer-events:none!important}.event-menu,.event-menu *{pointer-events:auto!important;-webkit-user-select:none!important;user-select:none!important}.app,.main-content,.video-section{position:relative;z-index:1}:after,:before{-webkit-touch-callout:none!important;-webkit-context-menu:none!important;-moz-context-menu:none!important;context-menu:none!important;-webkit-user-select:none!important}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#1a1a1a;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;-webkit-user-select:none;user-select:none}.btn{align-items:center;background:#0000;border:none;border-radius:6px;color:inherit;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:#06c;color:#fff}.btn-primary:hover{background:#0052a3}.btn-secondary{background:#404040;color:#fff}.btn-secondary:hover{background:#505050}.btn-success{background:#22c55e;color:#fff}.btn-success:hover{background:#16a34a}.btn-warning{background:#f59e0b;color:#fff}.btn-warning:hover{background:#d97706}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-icon{align-items:center;background:#0000;border:none;border-radius:4px;color:#888;cursor:pointer;display:inline-flex;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.btn-icon:hover{background:#333;color:#fff}.btn-icon.active{background:#06c;color:#fff}input,select,textarea{background:#2a2a2a;border:1px solid #404040;border-radius:4px;color:#fff;font-size:14px;padding:8px 12px;transition:border-color .2s ease}input:focus,select:focus,textarea:focus{border-color:#06c;outline:none}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#2a2a2a}::-webkit-scrollbar-thumb{background:#555;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#777}