.replay-stats-panel>*+*{margin-top:1.5rem}.stats-tabs{width:100%}.stats-tabs-list{background-color:#f3f4f6;border-radius:.5rem;gap:.25rem;width:100%;padding:.25rem;display:flex}@media (prefers-color-scheme:dark){.stats-tabs-list{background-color:#1f2937}}.stats-tabs-list [data-slot=tabs-trigger]{color:#6b7280;border-radius:.375rem;flex:1;padding:.375rem .5rem;font-size:.75rem;transition:all .15s}@media (prefers-color-scheme:dark){.stats-tabs-list [data-slot=tabs-trigger]{color:#9ca3af}}.stats-tabs-list [data-slot=tabs-trigger][data-state=active]{color:#111827;background-color:#fff;box-shadow:0 1px 2px #0000000d}@media (prefers-color-scheme:dark){.stats-tabs-list [data-slot=tabs-trigger][data-state=active]{color:#f3f4f6;background-color:#111827}}[data-slot=tabs-content]>*+*{margin-top:1.25rem}.stats-section>*+*{margin-top:.75rem}.stats-section-title{color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;font-size:.875rem;font-weight:600;display:flex}@media (prefers-color-scheme:dark){.stats-section-title{color:#d1d5db}}.section-chevron{opacity:.5;flex-shrink:0;width:1rem;height:1rem;transition:transform .2s}[data-state=closed] .section-chevron{transform:rotate(-90deg)}.stats-grid-2{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.stat-card{border:1px solid;border-radius:.5rem;padding:.75rem}.stat-card.blue{background-color:#eff6ff;border-color:#bfdbfe}@media (prefers-color-scheme:dark){.stat-card.blue{background-color:color-mix(in srgb,var(--blue-accent-light)30%,transparent);border-color:color-mix(in srgb,var(--blue-dark)80%,black)}}.stat-card.purple{background-color:#faf5ff;border-color:#e9d5ff}@media (prefers-color-scheme:dark){.stat-card.purple{background-color:#581c874d;border-color:#6b21a8}}.stat-card.amber{background-color:#fefce8;border-color:#fde68a}@media (prefers-color-scheme:dark){.stat-card.amber{background-color:#78350f4d;border-color:#92400e}}.stat-card.gray{background-color:#f9fafb;border-color:#e5e7eb}@media (prefers-color-scheme:dark){.stat-card.gray{background-color:#111827;border-color:#1f2937}}.stat-card.white{background-color:#fff;border-color:#e5e7eb}@media (prefers-color-scheme:dark){.stat-card.white{background-color:#030712;border-color:#1f2937}}.stat-card-label{margin-bottom:.25rem;font-size:.75rem;font-weight:500}.stat-card-label.blue{color:var(--blue-dark)}@media (prefers-color-scheme:dark){.stat-card-label.blue{color:color-mix(in srgb,var(--blue-light)80%,white)}}.stat-card-label.purple{color:#9333ea}@media (prefers-color-scheme:dark){.stat-card-label.purple{color:#c084fc}}.stat-card-label.amber{color:#b45309}@media (prefers-color-scheme:dark){.stat-card-label.amber{color:#fbbf24}}.stat-row{justify-content:space-between;align-items:center;display:flex}.stat-row+.stat-row{margin-top:.25rem}.stat-row-label{color:#4b5563;font-size:.75rem}@media (prefers-color-scheme:dark){.stat-row-label{color:#9ca3af}}.stat-row-value{font-size:.875rem;font-weight:600}.stat-row-value.blue{color:var(--blue-dark)}@media (prefers-color-scheme:dark){.stat-row-value.blue{color:color-mix(in srgb,var(--blue-light)80%,white)}}.stat-row-value.red{color:var(--red-dark)}@media (prefers-color-scheme:dark){.stat-row-value.red{color:color-mix(in srgb,var(--red-dark)80%,white)}}.stat-row-value.amber{color:#d97706}@media (prefers-color-scheme:dark){.stat-row-value.amber{color:#fbbf24}}.stat-row-value.gray{color:#111827}@media (prefers-color-scheme:dark){.stat-row-value.gray{color:#f3f4f6}}.stat-highlight{justify-content:space-between;align-items:center;display:flex}.stat-highlight-label{color:#b45309;font-size:.875rem;font-weight:500}@media (prefers-color-scheme:dark){.stat-highlight-label{color:#fbbf24}}.stat-highlight-value{color:#d97706;font-size:1.125rem;font-weight:700}@media (prefers-color-scheme:dark){.stat-highlight-value{color:#fbbf24}}.player-speeds-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.player-numeric-card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:.625rem}@media (prefers-color-scheme:dark){.player-numeric-card{background-color:#111827;border-color:#1f2937}}.player-numeric-row{justify-content:space-between;align-items:center;display:flex}.player-numeric-label{color:#353a41;flex-direction:column;font-size:.75rem;font-weight:500;display:flex}@media (prefers-color-scheme:dark){.player-numeric-label{color:#c7d1e0}}.player-numeric-label .player-numeric-sublabel{opacity:.9;font-size:.9em}.player-numeric-value{color:#111827;flex-direction:column;gap:.15rem;font-size:.75rem;font-weight:600;display:flex}@media (prefers-color-scheme:dark){.player-numeric-value{color:#f3f4f6}}.player-events-list>*+*{margin-top:.75rem}.player-event-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:.75rem}@media (prefers-color-scheme:dark){.player-event-card{background-color:#030712;border-color:#1f2937}}.player-event-title{color:#111827;margin-bottom:.5rem;font-size:.875rem;font-weight:600}@media (prefers-color-scheme:dark){.player-event-title{color:#f3f4f6}}.player-event-grid{grid-template-columns:repeat(2,1fr);gap:.25rem 1rem;display:grid}.event-row{justify-content:space-between;align-items:center;display:flex}.event-name{color:#313841;font-size:.75rem}@media (prefers-color-scheme:dark){.event-name{color:#c9d2e2}}.event-count{color:#111827;font-size:.75rem;font-weight:500}@media (prefers-color-scheme:dark){.event-count{color:#f3f4f6}}.team-position-table{margin-top:1rem}.team-position-table+.team-position-table{margin-top:1.5rem}.team-table-title{margin-bottom:.5rem;font-size:.875rem;font-weight:600}.team-table-title.blue{color:var(--blue-dark)}@media (prefers-color-scheme:dark){.team-table-title.blue{color:color-mix(in srgb,var(--blue-light)80%,white)}}.team-table-title.red{color:var(--red-dark)}@media (prefers-color-scheme:dark){.team-table-title.red{color:color-mix(in srgb,var(--red-dark)80%,white)}}.position-table{border-collapse:collapse;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;width:100%;overflow:hidden}@media (prefers-color-scheme:dark){.position-table{background-color:#030712;border-color:#1f2937}}.position-table th{text-align:left;color:#374151;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;padding:.75rem;font-size:.75rem;font-weight:600}@media (prefers-color-scheme:dark){.position-table th{color:#d1d5db;background-color:#111827;border-bottom-color:#1f2937}}.position-table td{vertical-align:top;border-right:1px solid #e5e7eb;padding:.75rem}@media (prefers-color-scheme:dark){.position-table td{border-right-color:#1f2937}}.position-table td:last-child{border-right:none}.table-player-row{color:#374151;padding:.25rem 0;font-size:.75rem}@media (prefers-color-scheme:dark){.table-player-row{color:#d1d5db}}.table-player-row+.table-player-row{margin-top:.125rem}.stats-details-dropdown{margin-bottom:.25rem}.stats-details-trigger{color:#6b7280;cursor:pointer;background:0 0;border:1px solid #e5e7eb;border-radius:.375rem;align-items:center;gap:.375rem;padding:.375rem .625rem;font-size:.75rem;font-weight:500;transition:all .15s;display:flex}@media (prefers-color-scheme:dark){.stats-details-trigger{color:#9ca3af;border-color:#374151}}.stats-details-trigger:hover{color:#374151;border-color:#9ca3af}@media (prefers-color-scheme:dark){.stats-details-trigger:hover{color:#d1d5db;border-color:#6b7280}}.stats-details-trigger .section-chevron{width:.875rem;height:.875rem;margin-left:auto}.stats-details-list{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;flex-direction:column;gap:.5rem;margin-top:.5rem;padding:.625rem;display:flex}@media (prefers-color-scheme:dark){.stats-details-list{background-color:#111827;border-color:#1f2937}}.stats-details-item{flex-direction:column;gap:.125rem;display:flex}.stats-details-item-title{color:#374151;font-size:.75rem;font-weight:600}@media (prefers-color-scheme:dark){.stats-details-item-title{color:#d1d5db}}.stats-details-item-desc{color:#6b7280;font-size:.7rem;line-height:1.4}@media (prefers-color-scheme:dark){.stats-details-item-desc{color:#9ca3af}}.boost-progress{background-color:#00000014;border-radius:3px;height:6px}@media (prefers-color-scheme:dark){.boost-progress{background-color:#ffffff1a}}.boost-progress [data-slot=progress-indicator]{background-color:var(--boost-color);transition:transform .3s}
.team-table{border:2px solid;border-radius:.75rem;overflow:hidden}.team-table.blue-team{background-color:var(--blue-accent-light);border-color:var(--blue-light)}@media (prefers-color-scheme:dark){.team-table.blue-team{background-color:var(--blue-accent-dark);border-color:var(--blue-dark)}}.team-table.red-team{background-color:var(--red-accent-light);border-color:var(--red-light)}@media (prefers-color-scheme:dark){.team-table.red-team{background-color:var(--red-accent-dark);border-color:var(--red-dark)}}.team-header{color:#fff;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.team-title{text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:1rem;font-weight:700}.team-score{font-size:1.25rem;font-weight:700}.table-wrapper{overflow-x:auto}.score-table{border-collapse:collapse;width:100%;font-size:.875rem}.score-table thead{background-color:#0003}.score-table thead tr{border-bottom:1px solid #ffffff1a}.score-table tbody{background-color:#ffffff0d}.score-table tbody tr{border-bottom:1px solid #ffffff0d;transition:background-color .15s}.score-table tbody tr:hover{background-color:#ffffff1a}.score-table tbody tr:last-child{border-bottom:none}.score-table th,.score-table td{text-align:left;color:#fff;padding:.5rem .75rem}.score-table th{text-transform:uppercase;letter-spacing:.025em;white-space:nowrap;font-size:.75rem;font-weight:600}.player-header{min-width:120px;text-align:left!important}.stat-cell{font-variant-numeric:tabular-nums;text-align:center!important}.points-cell{background-color:#ffffff1a;font-weight:700}.stat-header{min-width:60px;text-align:center!important}.points-header{background-color:#ffffff1a;font-weight:700}.player-name-cell{align-items:center;gap:.25rem;font-weight:600;display:flex}.player-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (max-width:768px){.score-table{font-size:.75rem}.score-table th,.score-table td{padding:.375rem .5rem}.score-table th{font-size:.625rem}.team-title{font-size:.875rem}.team-score{font-size:1rem}.stat-header{min-width:45px}}
.team-score-table-container{width:100%;margin-bottom:2rem}.team-tables-wrapper{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:1280px){.team-tables-wrapper{grid-template-columns:1fr}}.victory-icon{color:#22c55e;margin-left:2em;font-size:.8rem;font-weight:700}.mvp-icon{font-size:1rem}.overtime-icon{font-size:.875rem}
.dynamic-heatmap{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;width:100%;padding:1rem}@media (prefers-color-scheme:dark){.dynamic-heatmap{background:#111827;border-color:#1f2937}}
.movement-trails{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem}@media (prefers-color-scheme:dark){.movement-trails{background:#111827;border-color:#1f2937}}
.boost-pickups{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem}@media (prefers-color-scheme:dark){.boost-pickups{background:#111827;border-color:#1f2937}}
.passing-map{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;flex-direction:column;align-items:center;width:100%;padding:1rem;display:flex}@media (prefers-color-scheme:dark){.passing-map{background:#111827;border-color:#1f2937}}.passing-map .pass-type-selector{flex-wrap:wrap;gap:1rem;margin-bottom:.75rem;display:flex}.passing-map .pass-type-selector .pass-type-checkbox{cursor:pointer;align-items:center;gap:.4rem;font-size:.85rem;font-weight:500;display:flex}.passing-map .pass-type-selector .pass-type-checkbox input[type=checkbox]{cursor:pointer;width:15px;height:15px}.passing-map .pass-type-selector .pass-type-checkbox span{-webkit-user-select:none;user-select:none}.passing-map .canvas-wrapper .map-tooltip{pointer-events:none;color:#fff;white-space:nowrap;z-index:10;background:#000000d9;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;position:absolute;transform:translate(-50%)}
.shooting-map{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;flex-direction:column;align-items:center;width:100%;padding:1rem;display:flex}@media (prefers-color-scheme:dark){.shooting-map{background:#111827;border-color:#1f2937}}.shooting-map .shot-type-selector{flex-wrap:wrap;gap:1rem;margin-bottom:.75rem;display:flex}.shooting-map .shot-type-selector .shot-type-checkbox{cursor:pointer;align-items:center;gap:.4rem;font-size:.85rem;font-weight:500;display:flex}.shooting-map .shot-type-selector .shot-type-checkbox [data-slot=checkbox]{cursor:pointer}.shooting-map .shot-type-selector .shot-type-checkbox span{-webkit-user-select:none;user-select:none}.shooting-map .canvas-wrapper .map-tooltip{pointer-events:none;color:#fff;white-space:nowrap;z-index:10;background:#000000d9;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;position:absolute;transform:translate(-50%)}
.chemistry-map{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;flex-direction:column;align-items:center;width:100%;padding:1rem;display:flex}@media (prefers-color-scheme:dark){.chemistry-map{background:#111827;border-color:#1f2937}}.chemistry-map-version-bar{justify-content:space-between;align-items:center;gap:1rem;width:100%;margin-bottom:.75rem;display:flex}.chemistry-map-version-buttons{gap:.5rem;display:flex}.chemistry-map-version-btn{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;padding:.35rem .75rem;font-size:.8rem;font-weight:500;transition:all .15s}.chemistry-map-version-btn:hover{background:#f3f4f6}.chemistry-map-version-btn.active{color:#fff;background:#3b82f6;border-color:#3b82f6}@media (prefers-color-scheme:dark){.chemistry-map-version-btn{color:#d1d5db;background:#1f2937;border-color:#374151}.chemistry-map-version-btn:hover{background:#374151}.chemistry-map-version-btn.active{color:#fff;background:#3b82f6;border-color:#3b82f6}}.chemistry-map-version-note{color:#9ca3af;text-align:right;flex-shrink:1;font-size:.75rem;font-style:italic}
.dribble-map{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;flex-direction:column;align-items:center;width:100%;padding:1rem;display:flex}@media (prefers-color-scheme:dark){.dribble-map{background:#111827;border-color:#1f2937}}.dribble-map .canvas-wrapper .map-tooltip{pointer-events:none;color:#fff;white-space:nowrap;z-index:10;background:#000000d9;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;position:absolute;transform:translate(-50%)}
.timeline-view{flex-direction:column;gap:.5rem;width:100%;display:flex}.timeline-view .timeline-stats-dropdown{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem}@media (prefers-color-scheme:dark){.timeline-view .timeline-stats-dropdown{background:#111827;border-color:#1f2937}}.timeline-view .timeline-stats-dropdown .timeline-stats-summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.875rem;font-weight:600;display:flex}.timeline-view .timeline-stats-dropdown .timeline-stats-summary:before{content:"▶";color:#6b7280;font-size:.7rem;transition:transform .2s}.timeline-view .timeline-stats-dropdown[data-state=open]>.timeline-stats-summary:before{transform:rotate(90deg)}.timeline-view .timeline-stats-dropdown .timeline-stats-options{flex-direction:column;gap:.5rem;padding:0 1rem .75rem;display:flex}.timeline-view .timeline-stats-dropdown .timeline-stats-options .timeline-stats-category .timeline-stats-category-label{text-transform:uppercase;letter-spacing:.03em;color:#9ca3af;margin-bottom:.25rem;font-size:.75rem;font-weight:600}@media (prefers-color-scheme:dark){.timeline-view .timeline-stats-dropdown .timeline-stats-options .timeline-stats-category .timeline-stats-category-label{color:#6b7280}}.timeline-view .timeline-stats-dropdown .timeline-stats-options .timeline-stats-category .timeline-stats-category-items{flex-wrap:wrap;gap:.25rem .75rem;display:flex}.timeline-view .timeline-stats-dropdown .timeline-stats-options .timeline-stat-checkbox{cursor:pointer;color:#6b7280;align-items:center;gap:.35rem;font-size:.8rem;transition:color .2s;display:flex}.timeline-view .timeline-stats-dropdown .timeline-stats-options .timeline-stat-checkbox:hover{color:#111827}@media (prefers-color-scheme:dark){.timeline-view .timeline-stats-dropdown .timeline-stats-options .timeline-stat-checkbox:hover{color:#e5e7eb}.timeline-view .timeline-stats-dropdown .timeline-stats-options .timeline-stat-checkbox{color:#9ca3af}}.timeline-view .timeline-canvas-wrapper{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;max-width:100%;padding:1rem}@media (prefers-color-scheme:dark){.timeline-view .timeline-canvas-wrapper{background:#111827;border-color:#1f2937}}.timeline-view .timeline-time{color:#6b7280;justify-content:space-between;padding:0 .5rem;font-family:ui-monospace,monospace;font-size:.8rem;display:flex}@media (prefers-color-scheme:dark){.timeline-view .timeline-time{color:#9ca3af}}.timeline-view .timeline-track-wrapper{height:40px;padding:12px 0 0;position:relative}.timeline-view .timeline-track-wrapper .event-marker{z-index:2;cursor:pointer;background:0 0;border:none;border-radius:50%;padding:2px;line-height:0;transition:transform .1s;position:absolute;top:-4px;transform:translate(-50%)}.timeline-view .timeline-track-wrapper .event-marker:hover{z-index:3;transform:translate(-50%)scale(1.6)}.timeline-view .timeline-track-wrapper .overtime-line{z-index:1;pointer-events:none;background:#f60;width:2px;position:absolute;top:0;bottom:0}.timeline-view .timeline-track-wrapper .overtime-line:after{content:"OT";color:#f60;white-space:nowrap;font-size:9px;font-weight:700;position:absolute;top:-14px;left:50%;transform:translate(-50%)}.timeline-view .timeline-track-wrapper .celebration-zone{z-index:0;pointer-events:none;background:#ffd7001f;border-left:1px solid #ffd70059;position:absolute;top:0;bottom:0}.timeline-view .timeline-track-wrapper .timeline-slider{z-index:1;position:relative}.timeline-view .playback-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem;display:flex}.timeline-view .playback-controls .speed-select{width:auto}
.visualization-panel{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem;transition:box-shadow .2s;box-shadow:0 1px 2px #0000000d}.visualization-panel:hover{box-shadow:0 4px 6px -1px #0000001a}@media (prefers-color-scheme:dark){.visualization-panel{background-color:#000;border-color:#1f2937}}.visualization-panel .visualization-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.visualization-panel .visualization-header h3{margin:0;font-size:1.125rem;font-weight:600}.visualization-panel .visualization-header .header-controls{align-items:center;gap:.5rem;display:flex}.visualization-panel .visualization-header .mode-toggle{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;gap:.5rem;height:auto;padding:.25rem;display:flex}@media (prefers-color-scheme:dark){.visualization-panel .visualization-header .mode-toggle{background:#111827;border-color:#1f2937}}.visualization-panel .visualization-header .mode-toggle [data-slot=tabs-trigger]{color:#9ca3af;cursor:pointer;box-shadow:none;background:0 0;border:none;border-radius:.25rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.visualization-panel .visualization-header .mode-toggle [data-slot=tabs-trigger]:hover{color:#111827;background:#e5e7eb}@media (prefers-color-scheme:dark){.visualization-panel .visualization-header .mode-toggle [data-slot=tabs-trigger]:hover{color:#e5e7eb;background:#1f2937}}.visualization-panel .visualization-header .mode-toggle [data-slot=tabs-trigger][data-state=active]{background:var(--blue-light);color:#fff;box-shadow:none}@media (prefers-color-scheme:dark){.visualization-panel .visualization-header .mode-toggle [data-slot=tabs-trigger][data-state=active]{background:var(--blue-dark)}}.visualization-panel .visualization-header .expand-btn{color:#111827;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:.375rem;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.visualization-panel .visualization-header .expand-btn:hover{background:#f3f4f6;box-shadow:0 1px 2px #0000000d}@media (prefers-color-scheme:dark){.visualization-panel .visualization-header .expand-btn{color:#e5e7eb;background:#000;border-color:#1f2937}.visualization-panel .visualization-header .expand-btn:hover{background:#111827}}.visualization-panel .visualization-header .expand-btn svg{width:20px;height:20px}.visualization-panel .player-controls{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:1.5rem;padding:1rem}@media (prefers-color-scheme:dark){.visualization-panel .player-controls{background:#111827;border-color:#1f2937}}.visualization-panel .player-controls [data-state=open]>.control-header:before{transform:rotate(90deg)}.visualization-panel .player-controls .player-grid{margin-top:1rem}.visualization-panel .player-controls .control-header{cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;gap:.5rem;width:100%;list-style:none;display:flex}.visualization-panel .player-controls .control-header:before{content:"▶";color:#6b7280;font-size:.7rem;transition:transform .2s}.visualization-panel .player-controls .control-header .control-label{text-align:left;font-weight:600}.visualization-panel .player-controls .control-header .quick-actions{align-items:center;gap:.5rem;display:flex}.visualization-panel .player-controls .control-header .quick-actions .ball-checkbox{cursor:pointer;background:#ff8c001a;border:2px solid #ff8c00;border-radius:.375rem;align-items:center;gap:.5rem;padding:.4rem .8rem;font-size:.875rem;font-weight:600;transition:all .2s;display:flex}.visualization-panel .player-controls .control-header .quick-actions .ball-checkbox:hover{background:#ff8c0033;box-shadow:0 1px 2px #0000000d}.visualization-panel .player-controls .control-header .quick-actions .ball-checkbox [data-slot=checkbox]{cursor:pointer}.visualization-panel .player-controls .control-header .quick-actions .ball-checkbox span{-webkit-user-select:none;user-select:none}.visualization-panel .player-controls .control-header .quick-actions .quick-btn{font-size:.875rem;font-weight:500}.visualization-panel .player-controls .control-header .quick-actions .quick-btn.blue{border-color:var(--blue-light);color:var(--blue-light)}.visualization-panel .player-controls .control-header .quick-actions .quick-btn.blue:hover{background:var(--blue-accent-light);color:#fff}@media (prefers-color-scheme:dark){.visualization-panel .player-controls .control-header .quick-actions .quick-btn.blue{border-color:var(--blue-dark);color:var(--blue-dark)}.visualization-panel .player-controls .control-header .quick-actions .quick-btn.blue:hover{background:var(--blue-accent-dark)}}.visualization-panel .player-controls .control-header .quick-actions .quick-btn.red{border-color:var(--red-light);color:var(--red-light)}.visualization-panel .player-controls .control-header .quick-actions .quick-btn.red:hover{background:var(--red-accent-light);color:#fff}@media (prefers-color-scheme:dark){.visualization-panel .player-controls .control-header .quick-actions .quick-btn.red{border-color:var(--red-dark);color:var(--red-dark)}.visualization-panel .player-controls .control-header .quick-actions .quick-btn.red:hover{background:var(--red-accent-dark)}}.visualization-panel .player-controls .player-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:768px){.visualization-panel .player-controls .player-grid{grid-template-columns:1fr}}.visualization-panel .player-controls .player-grid .team-section{background:#fff;border:1px solid #e5e7eb;border-radius:.375rem;padding:.75rem}@media (prefers-color-scheme:dark){.visualization-panel .player-controls .player-grid .team-section{background:#000;border-color:#1f2937}}.visualization-panel .player-controls .player-grid .team-section.blue-team{border-left:3px solid var(--blue-light)}@media (prefers-color-scheme:dark){.visualization-panel .player-controls .player-grid .team-section.blue-team{border-left-color:var(--blue-dark)}}.visualization-panel .player-controls .player-grid .team-section.red-team{border-left:3px solid var(--red-light)}@media (prefers-color-scheme:dark){.visualization-panel .player-controls .player-grid .team-section.red-team{border-left-color:var(--red-dark)}}.visualization-panel .player-controls .player-grid .team-section .team-label{text-transform:uppercase;letter-spacing:.025em;margin-bottom:.5rem;font-size:.875rem;font-weight:600}.visualization-panel .player-controls .player-grid .team-section.blue-team .team-label{color:var(--blue-light)}@media (prefers-color-scheme:dark){.visualization-panel .player-controls .player-grid .team-section.blue-team .team-label{color:var(--blue-dark)}}.visualization-panel .player-controls .player-grid .team-section.red-team .team-label{color:var(--red-light)}@media (prefers-color-scheme:dark){.visualization-panel .player-controls .player-grid .team-section.red-team .team-label{color:var(--red-dark)}}.visualization-panel .player-controls .player-grid .team-section .player-checkbox{cursor:pointer;color:#6b7280;align-items:center;gap:.5rem;padding:.4rem 0;transition:color .2s;display:flex}.visualization-panel .player-controls .player-grid .team-section .player-checkbox:hover{color:#111827}@media (prefers-color-scheme:dark){.visualization-panel .player-controls .player-grid .team-section .player-checkbox{color:#9ca3af}.visualization-panel .player-controls .player-grid .team-section .player-checkbox:hover{color:#e5e7eb}}.visualization-panel .player-controls .player-grid .team-section .player-checkbox [data-slot=checkbox]{cursor:pointer}.visualization-panel .player-controls .player-grid .team-section .player-checkbox span{font-size:.875rem}.visualization-panel .static-map-selector{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;flex-wrap:wrap;gap:.375rem;height:auto;margin-bottom:1rem;padding:.2rem;display:flex}@media (prefers-color-scheme:dark){.visualization-panel .static-map-selector{background:#111827;border-color:#1f2937}}.visualization-panel .static-map-selector [data-slot=tabs-trigger]{color:#9ca3af;cursor:pointer;box-shadow:none;background:0 0;border:none;border-radius:.25rem;padding:.375rem .75rem;font-size:.8rem;font-weight:500;transition:all .2s}.visualization-panel .static-map-selector [data-slot=tabs-trigger]:hover{color:#111827;background:#e5e7eb}@media (prefers-color-scheme:dark){.visualization-panel .static-map-selector [data-slot=tabs-trigger]:hover{color:#e5e7eb;background:#1f2937}}.visualization-panel .static-map-selector [data-slot=tabs-trigger][data-state=active]{background:var(--blue-light);color:#fff;box-shadow:none}@media (prefers-color-scheme:dark){.visualization-panel .static-map-selector [data-slot=tabs-trigger][data-state=active]{background:var(--blue-dark)}}.visualization-panel .visualization-content{margin-bottom:1rem}.visualization-panel .visualization-info{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;flex-wrap:wrap;justify-content:space-around;align-items:center;gap:1rem;padding:1rem;display:flex}@media (prefers-color-scheme:dark){.visualization-panel .visualization-info{background:#111827;border-color:#1f2937}}.visualization-panel .visualization-info .info-item{flex-direction:column;align-items:center;gap:.25rem;display:flex}.visualization-panel .visualization-info .info-item .info-label{color:#9ca3af;text-transform:uppercase;letter-spacing:.025em;font-size:.75rem}.visualization-panel .visualization-info .info-item .info-value{font-size:1rem;font-weight:600}.field-canvas-wrapper{justify-content:center;align-items:center;width:100%;max-height:80vh;display:flex;position:relative}.field-canvas-wrapper canvas{border-radius:.25rem;max-width:100%;max-height:100%;box-shadow:0 1px 2px #0000000d}
.team-blue{border-color:var(--blue-light);background-color:var(--blue-accent-light);border-width:2px}@media (prefers-color-scheme:dark){.team-blue{border-color:var(--blue-dark);background-color:var(--blue-accent-dark)}}.team-blue-bg{background-color:var(--blue-accent-light)}@media (prefers-color-scheme:dark){.team-blue-bg{background-color:var(--blue-accent-dark)}}.team-blue-bg-light{background-color:var(--blue-light)}@media (prefers-color-scheme:dark){.team-blue-bg-light{background-color:var(--blue-dark)}}.team-blue-border{border-color:var(--blue-light)}@media (prefers-color-scheme:dark){.team-blue-border{border-color:var(--blue-dark)}}.team-red{border-color:var(--red-light);background-color:var(--red-accent-light);border-width:2px}@media (prefers-color-scheme:dark){.team-red{border-color:var(--red-dark);background-color:var(--red-accent-dark)}}.team-red-bg{background-color:var(--red-accent-light)}@media (prefers-color-scheme:dark){.team-red-bg{background-color:var(--red-accent-dark)}}.team-red-bg-light{background-color:var(--red-light)}@media (prefers-color-scheme:dark){.team-red-bg-light{background-color:var(--red-dark)}}.team-red-border{border-color:var(--red-light)}@media (prefers-color-scheme:dark){.team-red-border{border-color:var(--red-dark)}}.page-container{min-height:100vh;padding:1rem;transition:color .2s}@media (min-width:768px){.page-container{padding:3rem}}.content-wrapper{max-width:80rem;margin-left:auto;margin-right:auto}.content-wrapper>*+*{margin-top:2rem}.page-header{padding-bottom:1.5rem}.page-title{letter-spacing:-.025em;font-size:1.875rem;font-weight:700}.page-subtitle{color:#9ca3af;margin-top:.5rem}.section-card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;padding:2rem}@media (prefers-color-scheme:dark){.section-card{background-color:#111827;border-color:#1f2937}}.info-section summary{color:#9ca3af}.error-message{color:#ef4444;margin-top:1rem;font-size:.875rem;font-weight:500}.upload-form{flex-direction:row;align-items:center;gap:1rem;display:flex}.file-input{color:#9ca3af;cursor:pointer;font-size:.875rem;transition:all .2s}.file-input::file-selector-button{color:#000;cursor:pointer;background-color:#fff;border:0;border-radius:.375rem;margin-right:1rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600}.file-input::file-selector-button:hover{background-color:#f3f4f6}.btn-primary{color:#000;cursor:pointer;background-color:#fff;border:none;border-radius:.375rem;padding:.5rem 1.5rem;font-weight:500;transition:all .2s}.btn-primary:hover:not(:disabled){background-color:#f3f4f6}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.results-grid{grid-template-columns:1fr;gap:2rem;display:grid}@media (min-width:1024px){.results-grid{grid-template-columns:1fr 1fr}}.panel-container>*+*{margin-top:1rem}.panel-title{font-size:1.125rem;font-weight:600}.stats-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;transition:box-shadow .2s;overflow:hidden;box-shadow:0 1px 2px #0000000d}.stats-card:hover{box-shadow:0 4px 6px -1px #0000001a}@media (prefers-color-scheme:dark){.stats-card{background-color:#000;border-color:#1f2937}}.stats-content{padding:1rem;font-family:ui-monospace,monospace;font-size:.75rem;line-height:1.625;overflow:auto}.heatmap-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:.5rem;transition:box-shadow .2s;box-shadow:0 1px 2px #0000000d}.heatmap-card:hover{box-shadow:0 4px 6px -1px #0000001a}@media (prefers-color-scheme:dark){.heatmap-card{background-color:#000;border-color:#1f2937}}.heatmap-clickable{cursor:pointer;position:relative}.heatmap-clickable:after{content:"🔍";opacity:0;pointer-events:none;font-size:1.5rem;transition:opacity .2s;position:absolute;top:1rem;right:1rem}.heatmap-clickable:hover:after{opacity:.7}.heatmap-clickable:hover{box-shadow:0 10px 15px -3px #0000001a}.heatmap-image{border-radius:.125rem;width:100%;height:auto}.image-modal-overlay{z-index:1000;cursor:zoom-out;background-color:#000000e6;justify-content:center;align-items:center;padding:2rem;animation:.2s ease-in-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.image-modal-content{cursor:default;max-width:95vw;max-height:95vh;position:relative}.image-modal-close{cursor:pointer;color:#000;background-color:#ffffffe6;border:none;border-radius:.375rem;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.25rem;transition:background-color .2s;display:flex;position:absolute;top:-2.5rem;right:0}.image-modal-close:hover{background-color:#fff}@media (prefers-color-scheme:dark){.image-modal-close{color:#fff;background-color:#000c}.image-modal-close:hover{background-color:#000000f2}}.image-modal-img{border-radius:.5rem;width:auto;max-width:100%;height:auto;max-height:95vh;box-shadow:0 25px 50px -12px #00000080}.visualization-modal-overlay{z-index:1000;background-color:#000000f2;justify-content:center;align-items:center;padding:2rem;animation:.2s ease-in-out fadeIn;display:flex;position:fixed;inset:0}.visualization-modal-content{background:#2a2a2a;border-radius:12px;width:95vw;max-height:95vh;padding:1.5rem;position:relative;overflow-y:auto}@media (prefers-color-scheme:light){.visualization-modal-content{background:#f8f9fa}}.visualization-modal-content::-webkit-scrollbar{width:8px}.visualization-modal-content::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.visualization-modal-content::-webkit-scrollbar-thumb{background:#444;border-radius:4px}.visualization-modal-content::-webkit-scrollbar-thumb:hover{background:#555}@media (prefers-color-scheme:light){.visualization-modal-content::-webkit-scrollbar-track{background:#e9ecef}.visualization-modal-content::-webkit-scrollbar-thumb{background:#adb5bd}.visualization-modal-content::-webkit-scrollbar-thumb:hover{background:#868e96}}.visualization-modal-close{cursor:pointer;color:#fff;z-index:10;background-color:#ffffff1a;border:1px solid #fff3;border-radius:.375rem;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1.5rem;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.visualization-modal-close:hover{background-color:#fff3;border-color:#ffffff4d}@media (prefers-color-scheme:light){.visualization-modal-close{color:#1a1a1a;background-color:#0000000d;border-color:#0000001a}.visualization-modal-close:hover{background-color:#0000001a;border-color:#0003}}.visualization-wrapper.visualization-expanded{z-index:1001;background:#2a2a2a;border-radius:12px;padding:1.5rem;animation:.2s ease-in-out fadeIn;position:fixed;inset:2.5vh 2.5vw;overflow-y:auto}@media (prefers-color-scheme:light){.visualization-wrapper.visualization-expanded{background:#f8f9fa}}.visualization-wrapper.visualization-expanded::-webkit-scrollbar{width:8px}.visualization-wrapper.visualization-expanded::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.visualization-wrapper.visualization-expanded::-webkit-scrollbar-thumb{background:#444;border-radius:4px}.visualization-wrapper.visualization-expanded::-webkit-scrollbar-thumb:hover{background:#555}@media (prefers-color-scheme:light){.visualization-wrapper.visualization-expanded::-webkit-scrollbar-track{background:#e9ecef}.visualization-wrapper.visualization-expanded::-webkit-scrollbar-thumb{background:#adb5bd}.visualization-wrapper.visualization-expanded::-webkit-scrollbar-thumb:hover{background:#868e96}}
