.top-bar{background:var(--color-surface-raised);border-bottom:1px solid var(--color-border);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:var(--color-primary)!important;border-color:var(--color-primary)!important;color:var(--color-text-on-primary)!important}.top-bar-section:first-child .btn:hover{background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}.top-bar-section:first-child .btn:disabled{background:var(--color-primary-dark)!important;border-color:var(--color-primary-dark)!important;opacity:.6}.video-info{align-items:center;color:var(--color-text-secondary);display:flex;font-size:14px;gap:8px}.video-name{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modified-indicator{color:var(--color-warning);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{padding:8px 16px;transition:background .2s;width:100%}.event-color-indicator{border-radius:50%;flex-shrink:0;height:12px;width:12px}.dropdown-menu{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:6px;box-shadow:var(--shadow-md);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:var(--color-text-main);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:var(--color-surface-hover)}.dropdown-menu button:not(:last-child){border-bottom:1px solid var(--color-border-medium)}.top-bar .btn:disabled{cursor:not-allowed;opacity:.5}.top-bar .btn-success{background:var(--color-success)}.top-bar .btn-warning{background:var(--color-warning)}@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:var(--color-overlay);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.player-management-modal{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-xl);display:flex;flex-direction:column;height:85vh;max-height:800px;max-width:1000px;overflow:hidden;width:90vw}.player-management-header{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px 24px}.header-title{align-items:center;color:var(--color-text-main);display:flex;gap:12px}.header-title h2{font-size:20px;font-weight:600;margin:0}.player-management-content{background:var(--color-surface);flex:1 1;overflow-y:auto;padding:24px}.add-player-section{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:8px;margin-bottom:24px;padding:20px}.add-player-section h3{border-bottom:1px solid var(--color-border);color:var(--color-text-main);font-size:16px;font-weight:500;margin:0 0 16px;padding-bottom:8px}.form-group label{color:var(--color-text-secondary);font-size:13px}.form-group input,.form-group select{background:var(--color-surface);border-radius:6px;padding:10px 12px;transition:all .2s ease}.form-group input:focus,.form-group select:focus{box-shadow:0 0 0 3px #70dece1a}.form-group input.error{border-color:var(--color-error)}.error-message{color:var(--color-error);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:var(--color-surface-raised);border-radius:6px;color:var(--color-text-secondary);flex:1 1;gap:8px;padding:10px 12px}.search-box input{flex:1 1;font-size:14px;outline:none}.team-filter{align-items:center;display:flex;gap:8px}.team-filter label{color:var(--color-text-secondary);font-size:13px;white-space:nowrap}.team-filter select{border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-main);cursor:pointer;font-size:14px;padding:10px 12px}.players-section,.team-filter select{background:var(--color-surface-raised)}.players-section{border:1px solid var(--color-border);border-radius:8px;padding:20px}.players-section h3{border-bottom:1px solid var(--color-border);color:var(--color-text-main);font-size:16px;font-weight:500;margin:0 0 16px;padding-bottom:8px}.team-roster{background:var(--color-surface)}.team-roster:last-child{margin-bottom:0}.team-roster-header h4{flex:1 1}.player-count{font-size:13px;font-weight:400}.players-list{padding:12px}.player-item{transition:all .2s ease}.player-item:hover{background:var(--color-surface-hover);border-color:var(--color-border-medium)}.player-number{border:2px solid var(--color-border-medium);color:var(--color-text-on-dark);height:40px;width:40px}.player-details{min-width:0}.player-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-actions{flex-shrink:0}.player-edit-form input{background:var(--color-surface);border:1px solid var(--color-primary);outline:none;padding:8px 10px}.player-edit-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #70dece33}.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:var(--color-success);border:none;border-radius:4px;color:var(--color-text-on-dark);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:var(--color-success-hover)}.btn-icon{padding:8px}.btn-icon.btn-danger:hover{color:var(--color-error)}.empty-state{font-size:14px;padding:24px}.empty-state-main{color:var(--color-text-muted);font-size:16px;font-style:italic;padding:48px 24px;text-align:center}.player-management-footer{align-items:center;background:var(--color-surface);border-top:1px solid var(--color-border);display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.btn{white-space:nowrap}.btn-primary:disabled{background:var(--color-surface-dark);color:var(--color-text-muted);cursor:not-allowed}@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:var(--color-surface)}.player-management-content::-webkit-scrollbar-thumb,.players-list::-webkit-scrollbar-thumb{background:var(--color-border-medium);border-radius:4px}.player-management-content::-webkit-scrollbar-thumb:hover,.players-list::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.tooltip-container{display:inline-flex;position:relative}.tooltip-content{animation:tooltipFadeIn .15s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--color-brand-elephant);border:1px solid #70dece4d;border-radius:4px;box-shadow:var(--shadow-lg);color:var(--color-text-on-dark);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 var(--color-brand-elephant);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 var(--color-brand-elephant);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:var(--color-surface);display:flex;height:100%;justify-content:center;width:100%}.placeholder-content{color:var(--color-text-muted);padding:48px;text-align:center}.placeholder-icon{font-size:64px;margin-bottom:24px;opacity:.5}.placeholder-content h3{color:var(--color-text-secondary);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:var(--color-text-muted);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-top:3px solid var(--color-border);border:3px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:40px;width:40px}.video-error{color:var(--color-error);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:var(--color-success)}.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:var(--color-primary);color:var(--color-text-on-primary)}.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:var(--color-primary);outline:none}.zoom-indicator{background:#70dececc;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:var(--color-success)}.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:var(--color-success);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:var(--color-success)}.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 #70dece80}.player-number{color:var(--color-text-main)}.overlay-backdrop{bottom:0;right:0;z-index:100}.event-menu{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-lg);min-width:200px;z-index:101}.event-menu-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);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}.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:var(--color-surface-raised);border:1px solid var(--color-border);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 var(--color-border);color:var(--color-text-muted);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:var(--color-text-main);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:var(--color-surface-hover);border-left-color:inherit;box-shadow:0 2px 8px #0000001a;color:var(--color-text-main);transform:translateX(2px)}.event-menu-item:active{background:var(--color-surface-dark);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}}.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 var(--color-border);border-radius:12px;box-shadow:var(--shadow-lg);max-width:350px;position:fixed;right:16px;top:80px;transition:all .3s ease;width:320px;z-index:50}.player-selection-group.collapsed{background:#70decef2;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:var(--color-text-main);display:flex;font-size:13px;font-weight:600;gap:8px}.panel-title svg{color:var(--color-text-muted)}.collapsed-info{color:var(--color-primary);font-size:12px;font-weight:500;margin-left:4px}.toggle-button{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--color-text-muted);cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.toggle-button:hover{background:var(--color-surface-hover);color:var(--color-text-main)}.toggle-button:active{background:var(--color-surface-dark)}.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:var(--color-text-main);font-size:12px;font-weight:600;min-width:50px}.player-select,.team-select{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-main);flex:1 1;font-size:12px;min-width:120px;padding:6px 8px}.player-select:focus,.team-select:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 2px #70dece40;outline:none}.player-select:disabled{background:var(--color-surface);color:var(--color-text-muted);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:var(--color-success);border:none;border-radius:4px;color:var(--color-text-on-dark);cursor:pointer;font-size:10px;font-weight:600;padding:4px 8px;transition:background-color .2s}.finish-player-btn:hover{background:var(--color-success-hover)}.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 var(--color-border);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 #70dece99;transform:scale(1.1)}@keyframes selectedPulse{0%,to{box-shadow:0 0 16px #70dece99}50%{box-shadow:0 0 24px #70decee6}}.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:var(--color-text-muted);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:var(--color-primary);border:none;border-radius:4px;color:var(--color-text-on-primary);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:var(--color-primary-hover)}.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:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-text-muted)!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:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-text-muted)!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:var(--color-primary);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:var(--color-surface-raised);border:1px solid var(--color-border);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:var(--color-brand-elephant);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:var(--color-surface-raised);border-bottom:1px solid var(--color-border)}.event-menu-section.secondary-events{background:var(--color-surface)}.event-menu-section .section-title{color:var(--color-text-muted);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:var(--color-surface-raised);border:1px solid var(--color-border);border-left:4px solid var(--event-color,var(--color-text-muted));border-radius:8px;color:var(--color-text-main);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:var(--color-surface-hover);border-color:var(--event-color,var(--color-text-muted));box-shadow:0 2px 8px #0000001a;transform:translateX(2px)}.event-menu-item-new:active{background:var(--color-surface-dark);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:var(--color-text-muted);font-size:10px;margin-left:auto}.event-menu-item-new.secondary-item{background:var(--color-surface);font-size:12px;padding:10px 12px}.event-menu-item-new.secondary-item:hover{background:var(--color-surface-hover)}.section-toggle{align-items:center;background:#0000;border:1px dashed var(--color-border-medium);border-radius:6px;color:var(--color-text-muted);cursor:pointer;display:flex;font-size:12px;gap:8px;padding:10px 12px;transition:all .2s ease;width:100%}.section-toggle:hover{background:var(--color-surface-hover);border-color:var(--color-border-medium);color:var(--color-text-main)}.section-toggle .toggle-icon{align-items:center;color:var(--color-text-muted);display:flex}.section-toggle .toggle-text{font-weight:500}.section-toggle .toggle-count{color:var(--color-text-muted);font-size:11px}.secondary-grid{gap:4px;margin-top:10px}.pass-submenu{background:var(--color-surface-raised);padding:16px}.pass-submenu-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.pass-submenu-title{color:var(--color-text-main);font-size:16px;font-weight:600}.pass-submenu-close{background:#0000;border:none;color:var(--color-text-muted);cursor:pointer;font-size:24px;line-height:1;padding:0;transition:color .2s}.pass-submenu-close:hover{color:var(--color-text-main)}.pass-submenu-section{margin-bottom:20px}.pass-outcome-label,.pass-quality-label{color:var(--color-text-secondary);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:var(--color-text-muted);font-size:12px;font-weight:400}.pass-outcome-option,.pass-outcome-options{display:flex;gap:10px}.pass-outcome-option{align-items:center;background:var(--color-surface);border:2px solid var(--color-border);border-radius:10px;cursor:pointer;flex:1 1;padding:14px 16px;transition:all .2s ease}.pass-outcome-option:hover{background:var(--color-surface-hover);border-color:var(--color-border-medium)}.pass-outcome-option.selected{background:#70dece1a;border-color:#4caf50}.pass-outcome-option input[type=radio]{display:none}.pass-outcome-option .option-icon{align-items:center;background:var(--color-surface-raised);border:2px solid var(--color-border);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:var(--color-text-main);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:var(--color-text-muted);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:var(--color-surface-raised);border:3px solid var(--color-text-main);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:var(--color-surface-raised);border:3px solid var(--color-text-main);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:var(--color-surface);border:2px solid var(--color-border);border-radius:50%;color:var(--color-text-muted);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:var(--color-surface-hover);border-color:var(--color-border-medium)}.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:var(--color-overlay-heavy);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:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:20px;box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-height:90vh;max-width:1100px;overflow:hidden;width:90%}.stats-modal-header{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);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:var(--shadow-md);color:#fff;display:flex;font-size:20px;font-weight:700;height:56px;justify-content:center;width:56px}.stats-player-details h2{color:var(--color-text-main);font-size:22px;font-weight:600;margin:0 0 4px}.stats-team-name{color:var(--color-text-muted);font-size:14px;margin-right:8px}.stats-position{border-radius:4px;color:var(--color-text-secondary);font-size:12px;padding:2px 8px}.stats-close-btn,.stats-position{background:var(--color-surface-hover)}.stats-close-btn{align-items:center;border:none;border-radius:50%;color:var(--color-text-muted);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.stats-close-btn:hover{background:var(--color-surface-dark);color:var(--color-text-main)}.stats-header-actions{align-items:center;display:flex;gap:12px}.stats-save-btn{align-items:center;background:var(--color-primary);border:none;border-radius:8px;box-shadow:var(--shadow-sm);color:var(--color-text-on-primary);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:var(--color-primary-hover);box-shadow:var(--shadow-md);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:var(--color-info);box-shadow:0 2px 8px #3b82f64d}.stats-save-btn.saved{background:var(--color-primary);box-shadow:0 2px 8px #70dece4d}.stats-save-btn.error{background:var(--color-error);box-shadow:0 2px 8px #dc35454d;color:var(--color-text-on-dark)}.stats-save-btn .spin{animation:spin 1s linear infinite}.stats-tabs{background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;padding:0 24px}.stats-tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:var(--color-text-muted);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{background:var(--color-surface-hover);color:var(--color-text-main)}.stats-tab.active{border-bottom-color:var(--color-primary);color:var(--color-primary)}.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:var(--color-border-medium);border-radius:4px}.stats-content::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.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:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;display:flex;gap:14px;padding:20px;transition:all .2s ease}.stats-card:hover{border-color:var(--color-border-medium);box-shadow:var(--shadow-md);transform:translateY(-2px)}.stats-card.highlight{background:#70dece14;border-color:var(--color-primary)}.stats-card-icon{align-items:center;background:var(--color-surface-hover);border-radius:12px;color:var(--color-primary);display:flex;height:44px;justify-content:center;width:44px}.stats-card-content{display:flex;flex-direction:column}.stats-card-value{color:var(--color-text-main);font-size:24px;font-weight:700;line-height:1.2}.stats-card-label{color:var(--color-text-muted);font-size:12px;margin-top:2px}.stats-insights{margin-bottom:28px}.stats-insights h3{color:var(--color-text-main);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:var(--color-surface);border-left:3px solid;border-radius:10px;display:flex;gap:12px;padding:14px 16px}.insight-item.insight-positive{background:#4caf500f;border-color:#4caf50}.insight-item.insight-improvement{background:#ff98000f;border-color:#ff9800}.insight-item.insight-info{background:#2196f30f;border-color:#2196f3}.insight-badge{background:var(--color-surface-hover);border-radius:4px;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase}.insight-badge,.insight-text{color:var(--color-text-secondary)}.insight-text{font-size:14px}.stats-chart-section{margin-bottom:28px}.stats-chart-section h3{color:var(--color-text-main);font-size:16px;font-weight:600;margin:0 0 16px}.chart-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:20px}.stats-section{margin-bottom:28px}.stats-section h3{border-bottom:1px solid var(--color-border);color:var(--color-text-main);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:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;display:flex;flex-direction:column;padding:14px 16px}.stats-label{color:var(--color-text-muted);font-size:12px;margin-bottom:4px}.stats-value{color:var(--color-text-main);font-size:18px;font-weight:600}.stats-value.highlight{color:var(--color-primary)}.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:var(--color-text-muted);font-size:10px}.zone-bar-container{background:var(--color-surface-dark);border-radius:12px;height:24px;overflow:hidden}.zone-bar{border-radius:12px;height:100%;min-width:4px;transition:width .5s ease}.zone-value{color:var(--color-text-secondary);font-size:13px;font-weight:500;text-align:right}.pass-accuracy-visual{align-items:center;background:var(--color-surface);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:var(--color-primary);display:block;font-size:32px;font-weight:700}.accuracy-label{color:var(--color-text-muted);font-size:12px}.pass-stats{display:flex;gap:32px}.pass-stat{align-items:center;display:flex;flex-direction:column}.pass-stat span{color:var(--color-text-main);font-size:28px;font-weight:700}.pass-stat label{color:var(--color-text-muted);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,#f4433626,#f4433626 33.33%,#2196f326 0,#2196f326 66.66%,#4caf5026 0,#4caf5026);border:2px solid var(--color-border-medium);max-width:400px;position:relative}.field-thirds{display:flex;height:100%}.field-thirds .third{border-right:1px dashed var(--color-border-medium);flex:1 1}.field-thirds .third:last-child{border-right:none}.player-position-dot{align-items:center;background:var(--color-primary);border-radius:50%;box-shadow:0 0 0 3px #70dece4d,var(--shadow-md);color:var(--color-text-on-primary);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:var(--color-surface);border-radius:6px;color:var(--color-text-muted);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:var(--color-surface-raised)!important;border:1px solid var(--color-border)!important;border-radius:8px!important;box-shadow:var(--shadow-md)!important}.recharts-tooltip-label{color:var(--color-text-main)!important;font-weight:600!important}.recharts-tooltip-item{color:var(--color-text-secondary)!important}.recharts-legend-wrapper{padding-top:10px!important}.recharts-legend-item-text{color:var(--color-text-secondary)!important;font-size:12px!important}.tactical-view-toggle{background:var(--color-surface);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:var(--color-text-muted);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:10px 16px;transition:all .2s ease}.toggle-btn:hover{background:var(--color-surface-hover);color:var(--color-text-secondary)}.toggle-btn.active{background:var(--color-primary);box-shadow:var(--shadow-sm);color:var(--color-text-on-primary)}.toggle-btn svg{flex-shrink:0}.soccer-field-container{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;display:flex;justify-content:center;overflow:hidden;padding:16px}.soccer-field-svg{border-radius:8px;box-shadow:var(--shadow-md);height:auto;max-width:520px;width:100%}.no-data-message{align-items:center;color:var(--color-text-muted);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:var(--color-text-muted);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:var(--color-surface);border-radius:12px;flex-wrap:wrap;gap:10px;padding:12px 16px}.anim-btn,.animation-controls{align-items:center;display:flex}.anim-btn{background:var(--color-surface-hover);border:none;border-radius:8px;color:var(--color-text-main);cursor:pointer;gap:4px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.anim-btn:hover{background:var(--color-surface-dark);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:var(--color-surface-dark);border-radius:3px;flex:1 1;height:6px;min-width:100px;overflow:hidden}.progress-bar{background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover));height:100%;transition:width .05s linear}.animation-counter{color:var(--color-text-muted);font-size:12px;min-width:60px;text-align:right}.speed-legend{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:8px}.legend-color{border-radius:3px;height:12px;width:12px}.zone-bars-horizontal{background:var(--color-surface);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:var(--color-text-secondary);font-size:13px;font-weight:500;width:80px}.zone-bar-track{background:var(--color-surface-dark);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:var(--color-surface);border-radius:16px;display:flex;flex-direction:column;gap:20px;padding:20px}.position-info{display:flex;gap:24px}.position-coord{align-items:center;background:var(--color-surface-hover);border-radius:10px;display:flex;flex-direction:column;gap:4px;padding:12px 24px}.coord-label{color:var(--color-text-muted);font-size:11px}.coord-value{color:var(--color-primary);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:var(--color-overlay);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.clip-modal{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-xl);color:var(--color-text-main);max-width:480px;width:90%}.clip-modal-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:16px 20px}.clip-modal-header h2{align-items:center;color:var(--color-text-main);display:flex;font-size:18px;gap:8px;margin:0}.clip-modal-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px}.clip-modal-close:hover{color:var(--color-text-main)}.clip-modal-content{padding:20px}.clip-event-info{align-items:center;background:var(--color-surface);border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:12px}.clip-event-type{background:var(--color-primary);border-radius:20px;color:var(--color-text-on-primary);font-size:12px;font-weight:600;padding:4px 12px;text-transform:uppercase}.clip-event-player{color:var(--color-text-main);font-weight:500}.clip-event-time{align-items:center;color:var(--color-text-muted);display:flex;gap:4px;margin-left:auto}.clip-timing-section{margin-bottom:20px}.clip-timing-slider{margin-bottom:16px}.clip-timing-slider label{color:var(--color-text-secondary);display:block;font-size:14px;margin-bottom:8px}.clip-timing-slider input[type=range]{-webkit-appearance:none;background:var(--color-surface-dark);border-radius:3px;height:6px;outline:none;width:100%}.clip-timing-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--color-primary);border-radius:50%;cursor:pointer;height:18px;width:18px}.clip-summary{background:var(--color-surface);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:var(--color-text-muted);font-size:12px}.clip-summary-item strong{color:var(--color-primary);font-size:16px}.clip-progress{margin-bottom:16px}.clip-progress-bar{background:var(--color-surface-dark);border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.clip-progress-fill{background:var(--color-primary);height:100%;transition:width .3s ease}.clip-progress-text{color:var(--color-text-secondary);font-size:13px}.clip-error{align-items:center;background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:8px;color:var(--color-error)}.clip-error,.clip-success{display:flex;font-size:14px;gap:8px;padding:12px}.clip-success{align-items:flex-start;background:var(--color-success-bg);border:1px solid var(--color-success);border-radius:8px;color:var(--color-success)}.clip-saved-path{align-items:center;color:var(--color-text-muted);display:flex;font-size:11px;gap:6px;margin-top:6px;word-break:break-all}.clip-modal-footer{border-top:1px solid var(--color-border);display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.clip-btn-cancel{background:#0000;border:1px solid var(--color-border-medium);border-radius:8px;color:var(--color-text-secondary);cursor:pointer;font-size:14px;padding:10px 20px}.clip-btn-cancel:hover:not(:disabled){background:var(--color-surface-hover)}.clip-btn-generate{align-items:center;background:var(--color-primary);border:none;border-radius:8px;color:var(--color-text-on-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 24px}.clip-btn-generate:hover:not(:disabled){background:var(--color-primary-hover)}.clip-btn-cancel:disabled,.clip-btn-generate:disabled{cursor:not-allowed;opacity:.5}.events-panel{background:var(--color-surface);display:flex;flex-direction:column;height:100%;position:relative;transition:all .3s ease}.events-panel.collapsed{background:#70decef2;border-radius:8px 0 0 8px;box-shadow:-2px 0 8px #0d293f1f;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:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-secondary);cursor:pointer;left:-12px;padding:8px 4px;position:absolute;top:50%;transform:translateY(-50%);transition:background .2s;z-index:10}.collapse-toggle:hover{background:var(--color-surface-hover);color:var(--color-text-main)}.events-panel.collapsed .collapse-toggle{align-items:center;background:#0000;border:none;color:var(--color-text-on-primary);display:flex;justify-content:center;left:auto;margin:10px auto;position:relative;top:auto;transform:none}.collapsed-panel-label{color:var(--color-text-on-primary);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:var(--color-surface-raised);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:16px}.events-header h3{color:var(--color-text-main);font-size:16px;font-weight:500;margin:0}.events-controls{gap:8px}.events-controls,.search-box{align-items:center;display:flex}.search-box{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;min-width:160px;padding:0 8px;position:relative}.search-box svg{color:var(--color-text-muted);margin-right:6px}.search-box input{background:#0000;border:none;color:var(--color-text-main);font-size:13px;padding:6px 0;width:100%}.search-box input:focus{outline:none}.search-box input::placeholder{color:var(--color-text-muted)}.filters-panel{background:var(--color-surface-raised);border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:8px;padding:12px 16px}.filter-row{align-items:center;display:flex;gap:8px}.filter-row label{color:var(--color-text-secondary);font-size:12px;min-width:70px}.filter-row select{background:var(--color-surface);border:1px solid var(--color-border-medium);border-radius:3px;color:var(--color-text-main);flex:1 1;font-size:12px;padding:4px 6px}.events-list{flex:1 1;overflow-y:auto;padding:8px}.event-item{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;margin-bottom:8px;padding:12px;position:relative;transition:all .2s ease}.event-item:hover{background:var(--color-surface-hover);border-color:var(--color-border-medium)}.event-item.selected{background:#70dece1a;border-color:var(--color-primary)}.event-item.current{border-color:var(--color-success);box-shadow:0 0 0 2px #28a74533}.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:var(--color-text-main);font-size:13px;font-weight:500;text-transform:capitalize}.event-time{color:var(--color-text-muted);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:var(--color-text-secondary);font-size:12px}.event-player-to{color:var(--color-text-muted);font-size:12px}.event-notes{border-radius:3px;color:var(--color-text-secondary);font-size:12px;font-style:italic;margin-top:4px;padding:4px 8px}.event-edit-form,.event-notes{background:var(--color-surface)}.event-edit-form{border:1px solid var(--color-border-medium);border-radius:6px;margin-bottom:8px;padding:12px}.form-row{align-items:center;gap:8px;margin-bottom:8px}.form-row label{color:var(--color-text-secondary);font-size:12px;min-width:50px}.form-row input,.form-row select,.form-row textarea{background:var(--color-surface-raised);border:1px solid var(--color-border-medium);border-radius:3px;color:var(--color-text-main);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:var(--color-surface-raised);border-top:1px solid var(--color-border);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:12px;padding:16px}.stat-row{display:flex;gap:8px;justify-content:space-around}.stat-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;flex:1 1;padding:10px 8px;text-align:center;transition:all .2s ease}.stat-item:hover{background:var(--color-surface-hover);border-color:var(--color-border-medium);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.stat-label{color:var(--color-text-muted);display:block;font-size:10px;font-weight:500;letter-spacing:.8px;margin-bottom:4px;text-transform:uppercase}.stat-value{color:var(--color-text-main);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:var(--color-text-main);font-size:14px;font-weight:700;letter-spacing:.5px;margin:0}.btn-toggle{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;box-shadow:var(--shadow-sm);cursor:pointer;font-size:16px;padding:6px 12px;transition:all .2s ease}.btn-toggle:hover{background:var(--color-surface-hover);border-color:var(--color-border-medium);transform:scale(1.05)}.btn-toggle.active{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 4px 8px #70dece66;color:var(--color-text-on-primary)}.distance-panel{border-top:1px solid var(--color-border);margin-top:16px;padding-top:16px}.distance-header{margin-bottom:12px}.distance-header h4{color:var(--color-text-main);font-size:14px;font-weight:600;margin:0 0 4px}.distance-instructions{color:var(--color-text-muted);font-size:11px;font-style:italic}.no-distance-data{color:var(--color-text-muted);padding:20px;text-align:center}.no-distance-data p{margin:8px 0}.instruction-text{background:#70dece1a;border-left:3px solid var(--color-primary);border-radius:4px;font-size:11px;line-height:1.4;padding:8px}.distance-list{display:flex;flex-direction:column;gap:12px}.distance-item{background:var(--color-surface);border:1px solid var(--color-border);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 var(--color-border);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:var(--color-text-muted);font-size:10px;margin-bottom:2px}.distance-stats .stat-value{color:var(--color-text-main);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:var(--color-surface);border:1px solid var(--color-border);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:var(--color-surface-raised);color:var(--color-text-main)}.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:var(--color-surface-raised);border-top:1px solid var(--color-border);display:flex;gap:12px;height:56px;padding:0 12px}.timeline-bar.disabled{opacity:.5;pointer-events:none}.timeline-placeholder{color:var(--color-text-muted);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:var(--color-surface-dark);border:none;border-radius:5px;color:var(--color-text-main);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.control-btn:hover{background:var(--color-surface-hover);color:var(--color-text-main)}.control-btn:active{transform:scale(.95)}.control-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.play-btn{background:var(--color-primary);color:var(--color-text-on-primary);height:36px;width:36px}.play-btn:hover{background:var(--color-primary-hover)}.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:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-secondary);font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;gap:6px;padding:4px 10px;white-space:nowrap}.current-time{color:var(--color-primary);font-size:13px;font-weight:600;text-shadow:0 0 8px #70dece66}.time-separator{color:var(--color-text-muted);font-weight:400}.duration{color:var(--color-text-secondary);font-weight:500}.timeline-container{cursor:pointer;flex:1 1;height:6px;min-width:200px;padding:8px 0;position:relative}.timeline-track{background:var(--color-surface-dark);border-radius:3px;height:6px;overflow:hidden;position:relative}.timeline-progress{background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover));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:var(--color-success);border-radius:1px;height:100%;position:absolute;top:0;width:2px;z-index:2}.timeline-event:hover{background:var(--color-success-hover);width:3px}.timeline-bookmark{background:var(--color-info);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:var(--color-surface);border-radius:4px;color:var(--color-text-secondary);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:var(--color-warning);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:var(--color-warning);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:var(--color-warning);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:var(--color-surface-dark);font-size:10px;font-weight:600;height:24px;width:24px}.loop-btn:hover{background:var(--color-surface-hover)}.playback-rate-selector{align-items:center;display:flex}.playback-rate-select{background:var(--color-surface-dark);border:1px solid var(--color-border-medium);border-radius:4px;color:var(--color-text-main);cursor:pointer;font-size:12px;min-width:60px;padding:6px 8px}.playback-rate-select:focus{border-color:var(--color-primary);outline:none}.volume-controls{align-items:center;display:flex;gap:8px}.volume-slider{-webkit-appearance:none;background:var(--color-surface-dark);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{background:#fff;border-left:1px solid var(--color-border);bottom:0;box-shadow:-4px 0 24px #0d293f1f;color:var(--color-text-main);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:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:16px 20px}.calibration-header h2{color:var(--color-text-main);font-size:16px;font-weight:600;margin:0}.calibration-controls{align-items:center;display:flex;gap:4px}.calibration-controls .btn-icon{border-radius:var(--radius-sm);color:var(--color-text-secondary);height:28px;width:28px}.calibration-controls .btn-icon:hover{background:var(--color-surface-hover);color:var(--color-text-main)}.calibration-content{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:20px}.calibration-progress{display:flex;flex-direction:column;gap:6px}.progress-bar{background:var(--color-surface)}.progress-fill{background:linear-gradient(90deg,var(--color-primary),var(--color-success));border-radius:3px}.progress-text{color:var(--color-text-secondary);font-size:13px;text-align:center}.calibration-ready{color:var(--color-success);font-weight:500}.current-instruction{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px}.instruction-step{align-items:center;color:var(--color-text-secondary);display:flex;font-size:12px;font-weight:500;gap:8px;margin-bottom:6px}.required-badge{background:var(--color-error);border-radius:3px;color:#fff;font-size:10px;font-weight:600;letter-spacing:.3px;padding:2px 6px;text-transform:uppercase}.instruction-text{color:var(--color-text-main);font-size:14px;font-weight:500;line-height:1.5}.calibration-points-list{display:flex;flex-direction:column;gap:4px}.point-item{align-items:center;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:10px;padding:8px 10px;position:relative;transition:all .15s ease}.point-item:hover{background:var(--color-surface)}.point-item.completed{background:var(--color-success-bg);border-color:#28a74540}.point-item.current{background:#70dece14;border-color:var(--color-primary);box-shadow:0 0 0 2px #70dece26}.point-item.required{border-left:3px solid var(--color-error)}.point-item.recommended{border-left:3px solid var(--color-info)}.point-item.optional{border-left:3px solid var(--color-warning)}.point-indicator{align-items:center;background:var(--color-surface-dark);border-radius:50%;color:var(--color-text-secondary);display:flex;flex-shrink:0;font-size:11px;font-weight:600;height:22px;justify-content:center;width:22px}.point-item.completed .point-indicator{background:var(--color-success);color:#fff}.point-item.current .point-indicator{background:var(--color-primary);color:var(--color-text-on-primary)}.point-name{color:var(--color-text-secondary);flex:1 1;font-size:13px;text-transform:capitalize}.point-item.completed .point-name{color:var(--color-text-main)}.point-item.current .point-name{color:var(--color-text-main);font-weight:500}.required-tag{background:#dc35451a;color:var(--color-error)}.recommended-tag,.required-tag{border-radius:3px;font-size:10px;font-weight:600;padding:2px 6px;text-transform:uppercase}.recommended-tag{background:#3b82f61a;color:var(--color-info)}.recommended-badge{background:var(--color-info);border-radius:3px;color:#fff;font-size:10px;font-weight:600;letter-spacing:.3px;padding:2px 6px;text-transform:uppercase}.point-actions{align-items:center;display:flex;gap:2px;margin-left:auto}.btn-icon-small{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:4px;transition:all .15s ease}.btn-icon-small:hover{background:var(--color-surface-hover);border-color:var(--color-border-medium);color:var(--color-text-main)}.validation-errors{background:var(--color-error-bg);border:1px solid #dc354533;border-radius:var(--radius-md);padding:12px}.validation-header{align-items:center;color:var(--color-error);display:flex;font-size:13px;font-weight:500;gap:8px;margin-bottom:6px}.validation-error{color:var(--color-error);font-size:12px;padding:3px 0 3px 24px}.mini-field{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px}.mini-field-title{color:var(--color-text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-align:center;text-transform:uppercase}.mini-field-container{background:#2d5a3d;border-radius:var(--radius-sm);display:flex;justify-content:center;padding:12px}.field-svg{height:auto;max-width:300px;width:100%}.mini-field-legend{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:10px}.legend-item{gap:5px}.legend-color{border-radius:50%;height:8px;width:8px}.legend-color.required{background:var(--color-error)}.legend-color.recommended{background:var(--color-info)}.legend-color.optional{background:var(--color-warning)}.calibration-footer{align-items:center;background:var(--color-surface);border-top:1px solid var(--color-border);display:flex;gap:8px;justify-content:space-between;padding:12px 20px}.btn-reset-calibration{align-items:center;background:#0000;border:1px solid #dc35454d;border-radius:var(--radius-sm);color:var(--color-error);cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:5px;padding:6px 10px;transition:all .15s ease}.btn-reset-calibration:hover{background:var(--color-error-bg);border-color:var(--color-error)}.reset-confirm{align-items:center;display:flex;gap:6px}.reset-confirm-text{color:var(--color-error);font-size:12px;font-weight:500;white-space:nowrap}.btn-reset-yes{background:var(--color-error);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:4px 10px;transition:all .15s}.btn-reset-yes:hover{background:var(--color-error-hover)}.btn-reset-no{background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;font-size:12px;font-weight:500;padding:4px 10px;transition:all .15s}.btn-reset-no:hover{background:var(--color-surface-hover)}.footer-center{display:flex;gap:4px}.calibration-footer .btn-icon{color:var(--color-text-secondary)}.calibration-footer .btn-icon:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text-main)}.calibration-footer .btn-icon:disabled{cursor:not-allowed;opacity:.3}.calibration-footer .btn-icon.calibrated{background:var(--color-success);color:#fff}.calibration-footer .btn-icon.calibrated:hover:not(:disabled){background:var(--color-success-hover)}.calibration-modal-overlay.minimized{height:auto;min-height:60px}.minimized-content{background:var(--color-surface);border-top:1px solid var(--color-border);padding:12px 20px}.minimized-info{display:flex;flex-direction:column;gap:2px}.minimized-step{color:var(--color-text-main);font-size:13px;font-weight:500}.minimized-progress{color:var(--color-text-muted);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:12px}.calibration-content{gap:12px}.mini-field{display:none}}@media (max-width:480px){.calibration-modal-overlay{border-left:none;border-top:1px solid var(--color-border);bottom:0;height:60vh;left:0;right:auto;top:auto;width:100vw}.calibration-footer{flex-direction:column;gap:8px}.footer-center{order:-1}}.field-setup{padding:4px}.field-setup-title{color:var(--color-text-main);font-size:15px;font-weight:600;margin-bottom:6px}.field-setup-description{color:var(--color-text-secondary);font-size:13px;line-height:1.5;margin-bottom:16px}.field-setup-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.preset-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-main);cursor:pointer;font-size:12px;font-weight:500;padding:7px 12px;transition:all .15s}.preset-btn:hover{background:var(--color-surface-hover);border-color:var(--color-primary)}.field-setup-inputs{display:flex;gap:12px;margin-bottom:16px}.field-input-group{display:flex;flex:1 1;flex-direction:column;gap:4px}.field-input-group label{color:var(--color-text-secondary);font-size:12px;font-weight:500}.field-input-group input{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--color-text-main);font-size:14px;padding:8px 10px;width:100%}.field-input-group input:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 2px #70dece26;outline:none}.field-input-group input.invalid{border-color:var(--color-error)}.input-hint{color:var(--color-text-muted);font-size:11px}.field-setup-error{align-items:center;background:var(--color-error-bg);border:1px solid #dc354533;border-radius:var(--radius-sm);color:var(--color-error);display:flex;font-size:12px;gap:6px;margin-bottom:16px;padding:8px 12px}.btn-confirm-dimensions{background:var(--color-primary);border:none;border-radius:var(--radius-sm);color:var(--color-text-on-primary);cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:all .15s;width:100%}.btn-confirm-dimensions:hover:not(:disabled){background:var(--color-primary-hover)}.btn-confirm-dimensions:disabled{cursor:not-allowed;opacity:.4}.current-field-dimensions{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:13px;justify-content:space-between;padding:8px 12px;transition:all .15s}.current-field-dimensions:hover{background:var(--color-surface-hover);color:var(--color-text-main)}.current-field-dimensions svg{color:var(--color-text-muted)}.current-field-dimensions:hover svg{color:var(--color-text-main)}.settings-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--color-overlay);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.settings-modal{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-xl);display:flex;flex-direction:column;height:80vh;max-height:700px;max-width:900px;overflow:hidden;width:90vw}.settings-header{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px 24px}.settings-header h2{color:var(--color-text-main);font-size:18px;font-weight:600;margin:0}.settings-content{display:flex;flex:1 1;min-height:0}.settings-tabs{background:var(--color-surface);border-right:1px solid var(--color-border);overflow-y:auto;padding:16px 0;width:200px}.settings-tab{background:#0000;border:none;border-left:3px solid #0000;color:var(--color-text-secondary);cursor:pointer;display:block;font-size:14px;padding:12px 20px;text-align:left;transition:all .2s ease;width:100%}.settings-tab:hover{background:var(--color-surface-hover);color:var(--color-text-main)}.settings-tab.active{background:#70dece1a;border-left-color:var(--color-primary);color:var(--color-text-main)}.settings-panel{flex:1 1;overflow-y:auto;padding:24px}.settings-tab-content{display:flex;flex-direction:column;gap:24px}.settings-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:20px}.settings-section h3{border-bottom:1px solid var(--color-border);color:var(--color-text-main);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:var(--color-text-secondary);cursor:pointer;display:flex;flex:1 1;font-size:14px;gap:8px}.setting-item input[type=checkbox]{accent-color:var(--color-primary);height:16px;width:16px}.setting-item input[type=number],.setting-item input[type=text],.setting-item select{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-main);font-size:14px;padding:6px 8px;width:120px}.setting-item input[type=range]{accent-color:var(--color-primary);width:120px}.team-config{background:var(--color-surface);border:1px solid var(--color-border);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 var(--color-border-medium);border-radius:50%;flex-shrink:0;height:20px;width:20px}.team-name-input{background:var(--color-surface-raised);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:var(--color-text-secondary);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:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-main);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:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;display:flex;justify-content:space-between;padding:8px 12px}.custom-event-item span{color:var(--color-text-main);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:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;display:flex;justify-content:space-between;padding:12px}.hotkey-item label{color:var(--color-text-secondary);font-size:13px;text-transform:capitalize}.hotkey-input{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-main);font-size:14px;font-weight:700;padding:4px 6px;text-align:center;text-transform:uppercase;width:40px}.hotkeys-help{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:16px}.hotkeys-help h4{color:var(--color-text-main);font-size:14px;margin:0 0 12px}.hotkeys-help ul{color:var(--color-text-secondary);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:var(--color-text-secondary);font-size:12px;letter-spacing:.5px;text-transform:uppercase}.dimension-item input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-main);font-size:14px;padding:8px 10px}.field-presets{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:16px}.field-presets h4{color:var(--color-text-main);font-size:14px;margin:0 0 12px}.field-presets button{margin-bottom:8px;margin-right:8px}.settings-description{color:var(--color-text-secondary);font-size:13px;margin-bottom:12px}.calibration-status{align-items:center;display:flex;gap:12px;margin-bottom:16px}.calibration-status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:13px;font-weight:600;padding:6px 14px}.calibration-status-badge.calibrated{background:#28a7451a;border:1px solid #28a74540;color:var(--color-success)}.calibration-status-badge.not-calibrated{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted)}.calibration-points-count{color:var(--color-text-muted);font-size:12px}.settings-footer{align-items:center;background:var(--color-surface);border-top:1px solid var(--color-border);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 var(--color-border);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:var(--color-primary);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:var(--color-surface);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:var(--color-surface-raised);border:1px solid var(--color-border);color:var(--color-text-main)}.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:var(--color-surface-raised);border-color:var(--color-border-focus);color:var(--color-text-main)}.form-row{gap:16px;margin-bottom:16px}.form-group{flex:1 1}.form-group label{color:var(--color-text-main);font-size:14px;font-weight:500;margin-bottom:4px}.form-group input,.form-group select{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-main);font-size:14px;padding:8px 12px}.form-group input:focus,.form-group select:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 2px #70dece40;color:var(--color-text-main);outline:none}.team-roster{border:1px solid var(--color-border);border-radius:8px;margin-bottom:24px;overflow:hidden}.team-roster-header{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;gap:12px;padding:16px}.team-roster-header h4{font-size:16px;font-weight:600;margin:0}.player-count{font-size:14px;margin-left:auto}.players-list{padding:16px}.player-item{align-items:center;background:var(--color-surface-raised);border:1px solid var(--color-border);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:var(--color-primary);border-radius:50%;color:var(--color-text-on-primary);flex-shrink:0;font-size:14px;font-weight:700;height:32px;justify-content:center;width:32px}.player-details{flex:1 1}.player-name{font-size:15px;font-weight:500;margin-bottom:2px}.player-position{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:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-main);font-size:14px;padding:6px 8px}.player-edit-form input:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 2px #70dece40;color:var(--color-text-main);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:var(--color-success);border:none;border-radius:4px;color:var(--color-text-on-dark);cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;width:28px}.player-edit-form button:hover{background:var(--color-success-hover)}.btn-icon{background:none;color:var(--color-text-muted);display:flex;padding:6px;transition:all .2s}.btn-icon.btn-danger{color:var(--color-error)}.btn-icon.btn-danger:hover{background:var(--color-error-bg);color:var(--color-error-hover)}@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:var(--color-text-muted);opacity:1}.team-roster-header h4{color:var(--color-text-main)}.player-count{color:var(--color-text-muted)}.player-name{color:var(--color-text-main)}.player-position{color:var(--color-text-muted)}.empty-state{font-style:italic;padding:20px}.onboarding-screen{background:#fdfdfd;bottom:0;display:flex;flex-direction:row;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:9999}.onboarding-logo-bottom{bottom:80px;left:24px;pointer-events:none;position:absolute;z-index:2}.logo-image-bottom{height:80px;opacity:.5;width:auto}.onboarding-video-panel{background:#f4f4f4;border-left:1px solid var(--color-border);flex-shrink:0;overflow:hidden;position:relative;width:400px}.dribbling-video{display:block;height:100%;object-fit:contain;width:100%}.video-panel-overlay{align-items:flex-end;bottom:0;display:flex;justify-content:flex-start;left:0;padding:24px;pointer-events:none;position:absolute;right:0}.video-panel-logo{height:auto;opacity:.85;width:160px}.onboarding-main{display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden;position:relative}.onboarding-header{align-items:center;background:#fdfdfd;border-bottom:1px solid var(--color-border);display:flex;gap:20px;padding:16px 32px;position:relative;transition:all .3s ease;z-index:1}.onboarding-screen.calibration-mode .onboarding-header{gap:12px;padding:8px 20px}.onboarding-screen.calibration-mode .logo-image{height:36px}.onboarding-screen.calibration-mode .onboarding-header h1{font-size:15px}.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;flex-shrink:0}.logo-image{height:56px;width:auto}.onboarding-header-text{display:flex;flex-direction:column;gap:2px}.onboarding-header h1{color:var(--color-text-main);font-size:22px;font-weight:600;margin:0}.onboarding-header p{color:var(--color-text-secondary);font-size:13px;margin:0}.onboarding-progress{align-items:center;display:flex;gap:0;justify-content:center;padding:24px 32px;position:relative;z-index:1}.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:var(--color-surface);border:2px solid var(--color-border-medium);border-radius:50%;color:var(--color-text-muted);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:var(--color-primary);border-color:var(--color-primary);box-shadow:0 0 20px #70dece66;color:var(--color-text-on-primary)}.progress-step.complete .step-circle{background:var(--color-success);border-color:var(--color-success);color:#fff}.step-label{color:var(--color-text-muted);font-size:12px;font-weight:500;white-space:nowrap}.progress-step.active .step-label,.progress-step.complete .step-label{color:var(--color-text-main)}.progress-line{background:var(--color-border-medium);height:2px;margin:0 8px 28px;transition:background .3s ease;width:80px}.progress-line.complete{background:var(--color-success)}.onboarding-content{display:flex;flex:1 1;justify-content:center;overflow-y:auto;padding:24px 32px;position:relative;transition:all .3s ease;z-index:1}.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:var(--color-text-main);font-size:24px;font-weight:600;margin:0 0 8px}.step-header p{color:var(--color-text-secondary);font-size:14px;margin:0}.onboarding-footer{align-items:center;background:var(--color-surface-raised);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;padding:16px 32px;position:relative;transition:all .3s ease;z-index:1}.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:var(--color-text-muted);font-size:14px}.btn{border-radius:8px;gap:8px;padding:10px 20px}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{border:1px solid var(--color-border-medium)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-hover)}.btn-success:hover:not(:disabled){background:var(--color-success-hover)}.team-step{max-width:760px!important}.teams-vs-layout{align-items:stretch;display:flex;gap:0;margin-bottom:28px}.team-card{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-sm);flex:1 1;overflow:hidden;position:relative;transition:border-color .3s ease}.team-card:hover{border-color:var(--team-accent,var(--color-border-medium));box-shadow:var(--shadow-md)}.team-card-accent{height:4px;width:100%}.team-card-body{padding:24px}.team-card-badge{background:var(--color-surface);border-radius:20px;color:var(--color-text-muted);display:inline-block;font-size:11px;font-weight:700;letter-spacing:1.2px;margin-bottom:20px;padding:4px 12px}.team-card-color-row{align-items:center;display:flex;gap:20px;margin-bottom:24px}.color-picker-wrapper{position:relative}.color-picker-large{border:none;border-radius:14px;cursor:pointer;height:56px;padding:0;width:56px}.color-picker-large::-webkit-color-swatch-wrapper{padding:0}.color-picker-large::-webkit-color-swatch{border:2px solid var(--color-border);border-radius:12px}.team-jersey-preview{align-items:center;background:var(--color-surface);border:2px solid;border-radius:14px;display:flex;height:80px;justify-content:center;padding:8px;width:80px}.jersey-icon{height:100%;width:100%}.team-name-section label{color:var(--color-text-muted);display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.team-name-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-sizing:border-box;color:var(--color-text-main);font-size:16px;font-weight:500;padding:14px 16px;transition:all .2s ease;width:100%}.team-name-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #70dece26;outline:none}.team-name-input::placeholder{color:var(--color-text-muted)}.vs-divider{flex-shrink:0;padding:0 20px}.vs-divider,.vs-divider span{align-items:center;display:flex;justify-content:center}.vs-divider span{background:#70dece1f;border:2px solid #70dece40;border-radius:50%;color:var(--color-primary);font-size:16px;font-weight:800;height:48px;letter-spacing:1px;width:48px}.step-hint{align-items:center;background:#70dece14;border:1px solid #70dece26;border-radius:12px;color:var(--color-text-secondary);display:flex;font-size:13px;gap:10px;padding:14px 18px}.hint-icon{font-size:16px}.player-step{max-width:900px!important}.player-layout{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:1fr 1fr}.add-player-card,.roster-card{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-sm);overflow:hidden}.add-player-card-header,.roster-card-header{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:16px 20px}.add-player-card-header h3,.roster-card-header h3{color:var(--color-text-main);font-size:15px;font-weight:600;margin:0}.team-tabs{display:flex;gap:8px;padding:16px 20px 0}.team-tab{align-items:center;background:var(--color-surface);border:2px solid #0000;border-radius:10px;color:var(--color-text-secondary);cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:500;gap:8px;justify-content:center;padding:10px 16px;transition:all .2s ease}.team-tab.active,.team-tab:hover{background:var(--color-surface-hover)}.team-tab.active{border-color:var(--color-border-medium);color:var(--color-text-main)}.team-color-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.add-player-form{display:flex;flex-direction:column;gap:16px;padding:20px}.form-row{display:flex;gap:12px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{color:var(--color-text-muted);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.form-group-number{flex:0 0 80px}.form-group-name,.form-group-position{flex:1 1}.input-large{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-sizing:border-box;color:var(--color-text-main);font-size:15px;padding:12px 14px;transition:all .2s ease;width:100%}.input-large:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #70dece26;outline:none}.input-large::placeholder{color:var(--color-text-muted)}select.input-large{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(13,41,63,0.4)' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;cursor:pointer;padding-right:32px}select.input-large option{background:var(--color-surface-raised);color:var(--color-text-main)}.btn-add-player{border-radius:10px;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:14px;width:100%}.btn-add-player span{font-size:18px}.form-divider{align-items:center;display:flex;gap:12px;padding:0 20px}.form-divider:after,.form-divider:before{background:var(--color-border);content:"";flex:1 1;height:1px}.form-divider span{color:var(--color-text-muted);font-size:12px;letter-spacing:1px;text-transform:uppercase}.import-section{padding:0 20px 20px}.btn-import{border-radius:10px;justify-content:center;padding:12px;width:100%}.player-summary-inline{display:flex;gap:8px}.team-count-badge{align-items:center;border:1px solid;border-radius:20px;color:var(--color-text-secondary);display:flex;font-size:13px;font-weight:600;gap:6px;padding:4px 10px}.roster-list{max-height:420px;overflow-y:auto;padding:12px}.roster-empty{align-items:center;color:var(--color-text-muted);display:flex;flex-direction:column;justify-content:center;padding:48px 20px}.roster-empty-icon{font-size:40px;margin-bottom:12px;opacity:.5}.roster-empty p{font-size:14px;margin:0}.roster-team-group{margin-bottom:16px}.roster-team-group:last-child{margin-bottom:0}.roster-team-label{border-left:3px solid;color:var(--color-text-muted);font-size:11px;font-weight:600;letter-spacing:.8px;margin-bottom:8px;padding:6px 12px;text-transform:uppercase}.roster-player-card{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;display:flex;gap:12px;margin-bottom:6px;padding:10px 12px;transition:all .15s ease}.roster-player-card:hover{background:var(--color-surface-hover);border-color:var(--color-border-medium)}.roster-player-number{align-items:center;border-radius:8px;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:36px;justify-content:center;width:36px}.roster-player-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.roster-player-name{color:var(--color-text-main);font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roster-player-position{color:var(--color-text-muted);font-size:12px}.btn-icon-small{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--color-text-muted);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;padding:0;transition:all .2s ease;width:28px}.btn-icon-small:hover{background:#dc35451a;color:var(--color-error)}.roster-list::-webkit-scrollbar{width:6px}.roster-list::-webkit-scrollbar-track{background:#0000}.roster-list::-webkit-scrollbar-thumb{background:var(--color-border-medium);border-radius:3px}.roster-list::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@media (max-width:700px){.player-layout{grid-template-columns:1fr}}.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:var(--color-text-muted)!important;font-size:12px!important;margin:0!important}.calibration-step .step-header:after{background:var(--color-border);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:1px solid var(--color-border);border-radius:16px;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:var(--color-primary);height:50px;width:50px}.btn-control.btn-play:hover{background:var(--color-primary-hover)}.calibration-anleitung{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;width:420px}.anleitung-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:16px 20px}.anleitung-header h3{color:var(--color-text-main);font-size:15px;font-weight:600;margin:0 0 8px}.anleitung-progress{display:flex;flex-direction:column;gap:4px}.anleitung-progress .progress-bar{background:var(--color-surface-dark);border-radius:3px;height:5px;margin-bottom:0;overflow:hidden}.anleitung-progress .progress-fill{background:var(--color-success);height:100%;transition:width .3s ease}.anleitung-progress>span{color:var(--color-text-secondary);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:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-muted);cursor:default;display:flex;font-size:11px;gap:6px;padding:6px 10px;transition:all .2s ease}.guide-step-compact:hover{background:var(--color-surface-hover);border-color:var(--color-border-medium)}.guide-step-compact.current{background:#70dece1f;border:1px solid #70dece66;color:var(--color-text-main)}.guide-step-compact.complete{background:#28a74514;color:var(--color-success)}.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:var(--color-surface);border-top:1px solid var(--color-border);display:flex;flex:1 1;flex-direction:column;min-height:0;padding:12px}.field-reference-section h4{color:var(--color-text-muted);font-size:11px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-align:center;text-transform:uppercase}.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:var(--color-text-secondary);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:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-secondary);cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.btn-icon-action:hover{background:#70dece26;border-color:#70dece66;color:var(--color-text-main)}.btn-icon-action.btn-danger:hover{background:#dc35451a;border-color:#dc35454d;color:var(--color-error)}.anleitung-footer{background:var(--color-surface);border-top:1px solid var(--color-border);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:var(--color-surface);border-radius:8px;height:auto;padding:12px;width:100%}.calibration-guide{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:12px;display:flex;flex-direction:column;flex-shrink:0;padding:20px;width:260px}.calibration-guide h3{color:var(--color-text-main);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:var(--color-surface);border-radius:8px;color:var(--color-text-muted);display:flex;font-size:14px;gap:12px;padding:10px 12px;transition:all .2s ease}.guide-step.current{background:#70dece1f;border:1px solid #70dece4d;color:var(--color-text-main)}.guide-step.complete{color:var(--color-success)}.guide-step-number{align-items:center;background:var(--color-surface-dark);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:var(--color-primary);color:var(--color-text-on-primary)}.guide-step.complete .guide-step-number{background:var(--color-success);color:#fff}.field-preview{margin-bottom:20px}.mini-field{background:var(--color-surface);border-radius:8px;height:auto;padding:8px;width:100%}.calibration-progress{margin-bottom:16px}.progress-bar{background:var(--color-surface-dark);border-radius:3px;height:6px;margin-bottom:8px;overflow:hidden}.progress-fill{background:var(--color-success);height:100%;transition:width .3s ease}.calibration-progress span{color:var(--color-text-secondary);font-size:13px}.btn-reset{justify-content:center;margin-top:auto;width:100%}.calibration-zoom-footer{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;border:1px solid #ffffff1f;border-radius:12px;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:#4488ff1f;color:#48f}.point-badge.optional{background:#ffaa441f;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:var(--color-surface);border-radius:8px;margin-bottom:16px;padding:10px 12px}.optional-toggle label{align-items:center;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:13px;gap:10px}.optional-toggle input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:18px;width:18px}.legend{background:var(--color-surface);border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:10px 12px}.legend-item{align-items:center;color:var(--color-text-secondary);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:#4488ff1a;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:#0000;border-radius:2px}.guide-steps::-webkit-scrollbar-thumb{background:var(--color-border-medium);border-radius:2px}.anleitung-content::-webkit-scrollbar{width:4px}.anleitung-content::-webkit-scrollbar-track{background:#0000;border-radius:2px}.anleitung-content::-webkit-scrollbar-thumb{background:var(--color-border-medium);border-radius:2px}.summary-step{max-width:700px!important}.summary-cards{display:flex;flex-direction:column;gap:12px;margin-bottom:28px}.summary-card{align-items:center;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-sm);display:flex;gap:16px;padding:18px 20px;transition:border-color .2s ease}.summary-card.complete{border-color:#70dece66}.summary-card.incomplete{border-color:var(--color-border)}.summary-card-icon{align-items:center;background:var(--color-surface);border-radius:12px;color:var(--color-text-muted);display:flex;flex-shrink:0;font-size:18px;font-weight:600;height:48px;justify-content:center;width:48px}.summary-card.complete .summary-card-icon{background:#70dece1f;color:var(--color-primary)}.summary-card-content{flex:1 1;min-width:0}.summary-card-content h4{color:var(--color-text-main);font-size:15px;font-weight:600;margin:0 0 4px}.summary-card-content p{color:var(--color-text-muted);font-size:13px;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:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-sm);margin-bottom:28px;overflow:hidden;padding:0}.quick-tips h3{background:var(--color-surface);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:13px;font-weight:600;letter-spacing:.5px;margin:0;padding:16px 20px;text-transform:uppercase}.quick-tips ul{list-style:none;margin:0;padding:16px 20px}.quick-tips li{border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);font-size:14px;padding:10px 0}.quick-tips li:last-child{border-bottom:none;padding-bottom:0}.quick-tips li strong{color:var(--color-primary-dark);font-weight:600}.start-section{text-align:center}.btn-start{border-radius:12px;font-size:18px;font-weight:600;padding:16px 48px}@media (max-width:1024px){.onboarding-video-panel{width:280px}}@media (max-width:768px){.onboarding-screen{flex-direction:column}.onboarding-video-panel{display:none}}@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:var(--color-background);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 var(--color-border);flex:1 1;position:relative;transition:width .3s ease}.events-section{background:var(--color-surface);border-left:1px solid var(--color-border);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:var(--color-surface-raised);border-radius:0;border-top:1px solid var(--color-border);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 var(--color-border);border-right:none;height:60vh}.events-section{border-left:none;border-top:1px solid var(--color-border);height:calc(40vh - 56px);width:100%}}@media (max-width:480px){.app.calibration-mode{padding-bottom:60vh;padding-right:0}}.loading{align-items:center;color:var(--color-text-muted);display:flex;flex-direction:column;gap:16px;justify-content:center;padding:32px}.loading-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--color-border);border:3px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:32px;width:32px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error{background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);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:var(--color-text-muted);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:var(--color-text-secondary);font-weight:500;margin-bottom:8px}.empty-state p{font-size:14px;margin-bottom:4px}.empty-subtitle{opacity:.7}[title]:hover:after{background:var(--color-overlay-heavy);border-radius:4px;bottom:100%;color:var(--color-text-on-dark);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}:root{--color-brand-aquamarine:#70dece;--color-brand-elephant:#0d293f;--color-brand-white:#fff;--color-primary:var(--color-brand-aquamarine);--color-primary-hover:#5cc9b9;--color-primary-dark:#4ab5a5;--color-background:var(--color-brand-white);--color-text-main:var(--color-brand-elephant);--color-surface:#f4f6f8;--color-surface-raised:#fff;--color-surface-hover:#eaf0f5;--color-surface-dark:#e2e8f0;--color-border:#0d293f1f;--color-border-medium:#0d293f33;--color-border-focus:var(--color-brand-aquamarine);--color-text-secondary:#0d293fa6;--color-text-muted:#0d293f66;--color-text-on-primary:var(--color-brand-elephant);--color-text-on-dark:#fff;--color-error:#dc3545;--color-error-hover:#c82333;--color-error-bg:#dc354514;--color-success:#28a745;--color-success-hover:#218838;--color-success-bg:#28a74514;--color-warning:#f59e0b;--color-warning-hover:#d97706;--color-info:#3b82f6;--color-overlay:#0d293f99;--color-overlay-heavy:#0d293fd9;--font-family-base:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-weight-regular:400;--font-weight-medium:500;--font-weight-bold:700;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--shadow-sm:0 1px 3px #0d293f14;--shadow-md:0 4px 12px #0d293f1a;--shadow-lg:0 8px 24px #0d293f1f;--shadow-xl:0 16px 48px #0d293f26}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#fff;background-color:var(--color-background);color:#0d293f;color:var(--color-text-main);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-family:var(--font-family-base);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:#70dece;background:var(--color-primary);color:#0d293f;color:var(--color-text-on-primary)}.btn-primary:hover{background:#5cc9b9;background:var(--color-primary-hover)}.btn-secondary{background:#e2e8f0;background:var(--color-surface-dark);color:#0d293f;color:var(--color-text-main)}.btn-secondary:hover{background:#eaf0f5;background:var(--color-surface-hover)}.btn-success{background:#28a745;background:var(--color-success);color:#fff;color:var(--color-text-on-dark)}.btn-success:hover{background:#218838;background:var(--color-success-hover)}.btn-warning{background:#f59e0b;background:var(--color-warning);color:#fff;color:var(--color-text-on-dark)}.btn-warning:hover{background:#d97706;background:var(--color-warning-hover)}.btn-danger{background:#dc3545;background:var(--color-error);color:#fff;color:var(--color-text-on-dark)}.btn-danger:hover{background:#c82333;background:var(--color-error-hover)}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-icon{align-items:center;background:#0000;border:none;border-radius:4px;color:#0d293fa6;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.btn-icon:hover{background:#eaf0f5;background:var(--color-surface-hover);color:#0d293f;color:var(--color-text-main)}.btn-icon.active{background:#70dece;background:var(--color-primary);color:#0d293f;color:var(--color-text-on-primary)}input,select,textarea{background:#fff;background:var(--color-surface-raised);border:1px solid #0d293f1f;border:1px solid var(--color-border);border-radius:4px;color:#0d293f;color:var(--color-text-main);font-size:14px;padding:8px 12px;transition:border-color .2s ease}input:focus,select:focus,textarea:focus{border-color:#70dece;border-color:var(--color-border-focus);outline:none}::placeholder{color:#0d293f66;color:var(--color-text-muted)}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f4f6f8;background:var(--color-surface)}::-webkit-scrollbar-thumb{background:#0d293f33;background:var(--color-border-medium);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#0d293f66;background:var(--color-text-muted)}