/* Losttloot V12.6.22 — restored luxury board and premium readable chess glyphs. */

/* Keep the board premium and dimensional instead of flat/plain. */
.duel-board{
  transform:perspective(1800px) rotateX(8deg) rotateZ(-.15deg)!important;
  transform-origin:center center!important;
  box-shadow:0 30px 80px rgba(0,0,0,.78), inset 0 0 0 2px #f2cf7b, 0 0 34px rgba(230,175,65,.22)!important;
}

/* Richer collector-grade board presentation. */
.duel-board::before{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius:18px;
  pointer-events:none;
  background:radial-gradient(circle at 50% 15%, rgba(255,220,120,.18), transparent 38%),
             linear-gradient(180deg, rgba(255,236,177,.12), transparent 36%, transparent 64%, rgba(0,0,0,.22));
  z-index:0;
}
.duel-square.light{
  background:
    linear-gradient(135deg,rgba(255,245,211,.14),transparent 35%),
    repeating-linear-gradient(91deg,rgba(255,255,255,.04) 0 1px,transparent 1px 6px),
    linear-gradient(145deg,#dca55c,#945422 56%,#c47f3e)!important;
}
.duel-square.dark{
  background:
    linear-gradient(135deg,rgba(255,255,255,.05),transparent 38%),
    repeating-linear-gradient(89deg,rgba(255,255,255,.03) 0 1px,transparent 1px 6px),
    linear-gradient(145deg,#5b341c,#241209 60%,#412010)!important;
}
.duel-square::after{
  box-shadow:inset 0 0 0 1px rgba(255,226,164,.08), inset 0 0 16px rgba(0,0,0,.20)!important;
}

/* Piece wrapper */
.duel-piece,.floating-duel-piece{
  position:relative;
  z-index:12;
  display:grid!important;
  place-items:center!important;
  width:100%;
  height:100%;
  line-height:1!important;
  transform:translateY(-1%) scale(1.02)!important;
  transition:transform .14s ease, opacity .14s ease!important;
  pointer-events:none!important;
  overflow:visible!important;
  background:none!important;
}
.duel-piece-underlay{
  position:absolute!important;
  inset:8%!important;
  width:84%!important;
  height:84%!important;
  object-fit:contain!important;
  opacity:.22!important;
  z-index:1!important;
  filter:blur(.2px) drop-shadow(0 4px 4px rgba(0,0,0,.25))!important;
  pointer-events:none!important;
}
.duel-piece-fallback{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  font-family:"DejaVu Sans","Segoe UI Symbol","Arial Unicode MS",sans-serif!important;
  font-size:clamp(2.7rem,4.45vw,5.4rem)!important;
  line-height:1!important;
  letter-spacing:0!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:geometricPrecision!important;
}
.duel-piece.gold .duel-piece-fallback{
  color:#f0bc4d!important;
  -webkit-text-fill-color:#f0bc4d!important;
  -webkit-text-stroke:1.35px rgba(55,27,4,.96)!important;
  text-shadow:
    0 1px 0 #fff2ad,
    0 2px 0 #c58721,
    0 5px 7px rgba(0,0,0,.80),
    0 0 12px rgba(255,195,65,.36)!important;
  filter:drop-shadow(0 7px 5px rgba(0,0,0,.72)) brightness(1.12)!important;
}
.duel-piece.obsidian .duel-piece-fallback{
  color:#bcc8cd!important;
  -webkit-text-fill-color:#bcc8cd!important;
  -webkit-text-stroke:1.4px rgba(0,0,0,.95)!important;
  text-shadow:
    0 1px 0 #eef6f8,
    0 2px 0 #526168,
    0 5px 7px rgba(0,0,0,.84),
    0 0 9px rgba(177,214,221,.28)!important;
  filter:drop-shadow(0 7px 5px rgba(0,0,0,.78)) brightness(1.08)!important;
}
.duel-square:hover .duel-piece,
.duel-square.selected .duel-piece,
.duel-square.last-from .duel-piece,
.duel-square.last-to .duel-piece{
  transform:translateY(-6%) scale(1.08)!important;
}
.duel-piece.lifted{opacity:.14!important;transform:translateY(-12%) scale(1.05)!important}
.floating-duel-piece{position:fixed!important;z-index:1600!important}
.floating-duel-piece .duel-piece-fallback{font-size:clamp(2.8rem,4.6vw,5.7rem)!important}
.floating-duel-piece .duel-piece-underlay{inset:6%!important;opacity:.2!important}

.duel-promotion-choice{display:grid!important;place-items:center!important;min-width:72px!important;min-height:72px!important;padding:.35rem!important}
.duel-promotion-choice .duel-piece{width:100%!important;height:100%!important;transform:none!important}
.duel-promotion-choice .duel-piece-fallback{font-size:2.8rem!important}
.duel-promotion-choice .duel-piece-underlay{inset:10%!important}

/* Start controls remain tappable. */
#duel-intro-overlay{pointer-events:auto!important}
#duel-intro-overlay .duel-intro-card{pointer-events:auto!important}
#duel-enter{position:relative!important;z-index:20!important;pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:rgba(255,210,96,.18)!important;cursor:pointer!important}
#duel-enter:disabled{opacity:1!important;pointer-events:auto!important}

@media (max-width:900px){
  .duel-piece-fallback{font-size:clamp(2.55rem,7vw,4.9rem)!important}
  .duel-board{transform:perspective(1500px) rotateX(6deg)!important}
}
@media (max-width:640px){
  .duel-piece-fallback{font-size:clamp(2.35rem,8vw,4.45rem)!important}
  .duel-board{transform:perspective(1200px) rotateX(4deg)!important}
}
