/* «Уговор» одной таблицей. Размеры тянутся от --pc-cell — общий файл для
   зального экрана и мини-аппа. */

.pc-stage{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;--pc-cell:34px;}
.pc-stage.big{--pc-cell:clamp(30px,3.4vh,46px);}

/* шапка: кто играет и с каким счётом */
.pc-head{display:flex;gap:clamp(16px,4vw,64px);justify-content:center;flex-wrap:wrap;}
.pc-who{text-align:center;}
.pc-name{font-weight:900;font-size:calc(var(--pc-cell) * .46);}
.pc-who.s0 .pc-name{color:var(--accent);}
.pc-who.s1 .pc-name{color:var(--blue);}
.pc-nums{
  display:flex;gap:8px;align-items:baseline;justify-content:center;flex-wrap:wrap;
  font-size:calc(var(--pc-cell) * .34);font-weight:800;color:var(--muted);margin-top:2px;
}
.pc-score{color:var(--text);}
.pc-kept{color:var(--up);}
.pc-broke{color:var(--live);}
.pc-ready{color:var(--accent);text-transform:uppercase;letter-spacing:.06em;}

/* сетка: номер раунда + по две колонки на игрока */
.pc-grid{
  display:grid;gap:3px;
  grid-template-columns:calc(var(--pc-cell) * .7) repeat(calc(var(--pc-sides) * 2), var(--pc-cell));
}
.pc-lab{
  display:flex;align-items:center;justify-content:center;
  font-size:calc(var(--pc-cell) * .3);font-weight:800;color:var(--muted);
}
.pc-col.s0{color:color-mix(in srgb, var(--accent) 70%, var(--muted));}
.pc-col.s1{color:color-mix(in srgb, var(--blue) 70%, var(--muted));}
.pc-cell{
  display:flex;align-items:center;justify-content:center;
  width:var(--pc-cell);height:var(--pc-cell);border-radius:5px;
  background:var(--card-hi);font-size:calc(var(--pc-cell) * .5);
}
/* «Слово» — нейтральное. Цвет в этой таблице значит ровно одно: сдержал или
   нарушил, и он остаётся за колонкой «дело». */
.pc-cell.pc-say{background:color-mix(in srgb, var(--card-hi) 60%, var(--ink));}
.pc-cell.pc-say.on{background:var(--card-hi);}
.pc-cell.kept{background:color-mix(in srgb, var(--up) 32%, var(--card-hi));}
.pc-cell.broke{background:color-mix(in srgb, var(--live) 36%, var(--card-hi));}

/* легенда: без неё значки и цвет читаются как ребус */
.pc-legend{
  display:flex;flex-direction:column;align-items:center;gap:4px;
  font-size:calc(var(--pc-cell) * .32);font-weight:700;color:var(--muted);
}
.pc-glyphs,.pc-colors{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;}
.pc-glyphs b{font-size:1.25em;font-weight:400;}
.pc-colors .sw{
  display:inline-block;width:1em;height:1em;border-radius:3px;
  vertical-align:-.12em;margin-right:5px;
}
.pc-colors .sw.kept{background:color-mix(in srgb, var(--up) 32%, var(--card-hi));}
.pc-colors .sw.broke{background:color-mix(in srgb, var(--live) 36%, var(--card-hi));}
