.Board {
  display: flex;
  align-self: stretch;
  flex: 1;
  align-items: stretch;
}

/* Offset 'BorderBox' such that 0,0 is the center
 * of 'Board' */
.BoardBox {
  position: absolute;
  left: 50%;
  top: 50%;
}

.Board .Tile {
  z-index: 5; /* Below Road and Corner */
  position: absolute;
  background-position-y: 0px;
  background-size: cover;
  transform: translate(-50%, -50%) rotate(-30deg);
}

.Tile.Active {
  z-index: 10; /* Above non-Active Tile, below Road and Corner */
  filter: drop-shadow(0px 0px 12px black);
}

.Border {
  position: absolute;
  transform-origin: 0 0;
  background-size: cover;
}

.Board .Tooltip {
  display: none;
  font-size: 0.75rem;
  position: absolute;
  top: 1rem;
  left: 1rem;
  padding: 0.25rem 0.5rem;
  background-color: white;
  border: 1px solid black;
  border-radius: 0.25rem;
  text-align: center;
  vertical-align: middle;
  z-index: 10000;
  transform: translate(0, -50%);
  opacity: 0.9;
}

.Volume {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-top: 0.1rem;
  padding: 0.25rem 0.5rem;
}

.Pip {
  z-index: 50; /* Above Tile (5,10), Road (12), Corner (20) */
  position: absolute;
  background-size: 600% auto; /* pip-numbers is a 6x6 grid of pip images */
  width: 40px;
  height: 40px;
  transform: translate(-50%, -50%);
}

.Pip.Volcano {
  margin-left: -8px;
  transform: scale(0.5);
}

.Pip.Option {
  filter: brightness(150%);
}

.Pip.Active {
  filter: drop-shadow(0px 0px 10px rgba(255, 0, 255, 1));
}

.Pip.Option:hover,
.Pip:hover {
  filter: brightness(100%);
}

.Pip.Active:hover {
  filter: drop-shadow(0px 0px 10px rgba(255, 0, 255, 1));
}


.Pip.Active.Option {
  filter: brightness(150%) drop-shadow(0px 0px 10px rgba(255, 0, 255, 1));
}

.Pips[disabled],
.Tiles[disabled],
.Roads[disabled],
.Corners[disabled] {
  pointer-events: none;
}

.Board .Corner {
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.75));
  z-index: 20; /* Above Tile, below Road */
  position: absolute;
  display: flex;
  align-items: center;
  justify-items: center;
  box-sizing: border-box;
  width: 25px;
  height: 25px;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.Corner-Shape {
  display: flex;
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
}

.Corner:not([data-type]) .Corner-Shape,
.Corner[data-type="settlement"] .Corner-Shape {
  clip-path: polygon(50% 0%,70% 15%,70% 2%,90% 2%,90% 30%,100% 40%,100% 100%,65% 100%,65% 65%,35% 65%,35% 100%,0% 100%,0% 40%);
}

.Corner[data-type="city"] .Corner-Shape {
  clip-path: polygon(15% 0%,39% 23%,39% 52%,100% 56%,100% 74%,100% 100%,80% 100%,63% 100%,62% 75%,46% 75%,47% 100%,0% 100%,0% 24%);
}

.Corner.Lava {
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(1.5);
  background-color: rgba(255, 77, 30, 0.8);
}

.Board .Road {
  position: absolute;
  display: flex;
  align-items: center;
  justify-items: center;
  box-sizing: border-box;
  width: 10px;
  height: 50px;
  transform-origin: 50% 0;
  z-index: 11; /* Above Tile, below Corner */
  pointer-events: none;
}

.Road-Shape {
  display: flex;
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  clip-path: polygon(0% 20%,0% 80%,100% 80%,100% 20%);
}

.Pip-Shape {
  display: flex;
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  clip-path: circle(50%);
  pointer-events: none;
}

.Tile-Shape {
  display: flex;
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  clip-path: polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%);
}

.Board div[disabled] .Option {
  cursor: pointer;
  pointer-events: none;
}

@keyframes blink {
  from {  
    filter: brightness(90%) drop-shadow(0 0 5px black);
    opacity: 0.8;
  }

  to {
    filter: brightness(100%) drop-shadow(0 0 10px black);
    opacity: 1;
  }
}

.Board .Option {
  cursor: pointer;
  pointer-events: all;

  filter: brightness(150%) drop-shadow(0 0 10px black);
  
  transition-timing-function: ease-in-out;
  animation-duration: 0.5s;
  animation-name: blink;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}

.Tile-Shape:hover,
.Corner-Shape:hover,
.Road-Shape:hover {
  background-color: white;
}

.Board .Option .Tile-Shape,
.Board .Option .Corner-Shape,
.Board .Option .Road-Shape {
  background-color: rgb(185, 185, 185);
}

.Robber .Pip-Shape {
  top: -40px;
  left: -40px;
  clip-path: circle(50%);
  transform: scale(0.45);
  background-color: floralwhite;
  background-size: contain;
  background-position: center; 
  border: 4px solid #8c471f;
  border-radius: 50%;
}

.Roberta .Pip-Shape:hover,
.Roberta .Pip-Shape {
  background-image:url("./assets/woman-robber.png"); 
}

.Robert .Pip-Shape:hover,
.Robert .Pip-Shape {
  background-image:url("./assets/man-robber.png"); 
}

.Velocirobber .Pip-Shape {
  background-image:url("./assets/raptor-robber.png"); 
}

.Road.LongestRoad .Road-Shape {
  filter: brightness(135%);
  transform: scale(1.05);
}

.Road[data-longest="1"],
.Road[data-longest="2"],
.Road[data-longest="3"],
.Road[data-longest="4"] {
  filter: drop-shadow(0px 0px 2.5px black);
}

.Road[data-longest="5"] {
  filter: brightness(110%) drop-shadow(0px 0px 5px black);
}
.Road[data-longest="6"] {
  filter: brightness(120%) drop-shadow(0px 0px 6px black);
}
.Road[data-longest="7"] {
  filter: brightness(130%) drop-shadow(0px 0px 7px black);
}
.Road[data-longest="8"] {
  filter: brightness(140%) drop-shadow(0px 0px 8px black);
}
.Road[data-longest="9"] {
  filter: brightness(150%) drop-shadow(0px 0px 9px black);
}
.Road[data-longest="10"],
.Road[data-longest="11"],
.Road[data-longest="12"],
.Road[data-longest="13"],
.Road[data-longest="14"],
.Road[data-longest="15"] {
  filter: brightness(160%) drop-shadow(0px 0px 10px black);
}

.Board .Selected {
  background-color: rgba(0, 0, 0, 1);
  box-shadow: 5px 5px 5px black;
}

[data-color='R'] > .Corner-Shape,
[data-color='R'] > .Road-Shape {
  background-color: rgba(255, 0, 0, 1);
}

[data-color='O'] > .Corner-Shape,
[data-color='O'] > .Road-Shape {
  background-color: rgb(255, 128, 0);
}

[data-color='W'] > .Corner-Shape,
[data-color='W'] > .Road-Shape {
    background-color: rgba(255, 255, 255, 1);
}

[data-color='B'] > .Corner-Shape,
[data-color='B'] > .Road-Shape {
  background-color: rgba(0, 0, 255, 1);
}

/*

.Option[data-color='R'] > .Corner-Shape,
.Option[data-color='R'] > .Road-Shape {
  background-color: rgba(255, 188, 188, 0.8);
}

.Option[data-color='O'] > .Corner-Shape,
.Option[data-color='O'] > .Road-Shape {
  background-color: rgba(255, 224, 162, 0.8);
}

.Option[data-color='W'] > .Corner-Shape,
.Option[data-color='W'] > .Road-Shape {
    background-color: rgba(122, 122, 122, 0.8);
}

.Option[data-color='B'] > .Corner-Shape,
.Option[data-color='B'] > .Road-Shape {
  background-color: rgba(192, 192, 255, 0.8);
}
*/
 