/* ============================================================
   РЕСКИН СУКНА — язык HUD, принесённый на стол: золотые угловые скобки,
   тёмно-фиолетовый безель с неоновым внутренним кольцом, пилюля банка,
   неоновые кольца мест, стеклянные плашки имён и спонсорская плашка на
   сукне (.felt-placement). Только внешний вид: ни один класс отсюда не
   управляется из JS.

   Перенесено из прототипа (arena-web/styles/table.css).
   ============================================================ */
#g{background:radial-gradient(120% 88% at 50% 30%,#1a1340,#08060F 72%)}

/* --- HUD frame: gold corner brackets framing the whole play viewport --- */
.ghud-frame{position:absolute;top:var(--pgtop);left:7px;right:7px;bottom:156px;pointer-events:none;z-index:2}
.ghud-frame .cb{position:absolute;width:17px;height:17px;border:1.5px solid rgba(255,194,75,.45)}
.ghud-frame .cb.tl{top:0;left:0;border-right:0;border-bottom:0;border-radius:7px 0 0 0}
.ghud-frame .cb.tr{top:0;right:0;border-left:0;border-bottom:0;border-radius:0 7px 0 0}
.ghud-frame .cb.bl{bottom:0;left:0;border-right:0;border-top:0;border-radius:0 0 0 7px}
.ghud-frame .cb.br{bottom:0;right:0;border-left:0;border-top:0;border-radius:0 0 7px 0}

/* --- HUD header --- */
/* Рескин поднимал шапку на 2px относительно базы (60 против 62). Смещение
   сохранено, точка отсчёта — общая переменная верха (см. base.css, #scr):
   скобки рамки остаются на 2px выше кнопок, как и было. */
.ghud{top:calc(var(--pgtop) + 2px)}
.ghud-c{display:flex;flex-direction:column;align-items:center;gap:5px}
.ghud-c .tech{font-size:8px}
.ghud-pills{display:flex;gap:7px}
.ghud .pill{background:rgba(8,6,15,.5);border:1px solid rgba(255,255,255,.1);border-radius:10px;
  padding:5px 10px;letter-spacing:.5px;backdrop-filter:blur(8px)}
.gbtn-r{width:34px;height:34px;border-radius:11px;background:rgba(255,255,255,.05);border:1px solid var(--bord)}
.ghud-r{display:flex;align-items:center;gap:7px}

/* --- felt: dark-purple bezel, gold outer glow, neon inner ring --- */
.table{border:6px solid #2c2444;border-radius:50%/46%;
  background:radial-gradient(120% 110% at 50% 38%,#1d6450,#0e3e30 66%,#0a2c22);
  box-shadow:inset 0 0 52px rgba(0,0,0,.58),0 0 0 1px rgba(124,92,255,.25),
             0 0 42px rgba(255,194,75,.08),0 12px 34px rgba(0,0,0,.45)}
.table:before{inset:13px;border:1.5px solid rgba(45,226,197,.3);box-shadow:0 0 18px rgba(45,226,197,.12) inset}
.felt-logo{font-family:'Unbounded','Orbitron','Rajdhani';font-weight:800;font-size:12px;letter-spacing:3px;color:rgba(255,194,75,.32)}
.felt-tech{position:absolute;top:calc(30% + 17px);left:50%;transform:translate(-50%,-50%);
  font-size:7.5px;color:rgba(255,194,75,.32);white-space:nowrap}
.felt-tech::before{background:rgba(255,194,75,.45);box-shadow:none}

/* --- sponsor placement on the felt, beneath the board --- */
.felt-placement{position:absolute;top:65%;left:50%;transform:translate(-50%,-50%);
  font-family:'Unbounded','Orbitron','Rajdhani';font-weight:800;font-size:22px;
  letter-spacing:5px;color:rgba(255,194,75,.32);pointer-events:none;white-space:nowrap}
.felt-powered{position:absolute;top:calc(65% + 24px);left:50%;transform:translate(-50%,-50%);
  font-family:'Rajdhani',monospace;font-weight:700;font-size:9px;letter-spacing:2px;
  text-transform:uppercase;color:rgba(255,255,255,.16);pointer-events:none;white-space:nowrap}

/* --- pot: gold neon HUD pill --- */
.pot{background:rgba(8,6,15,.55);border:1px solid rgba(255,194,75,.5);letter-spacing:1px;
  box-shadow:0 0 18px rgba(255,194,75,.13),inset 0 0 12px rgba(255,194,75,.06);backdrop-filter:blur(4px)}

/* --- seats: neon avatar ring + angular glass nameplate --- */
.seat .av{border:2px solid rgba(157,134,255,.35);box-shadow:0 0 14px rgba(124,92,255,.25)}
.seat.bot .av{border-color:rgba(45,226,197,.4);box-shadow:0 0 14px rgba(45,226,197,.25)}
.seat.act .av{border-color:var(--teal);box-shadow:0 0 20px rgba(45,226,197,.75)}
.seat .info{border-radius:10px;background:rgba(8,6,15,.6);border:1px solid rgba(255,255,255,.1);position:relative}
.seat .info::after{content:"";position:absolute;top:3px;right:3px;width:5px;height:5px;
  border-top:1.5px solid rgba(255,194,75,.55);border-right:1.5px solid rgba(255,194,75,.55)}
.seat .info .ch{letter-spacing:.5px}

/* --- свободное место: приглашение сесть (интент `sit`) --- */
.seat.free{cursor:pointer}
.seat.free .av{background:rgba(255,255,255,.04);border:2px dashed rgba(45,226,197,.45);
  box-shadow:none;color:var(--teal);font-size:20px}
.seat.free:active .av{transform:scale(.94)}
.seat.free .info{background:rgba(8,6,15,.45);border-color:rgba(45,226,197,.25)}
.seat.free .info .nm{color:var(--teal)}

/* --- action bar: Рейз gets the gold notch like the lobby CTA --- */
.ab{letter-spacing:.5px}
.ab.fold{background:rgba(255,59,92,.14);border-color:rgba(255,77,92,.4);color:#fff}
.ab.raise{position:relative;overflow:hidden;border-right:3px solid var(--gold)}
.ab.raise::after{content:"";position:absolute;top:0;right:0;width:0;height:0;border-style:solid;
  border-width:0 16px 16px 0;border-color:transparent var(--gold) transparent transparent;opacity:.9}
.qb{letter-spacing:.5px}

