:root{--field-border-top:1px solid white;--field-border-right:1px solid white;--field-border-bottom:1px solid white}.field_cell{background-color:rgba(34,197,94,.3)}.field_margin{background-color:rgba(22,163,74,.5)}.highlighted{background-color:rgba(250,204,21,.6)!important}.highlighted.pass{background-color:rgba(59,130,246,.6)!important}.highlighted.tackle{background-color:rgba(219,137,31,.885)!important}.highlighted.shot{background-color:rgba(239,68,68,.6)!important}.highlighted.hold{background-color:rgba(100,116,139,.55)!important}.highlighted.unbalances:after{content:"";position:absolute;top:0;right:0;border-color:transparent #7c3aed transparent transparent;border-style:solid;border-width:0 10px 10px 0}.player.off-balance{transform:rotate(-18deg)}.off-balance-badge{position:absolute;top:-4px;right:-4px;width:12px;height:12px;border-radius:9999px;background:#7c3aed;border:2px solid #fff;z-index:5}.field-cell{border:1px solid rgba(255,255,255,.3)}.field-cell.field_margin{border:0}.field-border-left{border-left:2px solid white}.field-border-right{border-right:2px solid white}.field-border-top{border-top:2px solid white}.field-border-bottom{border-bottom:2px solid white}.field-border-dotted-left{border-left:0}.field-border-dotted-right{border-right:0}.field{width:100%;max-width:800px;overflow-x:auto;height:600px;margin:0 auto;background-color:#16a34a;position:relative;box-shadow:0 8px 32px rgba(0,0,0,.3);border-radius:8px}.field .grid{padding:20px;min-width:500px}.field .grid:before{top:20px;bottom:20px;width:2px;background:white;transform:translateX(-50%)}.field .grid:after,.field .grid:before{content:"";position:absolute;left:50%;z-index:1;pointer-events:none}.field .grid:after{top:50%;width:120px;height:120px;border:2px solid white;border-radius:50%;transform:translate(-50%,-50%)}.player{position:relative;width:100%;height:100%;z-index:2;pointer-events:none}.player-figure{position:absolute;bottom:0;height:108%;overflow:visible;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35));transition:left .2s ease,width .2s ease}.player.shared .player-figure{height:100%}.ball.action-done,.player.action-done{opacity:.5}.player-square{position:absolute;aspect-ratio:1;height:auto;transform:translateY(-50%);overflow:visible;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}.theme-circles .ball.ball-duel:after,.theme-topdown .ball.ball-duel:after{bottom:auto;top:50%;left:50%;transform:translate(-50%,-50%);width:26%}.theme-circles .ball.ball-duel-team1:after,.theme-topdown .ball.ball-duel-team1:after{top:20%;left:68%}.theme-circles .ball.ball-duel-team2:after,.theme-topdown .ball.ball-duel-team2:after{top:80%;left:32%}.theme-circles .ball.ball-front-right:after,.theme-topdown .ball.ball-front-right:after{bottom:auto;top:50%;right:-8%;transform:translateY(-50%)}.theme-circles .ball.ball-front-left:after,.theme-topdown .ball.ball-front-left:after{bottom:auto;top:50%;left:-8%;transform:translateY(-50%)}.theme-circles .ball.ball-free:after,.theme-topdown .ball.ball-free:after{bottom:auto;top:50%;transform:translate(-50%,-50%)}.ball{position:relative;width:100%;height:100%;z-index:10;pointer-events:none}.ball:after{content:"";position:absolute;bottom:2px;left:50%;transform:translateX(-50%);width:34%;aspect-ratio:1;max-width:16px;background-image:url(/ball.svg);background-color:white;border-radius:50%;background-size:cover;background-repeat:no-repeat;box-shadow:0 1px 2px rgba(0,0,0,.5)}.ball.ball-front-right:after{left:auto;right:4%;transform:none}.ball.ball-front-left:after{left:4%;transform:none}.ball.ball-duel:after{bottom:-5px}.ball.ball-duel-team1:after{left:6%;transform:none}.ball.ball-duel-team2:after{left:auto;right:6%;transform:none}.game-controls{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.game-controls h3{color:#495057;border-bottom:2px solid #dee2e6;padding-bottom:8px}.score-display{background:linear-gradient(135deg,#ffffff,#f8f9fa);padding:16px;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1);border:1px solid #dee2e6}.team1-score{color:#dc3545}.team2-score{color:#007bff}.debug-panel{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.debug-panel h3{color:#495057;border-bottom:2px solid #dee2e6;padding-bottom:8px}.cell-1-2,.cell-2-2,.cell-3-2{border-top:1px solid white}.cell-1-8,.cell-2-8,.cell-3-8{border-bottom:1px solid white}.cell-3-2,.cell-3-3,.cell-3-4,.cell-3-5,.cell-3-6,.cell-3-7,.cell-3-8{border-right:1px solid white}.cell-13-2,.cell-14-2,.cell-15-2{border-top:1px solid white}.cell-13-8,.cell-14-8,.cell-15-8{border-bottom:1px solid white}.cell-13-2,.cell-13-3,.cell-13-4,.cell-13-5,.cell-13-6,.cell-13-7,.cell-13-8{border-left:1px solid white}.cell-0-0,.cell-1-0,.cell-10-0,.cell-11-0,.cell-12-0,.cell-13-0,.cell-14-0,.cell-15-0,.cell-2-0,.cell-3-0,.cell-4-0,.cell-5-0,.cell-6-0,.cell-7-0,.cell-8-0,.cell-9-0{border-top:4px solid white}.cell-0-10,.cell-1-10,.cell-10-10,.cell-11-10,.cell-12-10,.cell-13-10,.cell-14-10,.cell-15-10,.cell-2-10,.cell-3-10,.cell-4-10,.cell-5-10,.cell-6-10,.cell-7-10,.cell-8-10,.cell-9-10{border-bottom:4px solid white}.cell-1-0,.cell-1-1,.cell-1-10,.cell-1-2,.cell-1-8,.cell-1-9{border-left:4px solid white}.cell-15-0,.cell-15-1,.cell-15-10,.cell-15-2,.cell-15-8,.cell-15-9{border-right:4px solid white}.cell-0-3,.cell-0-4,.cell-0-5,.cell-0-6,.cell-0-7{border-left:4px solid white!important;border-right:4px solid white!important;overflow:hidden}.cell-0-3{border-top:4px solid white!important;border-top-left-radius:30px}.cell-0-7{border-left:4px solid white!important;border-right:4px solid white!important;overflow:hidden;border-bottom:4px solid white!important;border-bottom-left-radius:30px}.cell-16-3,.cell-16-4,.cell-16-5,.cell-16-6,.cell-16-7{border-left:4px solid white!important;border-right:4px solid white!important;overflow:hidden}.cell-16-3{border-top:4px solid white!important;border-top-right-radius:30px}.cell-16-7{border-left:4px solid white!important;border-right:4px solid white!important;overflow:hidden;border-bottom:4px solid white!important;border-bottom-right-radius:30px}.cell-0-3:before,.cell-0-4:before,.cell-0-5:before,.cell-0-6:before,.cell-0-7:before,.cell-16-3:before,.cell-16-4:before,.cell-16-5:before,.cell-16-6:before,.cell-16-7:before{content:"";position:absolute;width:100%;height:100%;background-image:linear-gradient(90deg,rgba(255,255,255,.3) 1px,transparent 0),linear-gradient(0deg,rgba(255,255,255,.3) 1px,transparent 0);background-size:8px 8px;border-radius:0;box-sizing:border-box}.gates{border-left:4px solid white!important;border-right:4px solid white!important;overflow:hidden}.gates:before{content:"";position:absolute;width:100%;height:100%;background-image:linear-gradient(90deg,rgba(255,255,255,.3) 1px,transparent 0),linear-gradient(0deg,rgba(255,255,255,.3) 1px,transparent 0);background-size:8px 8px;border-radius:0;box-sizing:border-box}.gates.top{border-top:4px solid white!important}.gates.top.left{border-top-left-radius:30px}.gates.top.right{border-top-right-radius:30px}.gates.bottom{border-bottom:4px solid white!important}.gates.bottom.left{border-bottom-left-radius:30px}.gates.bottom.right{border-bottom-right-radius:30px}@media (max-width:768px){.field{height:400px;max-width:100%}.goal-area{width:120px;height:60px}}@media (max-width:480px){.field{height:350px;max-width:100%;overflow-y:hidden;overflow-x:scroll}}@keyframes ballBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.ball.moving{animation:ballBounce .5s ease-in-out infinite}.field:hover{box-shadow:0 12px 40px rgba(0,0,0,.4)}.field-cell[data-has-ball=true]:hover,.field-cell[data-has-player=team1]:hover,.field-cell[data-has-player=team2]:hover{background-color:rgba(255,255,0,.3)!important;cursor:pointer}