.view-game .team-score{position:fixed;top:14px;display:flex;align-items:center;z-index:100;gap:0;flex-direction:row}
.view-game .team-score.my-team{right:14px}
.view-game .team-score.opponent{left:14px}
.view-game .ts-circle{width:56px;height:56px;border-radius:50%;background:#0e2a16;display:flex;align-items:center;justify-content:center;flex-shrink:0;z-index:2}
.view-game .my-team .ts-circle{position:relative;left:18px}
.view-game .opponent .ts-circle{position:relative;right:18px}
.view-game .ts-circle svg{width:28px;height:28px;fill:#aaa;opacity:.7}
.view-game .ts-body{background:#0e2a16;border-radius:14px;padding:6px 14px;display:flex;align-items:center;gap:8px;color:#ccc;font-weight:bold;font-size:14px;z-index:1}
.view-game .my-team .ts-body{border-top-left-radius:0;border-bottom-left-radius:0}
.view-game .opponent .ts-body{border-top-right-radius:0;border-bottom-right-radius:0}
.view-game .ts-body .ts-value{font-size:20px;color:#f1c40f;min-width:22px;text-align:center}
/* شمارنده دست‌های بازی سه دسته */
.view-game .ts-hand-wins{position:fixed;top:76px;display:flex;gap:6px;align-items:center;z-index:100}
.view-game .my-team-hw{right:22px}
.view-game .opp-team-hw{left:22px}
.view-game .hw-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.18);border:1.5px solid rgba(255,255,255,.25);transition:background .3s,border-color .3s}
.view-game .hw-dot.hw-dot-won{background:var(--gold);border-color:var(--gold-2);box-shadow:0 0 6px rgba(241,196,15,.5)}
.view-game .table-container{position:relative;width:100vw;height:100%;display:flex;flex-direction:column;align-items:center;padding-top:80px;padding-bottom:6px;box-sizing:border-box;overflow:visible}
.view-game .poker-table{flex:1;width:75vw;max-width:900px;background:radial-gradient(circle,#2a8b38 0%,#0d4a16 100%);border-radius:250px;box-shadow:0 20px 50px rgba(0,0,0,0.7),inset 0 0 60px rgba(0,0,0,0.6);border:18px solid #3e2723;position:relative;min-height:0;box-sizing:border-box;overflow:visible}
/* ── player box ── */
.view-game .player{position:absolute;display:flex;flex-direction:column;align-items:center;z-index:10;gap:0}
.view-game .player.top{top:-84px;left:50%;transform:translateX(-50%)}
.view-game .player.left{left:-90px;top:50%;transform:translateY(-50%)}
.view-game .player.right{right:-90px;top:50%;transform:translateY(-50%)}

/* کانتینر باکس بازیکن */
.view-game .player .pb-box,
.view-game .player-me-box .pb-box{
  background:linear-gradient(145deg,#0d3d1a 0%,#1a5c2a 60%,#0d3d1a 100%);
  border:1px solid rgba(100,200,100,.25);
  border-radius:10px;
  padding:7px 9px 6px;
  display:flex;flex-direction:column;align-items:center;gap:3px;
  box-shadow:0 4px 16px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.07);
  min-width:76px;
}

/* آواتار مربعی */
.view-game .pb-avatar{width:62px;height:62px;background:#2c3e50;border-radius:7px;border:2px solid rgba(241,196,15,.4);display:flex;justify-content:center;align-items:center;font-weight:bold;font-size:17px;color:#ffe082;box-shadow:0 2px 8px rgba(0,0,0,.5);flex-shrink:0;transition:border-color .25s,box-shadow .25s;position:relative}
.view-game .pb-name{font-size:10px;color:#d4edda;text-shadow:0 1px 2px rgba(0,0,0,.8);width:100%;max-width:72px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.view-game .pb-level{display:flex;align-items:center;gap:2px}
.view-game .pb-star{color:#f1c40f;font-size:9px;line-height:1}
.view-game .pb-lvl-val{color:#f1c40f;font-size:9px;font-weight:bold;line-height:1}
/* progress bar */
.view-game .pb-bar-wrap{width:100%;height:3px;background:rgba(255,255,255,.12);border-radius:3px;overflow:hidden}
.view-game .pb-bar{height:100%;width:0%;background:linear-gradient(90deg,#f1c40f,#e67e22);border-radius:3px;transition:width .3s linear,opacity .2s}

/* نوبت فعال */
.view-game .player.turn-active .pb-box,
.view-game .player-me-box.turn-active .pb-box{border-color:rgba(241,196,15,.7);box-shadow:0 0 14px rgba(241,196,15,.4),0 4px 16px rgba(0,0,0,.55)}
.view-game .player.turn-active .pb-avatar,
.view-game .player-me-box.turn-active .pb-avatar{border-color:#f1c40f;animation:pbGlow 1s ease-in-out infinite}
@keyframes pbGlow{0%,100%{box-shadow:0 0 6px rgba(241,196,15,.4),0 2px 8px rgba(0,0,0,.4)}50%{box-shadow:0 0 16px rgba(241,196,15,.85),0 2px 8px rgba(0,0,0,.5)}}

/* تاج حاکم */
.view-game .player.hakem-crown-box .pb-avatar::after,
.view-game .player-me-box.hakem-crown-box .pb-avatar::after{content:"👑";position:absolute;top:-13px;right:-8px;font-size:16px;animation:crownPop .4s ease;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}
.view-game .hakem-crown-fly{position:fixed;font-size:28px;z-index:600;pointer-events:none;transition:transform .75s cubic-bezier(0.2,0.9,0.2,1);filter:drop-shadow(0 3px 8px rgba(0,0,0,.6));will-change:transform}

/* باکس بازیکن من — پایین چپ صفحه */
.view-game .player-me-box{position:fixed;bottom:168px;left:10px;display:flex;flex-direction:column;align-items:center;z-index:110}

.view-game .opponent-hand{position:absolute;z-index:5}
.view-game .opponent-hand.top{top:15px;left:50%;transform:translateX(-50%)}
.view-game .opponent-hand.left{left:15px;top:50%;transform:translateY(-50%)}
.view-game .opponent-hand.right{right:15px;top:50%;transform:translateY(-50%)}
.view-game .mini-card{width:28px;height:42px;background-color:#881e1e;background-image:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(0,0,0,0.15) 4px,rgba(0,0,0,0.15) 8px);border:2px solid #fff;border-radius:4px;box-shadow:-1px 2px 5px rgba(0,0,0,0.4);position:absolute}
.view-game .center-area{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;pointer-events:none}
.view-game .center-choosing-trump{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:rgba(255,255,255,.85);font-size:15px;font-weight:bold;text-shadow:0 1px 4px rgba(0,0,0,.7);white-space:nowrap;text-align:center;animation:choosing-trump-pulse 1.2s ease-in-out infinite}
@keyframes choosing-trump-pulse{0%,100%{opacity:.6}50%{opacity:1}}
.view-game .trump-reveal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.4);opacity:0;transition:opacity .35s ease,transform .35s cubic-bezier(0.2,0.8,0.2,1);z-index:50}
.view-game .trump-reveal svg{width:110px;height:110px;display:block;filter:drop-shadow(0 4px 18px rgba(0,0,0,.55))}
.view-game .trump-reveal.trump-reveal-show{opacity:1;transform:translate(-50%,-50%) scale(1)}
.view-game .trump-reveal.trump-reveal-hide{opacity:0;transform:translate(-50%,-50%) scale(1.3);transition:opacity .5s ease,transform .5s ease}
.view-game .my-hand{position:relative;width:90vw;max-width:600px;height:150px;flex:0 0 auto;margin:6px 0;z-index:20;perspective:1000px}
.view-game .card{width:80px;height:120px;position:absolute;cursor:pointer;user-select:none;transform-origin:bottom center;opacity:0;top:6px}
.view-game .card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;border-radius:10px;transition:transform .6s cubic-bezier(0.4,0.2,0.2,1);will-change:transform}
.view-game .card.in-hand{opacity:1;transition:opacity .3s ease}
.view-game .card.flipped .card-inner{transform:rotateY(180deg)}
.view-game .card.selected .card-inner{transform:rotateY(180deg) scale(1.12) translateY(-18px)!important;box-shadow:0 -12px 28px rgba(241,196,15,0.75),0 0 20px rgba(241,196,15,0.5)!important}
.view-game .card.playable-hint .card-inner{box-shadow:0 -8px 20px rgba(241,196,15,0.6);border: 1px solid rgba(241,196,15,0.5);transform: translateY(-8px) scale(1.05)}
.view-game .card.flipped.playable-hint .card-inner{transform:rotateY(180deg) translateY(-8px) scale(1.05)}
.view-game .card.disabled{pointer-events:none;filter:grayscale(.2)}
.view-game .card:not(.played-card):not(.selected):not(.disabled):hover .card-inner{box-shadow:0 -10px 20px rgba(241,196,15,0.4);transform:rotateY(180deg) scale(1.05) translateY(-10px)}
.view-game .card-front,.view-game .card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:10px;box-sizing:border-box}
.view-game .card-back{background-color:#881e1e;background-image:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(0,0,0,0.15) 10px,rgba(0,0,0,0.15) 20px);border:4px solid #fff;transform:rotateY(0deg);box-shadow:-2px 5px 10px rgba(0,0,0,0.5)}
.view-game .card-front{background:#fff;transform:rotateY(180deg);padding:0;box-shadow:-2px 5px 10px rgba(0,0,0,0.3)}
.view-game .card-top{position:absolute;top:6px;left:6px;font-size:18px;font-weight:900;line-height:1;display:flex;flex-direction:column;align-items:center}
.view-game .card-bottom{position:absolute;bottom:6px;right:6px;font-size:18px;font-weight:900;line-height:1;display:flex;flex-direction:column;align-items:center;transform:rotate(180deg)}
.view-game .small-suit svg{width:12px;height:12px;margin-top:2px}
.view-game .card-center{display:flex;justify-content:center;align-items:center;width:100%;height:100%}
.view-game .card-center svg{width:38px;height:38px}
.view-game .face-card-art{font-size:40px;font-weight:900;opacity:0.2;user-select:none}
.view-game .card-face-img{width:82%;height:66%;object-fit:cover;border-radius:6px}
.view-game .red{color:#e74c3c;fill:#e74c3c}
.view-game .black{color:#2c3e50;fill:#2c3e50}
.view-game .played-card{pointer-events:none!important;cursor:default;z-index:10}
.view-game .played-card .card-inner{transform:rotateY(180deg);box-shadow:none!important;border:none!important}
.view-game .ace-draw-card{pointer-events:none;box-shadow:0 6px 16px rgba(0,0,0,0.5);border-radius:8px}
.view-game .ace-draw-card .card-inner{transform:rotateY(180deg)}
.view-game .ace-draw-card.ace-highlight .card-front{box-shadow:0 0 30px rgba(241,196,15,0.8),0 0 60px rgba(241,196,15,0.3)!important;border:2px solid #f1c40f}
#topAvatar.hakem-crown::after{content:"👑";position:absolute;top:-12px;right:-10px;font-size:20px;z-index:5;animation: crownPop .4s ease;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}
@keyframes crownPop{0%{transform:scale(0) rotate(-20deg);opacity:0}60%{transform:scale(1.3) rotate(5deg)}100%{transform:scale(1) rotate(0);opacity:1}}
.view-game .fake-deal-card{position:fixed;width:80px;height:120px;background-color:#881e1e;background-image:repeating-linear-gradient(45deg,transparent,transparent 8px,rgba(0,0,0,0.15) 8px,rgba(0,0,0,0.15) 16px);border:4px solid #fff;border-radius:8px;transform-origin:center;transition:transform .35s cubic-bezier(0.2,0.8,0.2,1);z-index:200;pointer-events:none;box-shadow:0 10px 20px rgba(0,0,0,0.5);will-change:transform}
@media (max-width:768px){
  .view-game .team-score{top:8px}
  .view-game .ts-circle{width:40px;height:40px}
  .view-game .my-team .ts-circle{position:relative;left:10px}
  .view-game .opponent .ts-circle{position:relative;right:10px}
  .view-game .ts-circle svg{width:20px;height:20px}
  .view-game .ts-body{font-size:11px;padding:4px 10px}
  .view-game .ts-body .ts-value{font-size:15px}
  .view-game .ts-hand-wins{top:56px;gap:4px}
  .view-game .hw-dot{width:8px;height:8px}
  .view-game .table-container{padding-top:60px;overflow:visible}
  .view-game .poker-table{width:82vw;border-radius:90px;border-width:10px;overflow:visible}
  .view-game .my-hand{width:88vw;height:132px}
  .view-game .card,.view-game .fake-deal-card{width:54px;height:80px}
  .view-game .mini-card{width:16px;height:24px}
  .view-game .card-top,.view-game .card-bottom{font-size:13px}
  .view-game .card-center svg{width:24px;height:24px}
  .view-game .card-face-img{width:86%;height:70%}
  .view-game .player .pb-box,.view-game .player-me-box .pb-box{padding:5px 7px 5px;width:68px;min-width:68px;max-width:68px;border-radius:7px;gap:3px}
  .view-game .pb-avatar{width:50px;height:50px;font-size:13px;border-radius:5px}
  .view-game .pb-name{font-size:9px;width:100%;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .view-game .pb-level{gap:1px}
  .view-game .pb-star,.view-game .pb-lvl-val{font-size:8px}
  .view-game .pb-bar-wrap{height:2px}
  .view-game .player.top{top:-64px}
  .view-game .player.left{left:-28px;top:50%;transform:translateY(-50%)}
  .view-game .player.right{right:-28px;top:50%;transform:translateY(-50%)}
  .view-game .opponent-hand.left{left:30px}
  .view-game .opponent-hand.right{right:30px}
  .view-game .player-me-box{bottom:138px;left:6px}
  .view-game .card.selected .card-inner{transform:rotateY(180deg) scale(1.1) translateY(-14px)!important}
  .view-game .card-inner{transition:transform .4s cubic-bezier(0.4,0.2,0.2,1)}
  .view-game .card.in-hand{transition:opacity .2s ease}
  .view-game .hakem-crown-fly{transition:transform .5s cubic-bezier(0.2,0.9,0.2,1)}
}
