/* Partea comună pentru Table și Remi: fundal, așteptare, plăcuțele jucătorilor, ecranul de final */
.mBg{position:absolute;inset:0;background:
  radial-gradient(ellipse 70% 55% at 50% 55%,rgba(255,180,90,.16),transparent 70%),
  repeating-linear-gradient(45deg,rgba(255,255,255,.016) 0 2px,transparent 2px 22px),
  linear-gradient(180deg,#24120a,#0d0604 80%)}
.g-remi .mBg{background:
  radial-gradient(ellipse 70% 55% at 50% 50%,rgba(60,200,170,.18),transparent 70%),
  repeating-linear-gradient(45deg,rgba(255,255,255,.016) 0 2px,transparent 2px 22px),
  linear-gradient(180deg,#07262a,#030f12 80%)}

/* plăcuța unui jucător */
.pl{position:absolute;display:flex;align-items:center;gap:14px;width:290px;padding:10px 14px;box-sizing:border-box;border-radius:24px;z-index:6;
  background:linear-gradient(180deg,rgba(40,24,70,.92),rgba(14,8,30,.92));box-shadow:0 0 0 3px rgba(255,255,255,.12),0 10px 24px rgba(0,0,0,.5);transition:box-shadow .2s}
.pl.turn{box-shadow:0 0 0 4px var(--gold),0 0 34px rgba(255,204,51,.55),0 10px 24px rgba(0,0,0,.5)}
.pl.empty{opacity:.55}
.pl .av{position:relative;width:74px;height:74px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:38px;color:#fff;
  background:linear-gradient(135deg,#7a4dff,#3a1a9a);box-shadow:inset 0 0 0 3px rgba(255,255,255,.35)}
.pl.bot .av{background:linear-gradient(135deg,#4a5a7a,#232c40)}
.pl.me .av{background:linear-gradient(135deg,#ffcc33,#d17a00);color:#2a1300}
.pl .av svg{position:absolute;inset:-7px;width:88px;height:88px;transform:rotate(-90deg)}
.pl .av svg circle{fill:none;stroke-width:6}
.pl .av svg .tr{stroke:rgba(255,255,255,.12)}
.pl .av svg .tm{stroke:var(--gold);stroke-linecap:round;stroke-dasharray:258;transition:stroke-dashoffset .25s linear}
.pl .av svg .tm.low{stroke:#ff4a4a}
.pl .tx{min-width:0;flex:1}
.pl .nm{display:block;font-family:var(--ui);font-weight:800;font-size:24px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl .sb{display:block;font-family:var(--ui);font-weight:700;font-size:19px;color:#cbb8ff;margin-top:3px;white-space:nowrap}
.pl .tag{position:absolute;right:10px;top:-12px;padding:2px 10px;border-radius:10px;font-family:var(--ui);font-weight:800;font-size:15px;letter-spacing:1px;background:#3a2a6a;color:#cbb8ff}
.pl.me .tag{background:var(--gold);color:#2a1300}

/* așteptarea partidei */
.waitBox{position:absolute;left:50%;top:430px;transform:translateX(-50%);z-index:9;min-width:720px;padding:28px 44px 30px;box-sizing:border-box;border-radius:34px;text-align:center;
  background:rgba(10,4,24,.88);box-shadow:0 0 0 3px rgba(255,204,51,.6),0 20px 50px rgba(0,0,0,.6)}
.waitBox p{margin:12px 0 0;font-family:var(--ui);font-weight:700;font-size:30px;color:#e6dcff}
.waitBox .wNum{display:block;font-weight:400;font-size:84px;line-height:1;color:var(--gold);margin-top:10px;text-shadow:0 4px 0 var(--ink)}
.waitBox .tbtn{margin-top:20px;min-width:300px}
.wSeats{display:flex;justify-content:center;gap:14px}
.wSeats i{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.14)}
.wSeats i.on{background:#5cff8a;box-shadow:0 0 12px #5cff8a}
.wSeats i.bot{background:#9a86ff}

/* finalul partidei */
.mResult{position:absolute;inset:0;z-index:15;display:grid;place-items:center;background:rgba(6,2,16,.55);animation:rIn .35s}
@keyframes rIn{from{opacity:0}}
.mResult .rIn{width:900px;padding:40px 50px 30px;box-sizing:border-box;border-radius:40px;text-align:center;
  background:radial-gradient(ellipse at 50% 0,#4a2a9a,#160a34 70%);box-shadow:0 0 0 4px var(--gold),0 0 80px rgba(255,204,51,.35),0 30px 70px rgba(0,0,0,.7);animation:rPop .45s cubic-bezier(.2,1.6,.4,1)}
@keyframes rPop{from{transform:scale(.6)}}
.mResult h2{margin:0;font-weight:400;font-size:84px;color:#e6dcff;letter-spacing:2px;text-shadow:0 5px 0 var(--ink)}
.mResult h2.win{color:var(--gold)}
.mResult p{font-family:var(--ui);font-weight:700;font-size:28px;color:#e6dcff;margin:10px 0}
.mResult b{display:block;font-weight:400;font-size:120px;line-height:1;color:var(--gold);text-shadow:0 6px 0 var(--ink);margin-top:10px}
.mResult b.lose{color:#ff8a8a;font-size:90px}
.mResult small{display:block;font-family:var(--ui);font-weight:700;font-size:24px;color:#cbb8ff;margin-bottom:24px}
.mResult .rNote{font-size:20px;color:#a99bd6;margin-top:16px}
.rules p{font-family:var(--ui);font-size:26px;line-height:1.42;color:#e6dcff;margin:10px 0;text-align:left}
.rules .sub{color:#c9b6ff}
.tbtn.big{font-size:44px;padding:20px 50px}
