/* Aangan — your look, seen by everyone else (js/51-look.js)
   ===========================================================================
   Owner 2026-08-02: "The others should be able to see that the player is
   playing with that skin attached. Kinda like how its already done in
   multiplayer games like pubg."

   Two surfaces carry it, and neither touches a card FACE. Readability is not
   a cosmetic surface — a skin that makes someone else's card harder to read
   is a gameplay change wearing a cosmetic's clothes. */

/* ---- the fan of backs beside a seat ---------------------------------- */
/* absolutely positioned so it CANNOT grow the seat box. The seat is 82x92
   inside a ring positioned as a percentage of the mat; anything that changes
   its height moves every seat and re-opens the overlap bug that is already
   on live at small table heights. */
/* THE FAN TUCKS BEHIND THE AVATAR, it does not stand above it. At -10px it
   protruded 13px past the top of the seat box, and on a 360x640 the table is
   only 389px tall — the seat ring is positioned as a PERCENTAGE of the mat, so
   at that height the top seat climbs and the fan went straight into the turn
   bar. Measured, not guessed: the sweep caught fan3/4/5 hitting `turnbar`.
   At -4px only 6px shows above the avatar, which is enough to read a deck and
   not enough to reach anything. */
.seat .sfan{position:absolute;left:50%;top:2px;width:0;height:0;
  transform:translateX(-50%);pointer-events:none;z-index:0}
.seat .sfc{position:absolute;width:15px;height:21px;border-radius:2.5px;
  left:-7.5px;top:-4px;transform-origin:50% 120%;
  background:linear-gradient(150deg,var(--back-a),var(--back-b));
  border:1px solid var(--back-edge);
  box-shadow:0 1px 3px rgba(0,0,0,.5)}
/* the glyph the deck signs its backs with, shrunk to fit a 15px card */
.seat .sfc::before{content:var(--back-sym);position:absolute;inset:0;
  display:grid;place-items:center;font-size:8px;line-height:1;
  color:var(--back-glyph)}
.seat .sfc.f0{transform:rotate(-13deg) translateX(-5px)}
.seat .sfc.f1{transform:rotate(0deg)}
.seat .sfc.f2{transform:rotate(13deg) translateX(5px)}
/* the active player's fan lifts a little — the same tell the avatar gets */
.seat.active .sfc{filter:brightness(1.12)}

/* 7+ seats already shrink the chips; the fan comes off entirely rather than
   being squeezed into something unreadable */
.table.dense .seat .sfan{display:none}

/* ---- the played card wears the thrower's edge ------------------------ */
.play[data-deck]{--pe:var(--back-edge)}
.play[data-deck] .card{box-shadow:0 0 0 1.5px var(--pe), 0 6px 16px rgba(0,0,0,.45)}

@media (prefers-reduced-motion: reduce){ .seat .sfc{transition:none} }
