/* Shared tactical pitch containers for Dashboard and Squad.
   Field markings are rendered exclusively by tactical-pitch-svg.js.
   Shirts and player names are proportional to the field container and can be scaled independently by Squad preferences. */
.squad-football-field,.dashboard-football-field{
  position:relative;
  isolation:isolate;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  aspect-ratio:2/3;
  overflow:hidden;
  border-radius:17px;
  background:repeating-linear-gradient(0deg,#148449 0 10%,#117941 10% 20%);
  box-shadow:inset 0 0 0 3px rgba(255,255,255,.62),0 12px 28px rgba(0,0,0,.2);
  touch-action:none;
  user-select:none;
  container-type:inline-size;
}
.squad-football-field,.dashboard-football-field{--squad-shirt-scale:.75;--squad-name-scale:.75}
.formation-slot{
  position:absolute;
  width:calc(30.6667cqw * var(--squad-name-scale,1));
  transform:translate(-50%,calc(-10cqw * var(--squad-shirt-scale,1)));
  z-index:5;
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.slot-jersey-hit{
  width:calc(16.6667cqw * var(--squad-shirt-scale,1));
  height:calc(19.3333cqw * var(--squad-shirt-scale,1));
  display:grid;
  place-items:center;
  border:0;
  background:transparent;
  padding:0;
  cursor:grab;
  touch-action:none;
}
.slot-jersey-hit canvas{
  width:100%;
  height:100%;
  display:block;
  filter:drop-shadow(0 calc(.9cqw * var(--squad-shirt-scale,1)) calc(1.3cqw * var(--squad-shirt-scale,1)) rgba(0,0,0,.3));
  pointer-events:none;
}
.slot-player-list{
  width:100%;
  display:grid;
  gap:calc(.6667cqw * var(--squad-name-scale,1));
  margin-top:calc(2cqw * var(--squad-name-scale,1));
}
.slot-player-row{
  height:calc(4.6667cqw * var(--squad-name-scale,1));
  min-height:calc(4.6667cqw * var(--squad-name-scale,1));
  width:fit-content;
  max-width:100%;
  justify-self:center;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:calc(1.3333cqw * var(--squad-name-scale,1));
  padding:0 calc(1.3333cqw * var(--squad-name-scale,1));
  border:0;
  border-radius:calc(1.6667cqw * var(--squad-name-scale,1));
  background:rgba(0,34,18,.9);
  color:#fff;
  font-size:calc(2.3333cqw * var(--squad-name-scale,1));
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  cursor:pointer;
}
.slot-player-row i{
  width:calc(2cqw * var(--squad-name-scale,1));
  height:calc(2cqw * var(--squad-name-scale,1));
  border-radius:50%;
  background:var(--status-color);
  flex:none;
}
.slot-empty{
  font-size:calc(2.1667cqw * var(--squad-name-scale,1));
  color:rgba(255,255,255,.7);
  text-shadow:0 calc(.3333cqw * var(--squad-name-scale,1)) calc(.6667cqw * var(--squad-name-scale,1)) #000;
}
