/* ===================================================================
   table2.css - v204 game table, from the "קלפים · החפיסה" canvas
   (boards TableYaniv, TableDurak, TableMotion): one rail of seats with
   turn rings, an open felt centre, a big readable hand and ONE glass
   dock holding my seat and my moves. Loaded after styles/themes, so it
   only restyles - every id and every game flow stays as it was.
   =================================================================== */
#table-root{--sun:#E9B949;--sun-d:#B6861B;--gold-l:#F2D27A;--cream:#FFFDF9;--ink:#231F1A;--glass:rgba(6,26,17,.5);
  --railH:110px}

/* ---- top bar: exit · the game in the middle · tools ---- */
#table-root .game-top{gap:8px;padding:calc(10px + env(safe-area-inset-top,0px)) 12px 4px}
#table-root .game-top .icon-btn{width:42px !important;height:42px !important;min-width:42px;border-radius:12px !important;
  background:rgba(0,0,0,.22) !important;border:0 !important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 3px 0 rgba(0,0,0,.25) !important}
#table-root .game-top .icon-btn svg{width:21px;height:21px}
#table-root .game-top .spacer{display:none}
#table-root .gt-mid{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:9px}
#table-root .gt-mid>div{min-width:0}
#table-root .gt-cov{width:32px;height:32px;border-radius:8px;flex:none;display:grid;place-items:center;
  background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.06));box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
#table-root .gt-cov svg{width:20px;height:20px}
#table-root .game-top .title{font-weight:900;font-size:19px;line-height:1.05;letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#table-root .game-top .sub{font-size:12px;color:rgba(255,255,255,.72);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}
/* the countdown lives on the seat ring now */
#table-root #turn-clock{display:none !important}

/* ---- the felt: rail on top, open table under it ---- */
#table-root .felt{margin:4px 0 0 !important}
#table-root .felt::before{content:"";display:block !important;position:absolute;left:14px;right:14px;top:var(--railH);bottom:6px;border-radius:110px;pointer-events:none;
  background:radial-gradient(70% 70% at 50% 45%,rgba(255,255,255,.07),rgba(255,255,255,0) 70%);
  box-shadow:inset 0 0 0 1.5px rgba(242,210,122,.28),inset 0 0 40px rgba(0,0,0,.18);border:0 !important}
#table-root .felt::after{content:attr(data-wm) !important;font-weight:900;font-size:56px !important;letter-spacing:2px;
  color:rgba(242,210,122,.07) !important;top:calc(var(--railH) + (100% - var(--railH)) / 2) !important;transform:translate(-50%,-50%) !important;white-space:nowrap}
#table-root .felt .board{top:var(--railH) !important;bottom:6px}
#table-root .opps.rail{position:absolute;inset:auto;left:8px;right:8px;top:4px;display:flex;justify-content:space-around;align-items:flex-start;z-index:3;pointer-events:none}
#table-root .opps.rail.few{justify-content:center;gap:64px}
#table-root .rail .opp{position:relative !important;top:auto !important;left:auto !important;transform:none !important;translate:none !important;
  width:84px;display:flex;flex-direction:column;align-items:center;gap:4px;pointer-events:auto;text-align:center}
#table-root .rail .opp .mini-cards,#table-root .rail .opp .ocount{display:none !important}
/* the ring: gold that empties as the turn runs out */
#table-root .rail .oseat,#table-root .me-seat .oseat{--p:0;position:relative;width:56px;height:56px;margin:0 !important;border-radius:50%;display:grid;place-items:center;flex:none;
  background:conic-gradient(var(--sun) calc(var(--p)*1%),rgba(255,255,255,.16) 0)}
#table-root .rail .oseat::before,#table-root .me-seat .oseat::before,#table-root .me-seat.active::before{display:none !important;animation:none !important}
#table-root .rail .opp.active .oseat:not(.clk),#table-root .me-seat.active .oseat:not(.clk){--p:100}
#table-root .rail .opp.active .oseat,#table-root .me-seat.active .oseat{animation:t2pulse 1.6s ease-in-out infinite}
#table-root .oseat.clk.warn{background:conic-gradient(#F0505F calc(var(--p)*1%),rgba(255,255,255,.16) 0)}
#table-root .rail .oseat .oa{width:48px !important;height:48px !important;border:0 !important;box-shadow:0 0 0 2px rgba(0,0,0,.35) !important;animation:none !important}
#table-root .rail .opp.active .oa{box-shadow:0 0 0 2px rgba(0,0,0,.35) !important}
#table-root .rail .oseat .oa .av-emoji{font-size:26px}
@keyframes t2pulse{0%,100%{box-shadow:0 0 0 5px rgba(233,185,73,.18),0 0 18px rgba(233,185,73,.45)}50%{box-shadow:0 0 0 9px rgba(233,185,73,.08),0 0 26px rgba(233,185,73,.6)}}
/* the card count: a little card back with the number on it */
#table-root .rail .ocnt{position:absolute;top:auto;bottom:-4px;left:-2px;right:auto;width:22px;height:30px;min-width:0;padding:0;border-radius:4px;
  background:linear-gradient(160deg,#2f4f8f,#1d3260);color:#fff;font:800 12px/30px inherit;text-align:center;display:block;border:0;
  box-shadow:inset 0 0 0 1.5px var(--cream),inset 0 0 0 2.2px rgba(242,210,122,.9),2px 2px 0 -1px var(--cream),2px 2px 0 0 rgba(0,0,0,.18),0 4px 8px rgba(0,0,0,.3)}
/* the game score: a cream tab on the ring */
#table-root .rail .osum{position:absolute;top:-4px;right:2px;left:auto;min-width:26px;height:20px;padding:0 6px;border-radius:7px;margin:0;
  background:var(--cream);color:var(--ink);font:800 12px/20px inherit;text-align:center;box-shadow:0 2px 0 rgba(0,0,0,.18);border:0}
#table-root .rail .osum.hot{background:#FFE1E4;color:#B3232A}
#table-root .rail .opp .oseat+.osum,#table-root .rail .opp>.osum{position:absolute;top:-4px;right:6px}
#table-root .rail .obadge{position:absolute;top:auto;bottom:-6px;left:50%;right:auto;transform:translateX(-50%);white-space:nowrap;z-index:2;
  font-size:10.5px;padding:1px 6px;border-radius:6px;background:var(--sun);color:#3D2A00;box-shadow:0 0 0 2px rgba(0,0,0,.25)}
#table-root .rail .oname{font-size:12.5px;font-weight:700;color:#fff;line-height:1.1;white-space:nowrap;max-width:84px;overflow:hidden;text-overflow:ellipsis;
  background:none !important;border:0 !important;padding:0 !important;border-radius:0 !important;margin-top:2px}
#table-root .rail .oname .opers{display:block;font-size:10.5px;font-weight:500;color:rgba(255,255,255,.62);overflow:hidden;text-overflow:ellipsis}
#table-root .rail .orate{font-size:11px;color:rgba(255,255,255,.62);font-weight:600;line-height:1;background:none;padding:0}
#table-root .rail .opp.done{opacity:.5}
#table-root .rail .sh-mini{margin-top:2px}
#table-root .rail.six .opp{width:60px}
#table-root .rail.six .oseat{width:46px;height:46px}
#table-root .rail.six .oseat .oa{width:39px !important;height:39px !important}
#table-root .rail.six .oseat .oa .av-emoji{font-size:21px}
#table-root .rail.six .ocnt{width:19px;height:26px;line-height:26px;font-size:11px;left:-5px}
#table-root .rail.six .osum{right:-6px}
#table-root .rail.six .oname{font-size:11.5px;max-width:60px}
#table-root .rail.six .oname .opers{display:none}
/* the piles' captions on the open felt */
#table-root .deck-label{font-size:12px;font-weight:600;color:rgba(255,255,255,.82);background:rgba(0,0,0,.25);border-radius:8px;padding:3px 10px;line-height:1.35}

/* ---- under the felt: status line, hand, sort chips, the dock ---- */
#table-root .myhand-wrap{display:flex;flex-direction:column;padding:0 0 calc(10px + env(safe-area-inset-bottom,0px)) !important;gap:0}
#table-root .myhand-wrap>.say-row{order:0;display:flex;justify-content:center;padding:4px 12px 0;min-height:38px}
#table-root .myhand-wrap>.myhand{order:1}
#table-root .myhand-wrap>.sort-bar{order:2;min-height:0;padding:2px 14px 6px !important;gap:6px}
#table-root .myhand-wrap>.dock{order:3}
#table-root .say-row .turn-banner{position:relative !important;top:auto !important;left:auto !important;transform:none !important;margin:0 !important;
  display:inline-flex;align-items:center;gap:8px;height:34px;max-width:100% !important;padding:0 14px 0 12px !important;border-radius:12px !important;
  background:rgba(8,30,20,.5) !important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff !important;border:0 !important;
  font-size:13.5px;font-weight:600;box-shadow:inset 0 0 0 1px rgba(242,210,122,.45) !important;white-space:nowrap !important;overflow:hidden;text-overflow:ellipsis;
  -webkit-line-clamp:unset !important;line-height:34px !important}
#table-root .say-row .turn-banner:empty{visibility:hidden}
#table-root .say-row .turn-banner::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--sun);box-shadow:0 0 0 4px rgba(233,185,73,.25)}
#table-root .say-row .turn-banner.you{background:rgba(8,30,20,.62) !important;box-shadow:inset 0 0 0 1.5px var(--sun),0 0 18px rgba(233,185,73,.35) !important}
#table-root .say-row .turn-banner.say-in{animation:t2say .32s cubic-bezier(.2,.8,.2,1)}
@keyframes t2say{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* the hand: bigger cards, readable corners, a gold frame on what I picked */
#table-root .myhand{--pcw:80px;--pch:115px}
#table-root .myhand{height:146px;min-height:146px;padding-top:24px}
#table-root .myhand .pc.sel{box-shadow:0 0 0 3px var(--sun),0 0 18px rgba(233,185,73,.55),0 10px 18px rgba(0,0,0,.35) !important}
#table-root .sort-btn{min-height:30px !important;padding:2px 11px !important;font-size:12px !important;border-radius:9px !important;
  background:rgba(0,0,0,.22) !important;border:0 !important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
#table-root .sort-btn.on{background:rgba(233,185,73,.22) !important;box-shadow:inset 0 0 0 1.5px var(--sun) !important;color:#fff}

/* the dock: one glass bar - me, my sum, my clock, my moves */
#table-root .dock{margin:0 12px;border-radius:22px;padding:10px;background:var(--glass);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 16px 30px -12px rgba(0,0,0,.55);color:#fff}
#table-root .me-row{display:flex;align-items:center;gap:8px;padding:0 4px 10px;min-height:44px}
#table-root .dock .me-seat{position:relative !important;inset:auto !important;transform:none !important;display:flex;align-items:center;gap:9px;flex:1;min-width:0}
#table-root .dock .me-seat .oseat{width:40px;height:40px}
#table-root .dock .me-seat .oa{width:34px !important;height:34px !important;border:0 !important;box-shadow:0 0 0 2px rgba(0,0,0,.3) !important;animation:none !important}
#table-root .dock .me-seat .oa .av-emoji{font-size:19px}
#table-root .me-nm{min-width:0;display:flex;align-items:baseline;gap:6px;line-height:1.2}
#table-root .me-nm b{font-weight:800;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#table-root .me-nm .rt{font-size:12px;font-weight:600;color:rgba(255,255,255,.6);white-space:nowrap}
#table-root .dock .me-seat .osum{position:static !important;transform:none !important;margin:0 0 0 auto;flex:none;height:30px;min-width:34px;padding:0 9px;border-radius:9px;
  display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);color:#fff;font:800 15px inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);border:0}
#table-root .dock .me-seat .osum.hot{background:rgba(240,80,95,.25);box-shadow:inset 0 0 0 1px #F0505F}
#table-root .me-chips{display:flex;gap:6px;flex:none}
#table-root .me-chips:empty{display:none}
#table-root .me-chips .yb-chip{display:inline-flex !important;flex-direction:row !important;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:9px;
  background:var(--cream) !important;color:#6B6256 !important;font-size:11px;font-weight:600;border:0 !important;box-shadow:none !important;min-width:0;white-space:nowrap}
#table-root .me-chips .yb-chip b{font:800 17px inherit;color:var(--ink) !important}
#table-root .me-timer{display:none;align-items:center;gap:5px;height:30px;padding:0 10px;border-radius:8px;flex:none;background:var(--cream);color:var(--ink);
  font:800 15px inherit;font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px var(--sun),0 3px 0 var(--sun-d);direction:ltr}
#table-root .me-timer.on{display:inline-flex}
#table-root .me-timer.on::before{content:"";width:13px;height:13px;flex:none;border-radius:50%;border:2px solid currentColor;box-sizing:border-box;
  background:linear-gradient(currentColor,currentColor) 50% 3px/2px 4px no-repeat}
#table-root .me-timer.warn{box-shadow:0 0 0 2px #F0505F,0 3px 0 #B3232A;color:#B3232A}
#table-root .acts{display:flex;gap:8px;align-items:stretch}
#table-root .dock .hand-actions{flex:1;min-width:0;min-height:50px !important;padding:0 !important;display:flex;gap:8px;flex-wrap:nowrap;justify-content:stretch;align-items:stretch}
#table-root .dock .hand-actions:empty::before{content:"";flex:1;min-height:50px;border-radius:16px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
#table-root .dock .hand-actions>.btn,#table-root .dock .hand-actions>button,#table-root .dock .yaniv-bar>.btn{flex:1 1 0;min-width:0;width:auto !important;height:50px;min-height:50px !important;
  border-radius:16px !important;font:800 17px inherit;padding:0 10px !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#table-root .dock .hand-actions .btn-primary,#table-root .dock .yaniv-call:not(.off){background:linear-gradient(180deg,#F04D4F,#E5383B) !important;color:#fff !important;border:0 !important;
  box-shadow:0 4px 0 #B3232A,0 12px 22px -8px rgba(179,35,42,.5) !important}
#table-root .dock .hand-actions .btn-ghost,#table-root .dock .hand-actions .btn-secondary,#table-root .dock .yaniv-call.off{background:rgba(255,255,255,.08) !important;color:#fff !important;border:0 !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16) !important}
#table-root .dock .yaniv-call.off{color:rgba(255,255,255,.6) !important}
#table-root .dock .yaniv-bar{flex:1;display:flex;gap:8px;width:auto;flex-wrap:nowrap}
#table-root .dock .chat-fab{position:static !important;inset:auto !important;width:50px !important;height:50px !important;flex:none;border-radius:14px !important;font-size:0;
  display:grid;place-items:center;background:rgba(255,255,255,.1) !important;color:#fff;border:0 !important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14) !important;margin:0}
#table-root .dock .chat-fab svg{width:22px;height:22px}
#table-root .chat-panel{bottom:calc(150px + env(safe-area-inset-bottom,0px))}

/* ---- short phones (small Android): tighter rail, hand and dock ---- */
@media (max-height:740px){
  #table-root .myhand{--pcw:70px;--pch:101px}
  #table-root .myhand{height:128px;min-height:128px;padding-top:20px}
  #table-root .rail .oseat{width:48px;height:48px}
  #table-root .rail .oseat .oa{width:41px !important;height:41px !important}
  #table-root .rail .opp .orate{display:none}
  #table-root .me-row{padding-bottom:8px;min-height:38px}
  #table-root .dock{padding:8px}
  #table-root .dock .hand-actions>.btn,#table-root .dock .hand-actions>button,#table-root .dock .yaniv-bar>.btn,#table-root .dock .chat-fab{height:46px !important;min-height:46px !important}
  #table-root .dock .chat-fab{width:46px !important}
  #table-root .felt::after{font-size:44px !important}
}
@media (max-width:380px){
  #table-root .myhand{--pcw:66px;--pch:95px}
  #table-root .dock .hand-actions>.btn,#table-root .dock .hand-actions>button,#table-root .dock .yaniv-bar>.btn{font-size:15px}
}
@media (max-height:640px){
  #table-root .myhand{--pcw:62px;--pch:89px}
  #table-root .myhand{height:112px;min-height:112px;padding-top:16px}
  #table-root .say-row{min-height:34px}
  #table-root .say-row .turn-banner{height:30px;line-height:30px !important;font-size:12.5px}
}

/* ---- reduced motion: the table holds still ---- */
@media (prefers-reduced-motion:reduce){
  #table-root .rail .opp.active .oseat,#table-root .me-seat.active .oseat,#table-root .say-row .turn-banner.say-in{animation:none !important}
  #table-root .myhand .pc,#table-root .board .pc{transition:none !important}
}

/* ---- fixes over the older table layers ---- */
#table-root .felt-bg::after{display:none !important}
#table-root .dock .me-seat{flex-direction:row !important;bottom:auto !important;left:auto !important;gap:9px !important;z-index:auto}
#table-root[data-game="war"] .dock .me-seat{display:flex !important}
#table-root .dock .me-seat .oa{position:relative;z-index:1}
#table-root .rail .oname .opers{color:rgba(255,255,255,.62) !important;background:none !important;padding:0 !important}
#table-root .rail .oname:has(.opers){padding:0 !important;border-radius:0 !important}
#table-root .rail .oname,#table-root .rail .orate{box-shadow:none !important;text-shadow:0 1px 2px rgba(0,0,0,.35)}
#table-root .rail .osum{box-shadow:0 2px 0 rgba(0,0,0,.18) !important;background:var(--cream) !important;color:var(--ink) !important;border:0 !important}
#table-root .rail .ocnt{top:20px !important;bottom:auto !important;left:-8px !important}
#table-root .rail.six .ocnt{top:14px !important;left:-9px !important}
#table-root .rail .obadge{bottom:-8px !important;z-index:3;max-width:none}
#table-root .game-top .icon-btn{width:38px !important;height:38px !important;min-width:38px}
#table-root .game-top{gap:6px}
#table-root .game-top .sub{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;line-height:1.2}
#table-root .dock .hand-actions .btn:not(.btn-primary):not(.yaniv-call):not(.slap-btn){background:rgba(255,255,255,.08) !important;color:#fff !important;border:0 !important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16) !important}
.sol-mode .felt::before{display:none !important}
.sol-mode .dock .me-row{display:none !important}
#table-root .deck-label{white-space:normal !important;max-width:44vw;text-align:center;overflow-wrap:anywhere}
#table-root .dock .hand-actions:empty::before{display:none}
/* my seat: avatar, then name over score */
#table-root .me-col{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px;line-height:1.2}
#table-root .me-sc{font-size:12px;color:rgba(255,255,255,.7);white-space:nowrap;display:flex;gap:4px;align-items:baseline}
#table-root .me-sc b.osum{all:unset;font:800 13px inherit;color:#fff;font-variant-numeric:tabular-nums}
#table-root .me-sc b.osum.hot{color:#FFB3BE}
#table-root .dock .hand-actions button.two{white-space:normal !important;line-height:1.1 !important;font-size:13px !important;text-overflow:clip}
/* sort chips: one compact line in every language */
#table-root .sort-btn{display:inline-flex !important;flex-direction:row !important;align-items:center;gap:4px;white-space:nowrap;line-height:1.1;font-stretch:normal}
#table-root .sort-btn *{display:inline !important;font-size:inherit}
#table-root .sort-bar{flex-wrap:nowrap;overflow:hidden}
#table-root .game-top .spec-pill{font-size:11px;padding:2px 7px;flex:none}
#table-root .dock .me-seat .me-sc b.osum{position:static !important;height:auto !important;min-width:0 !important;padding:0 !important;margin:0 !important;background:none !important;box-shadow:none !important;border-radius:0 !important;display:inline !important;font:800 13px inherit !important;color:#fff !important}
#table-root .dock .me-seat .me-sc b.osum.hot{color:#FFB3BE !important}
#table-root .me-chips .yb-chip{flex-direction:column !important;align-items:center !important;justify-content:center;gap:0 !important;height:34px !important;padding:0 9px !important;line-height:1}
#table-root .me-chips .yb-chip b{font-size:15px !important;line-height:1.05}
#table-root .me-chips .yb-chip{font-size:9.5px !important}
#table-root .say-row .turn-banner.two{white-space:normal !important;height:auto !important;min-height:34px;line-height:1.2 !important;padding:5px 14px !important;text-align:center}

/* ===================================================================
   v204 opening screen (canvas board "Splash"): logo A, the name,
   a fan of court cards and a gold loading bar on the felt
   =================================================================== */
.splash.splash-full.splash-a{background:radial-gradient(60% 40% at 50% 38%,rgba(242,210,122,.18),rgba(242,210,122,0) 70%),radial-gradient(90% 55% at 50% 45%,#2A8A5C 0%,#1E6A47 50%,#11402B 100%) !important;color:#fff;overflow:hidden}
.splash-a .splash-fallback{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;margin-top:-16vh}
.splash-a .splash-fallback>svg.lg-a{width:min(40vw,150px) !important;height:min(40vw,150px) !important;max-height:none;overflow:visible;filter:drop-shadow(0 16px 26px rgba(0,0,0,.35))}
.splash-a .splash-name{font-size:clamp(54px,19vw,76px) !important;font-weight:800;line-height:.95;letter-spacing:-1.5px;margin-top:18px;color:#fff !important;text-shadow:0 3px 0 rgba(0,0,0,.2)}
.splash-a .spl-fan{position:absolute;left:0;right:0;bottom:calc(120px + var(--sab,0px));height:200px;z-index:1;pointer-events:none}
.splash-a .spl-c{position:absolute;bottom:10px;opacity:.9}
.splash-a .spl-c .pc{--pcw:64px;--pch:92px;width:64px;height:92px}
.splash-a .spl-c1{left:calc(50% - 173px);transform:rotate(-18deg)}
.splash-a .spl-c2{left:calc(50% - 111px);bottom:34px;transform:rotate(-8deg)}
.splash-a .spl-c3{right:calc(50% - 111px);bottom:34px;transform:rotate(8deg)}
.splash-a .spl-c4{right:calc(50% - 173px);transform:rotate(18deg)}
.splash-a .spl-bar{position:absolute;left:50%;bottom:calc(48px + var(--sab,0px));width:168px;height:4px;margin-left:-84px;border-radius:2px;background:rgba(242,210,122,.22);overflow:hidden;z-index:2}
.splash-a .spl-bar i{display:block;width:62%;height:100%;border-radius:2px;background:linear-gradient(270deg,#C99A3E,#F2D27A);box-shadow:0 0 8px rgba(242,210,122,.8)}
.splash-a .splash-spin{display:none !important}
.splash-anim.splash-a .spl-c{animation:splDeal .5s cubic-bezier(.2,.8,.2,1) both}
.splash-anim.splash-a .spl-c1{animation-delay:.5s}.splash-anim.splash-a .spl-c2{animation-delay:.58s}.splash-anim.splash-a .spl-c3{animation-delay:.66s}.splash-anim.splash-a .spl-c4{animation-delay:.74s}
.splash-anim.splash-a .lg-tile{animation:lgTable .5s cubic-bezier(.2,1.1,.3,1) both;transform-box:fill-box;transform-origin:center}
.splash-anim.splash-a .lg-arc{animation:lgFade .4s ease both .9s}
.splash-anim.splash-a .spl-bar i{animation:splBar 1.4s ease-in-out infinite}
@keyframes splDeal{from{opacity:0;translate:0 40px;scale:.9}to{opacity:.9;translate:0 0;scale:1}}
@keyframes splBar{0%{transform:translateX(120%)}100%{transform:translateX(-120%)}}
@media (prefers-reduced-motion:reduce){ .splash-a *,.splash-a .spl-bar i{animation:none !important} }
@media (max-height:640px){ .splash-a .spl-fan{bottom:calc(84px + var(--sab,0px));height:160px} .splash-a .splash-fallback{margin-top:-12vh} }
/* sign-in: logo A, the name, then straight to the options */
.auth-wrap .auth-logo .logo-img{width:96px;height:96px;filter:drop-shadow(0 10px 18px rgba(0,0,0,.28))}
.auth-wrap .auth-name{text-align:center;font-size:44px;font-weight:800;line-height:1;letter-spacing:-1px;margin:6px 0 14px}

/* ---- chat: a sheet that rises over the table (canvas board ChatSheet) ---- */
@media not all and (min-width:1024px) and (min-height:600px){
  #table-root .chat-panel{position:fixed !important;left:0 !important;right:0 !important;bottom:0;width:auto !important;z-index:40;max-width:640px;margin:0 auto;
    background:#FFFDF9 !important;color:#231F1A;border:0 !important;border-radius:26px 26px 0 0 !important;padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px)) !important;
    box-shadow:0 0 0 100vmax rgba(4,20,12,.45),0 -10px 30px rgba(0,0,0,.25) !important;animation:t2sheet .28s cubic-bezier(.2,.8,.2,1)}
  #table-root .chat-panel::before{content:"";display:block;width:40px;height:5px;border-radius:3px;background:rgba(70,50,25,.2);margin:0 auto 10px}
  #table-root .chat-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}
  #table-root .chat-head b{font-size:21px;font-weight:800;letter-spacing:-.3px}
  #table-root .chat-log{max-height:30vh;overflow-y:auto;display:flex;flex-direction:column;gap:7px;padding:4px 0 10px;margin-bottom:8px;border-bottom:1px solid rgba(70,50,25,.12)}
  #table-root .chat-log:empty{display:none}
  #table-root .cl-msg{align-self:flex-end;max-width:82%;display:flex;flex-direction:column;align-items:flex-start}
  #table-root .cl-msg b{font-size:11.5px;font-weight:700;color:#6B6256;margin:0 6px 2px}
  #table-root .cl-msg span{background:#F3ECE0;box-shadow:inset 0 0 0 1px rgba(70,50,25,.12);padding:7px 12px;border-radius:16px 16px 4px 16px;font-size:14.5px;line-height:1.35;color:#231F1A}
  #table-root .cl-msg.mine{align-self:flex-start;align-items:flex-end}
  #table-root .cl-msg.mine span{background:#231F1A;color:#FFFDF9;box-shadow:none;border-radius:16px 16px 16px 4px}
  #table-root .chat-quick{gap:6px;margin-bottom:10px}
  #table-root .chat-chip{background:#F3ECE0 !important;color:#231F1A !important;border:0 !important;box-shadow:inset 0 0 0 1px rgba(70,50,25,.16);border-radius:999px;padding:7px 12px;font-size:13.5px;font-weight:600;min-height:36px}
  #table-root .chat-row .chat-inp{background:#F6F0E6 !important;color:#231F1A !important;border:0 !important;box-shadow:inset 0 0 0 1px rgba(70,50,25,.2);border-radius:999px;min-height:44px;padding:0 16px}
  #table-root .chat-row #chat-send{min-height:44px;border-radius:999px}
  #table-root .chat-row #chat-x{min-height:44px;width:44px !important;border-radius:12px;background:#F3ECE0 !important;color:#231F1A !important;border:0 !important}
}
@keyframes t2sheet{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){ #table-root .chat-panel{animation:none !important} }
.splash-anim.splash-a .splash-name{animation:lgFade .4s ease both .35s}
.splash-a .spl-c1{left:calc(50% - min(173px,47vw))}
.splash-a .spl-c2{left:calc(50% - min(111px,30vw))}
.splash-a .spl-c3{right:calc(50% - min(111px,30vw))}
.splash-a .spl-c4{right:calc(50% - min(173px,47vw))}
.splash-full.splash-a .splash-name{display:block !important}
/* war has no hand to hold: the felt takes that room */
#table-root[data-game="war"] .myhand,#table-root[data-game="war"] .sort-bar{display:none !important}
#table-root .felt .board .board-msg{max-width:88% !important}
#table-root .felt .board .board-msg{height:auto !important;min-height:0 !important;position:relative;z-index:2;line-height:1.3}
@media (max-width:400px){
  #table-root .game-top .icon-btn{width:34px !important;height:34px !important;min-width:34px}
  #table-root .game-top{gap:4px;padding-inline:8px}
  #table-root .game-top .title{font-size:16px}
  #table-root .gt-cov{width:28px;height:28px}
}
/* six at the table: names may take two short lines instead of being cut */
#table-root .rail.six .oname{white-space:normal;max-width:62px;line-height:1.1;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:clip}
/* the status line wraps to a second line rather than cutting a word */
#table-root .say-row .turn-banner{white-space:normal !important;height:auto !important;min-height:34px;line-height:1.25 !important;padding:6px 14px 6px 12px !important;text-align:center}
#table-root .felt .board .board-msg{background:rgba(0,0,0,.25) !important;color:rgba(255,255,255,.88) !important;border-radius:8px;padding:3px 10px}

/* ---- round score: a sheet rising from the felt (canvas board RoundScore) ---- */
.modal-back:has(.rs){align-items:flex-end !important;background:rgba(4,20,12,.45) !important}
.modal:has(.rs){width:100% !important;max-width:560px !important;margin:0 auto !important;border-radius:26px 26px 0 0 !important;background:#FFFDF9 !important;color:#231F1A !important;
  padding:10px 16px calc(18px + env(safe-area-inset-bottom,0px)) !important;border:0 !important;box-shadow:0 -12px 30px rgba(0,0,0,.3) !important;animation:t2sheet .32s cubic-bezier(.2,.8,.2,1)}
.modal:has(.rs)::before{content:"";display:block;width:40px;height:5px;border-radius:3px;background:rgba(70,50,25,.2);margin:0 auto 10px}
.rs h3{font-size:22px;font-weight:800;letter-spacing:-.3px;margin:0 4px 4px;color:#231F1A;text-align:start}
.rs .rs-table{width:100%;border-collapse:separate;border-spacing:0 2px;background:none !important}
.rs .rs-table th{font-size:11.5px;font-weight:700;color:#9A8F81;padding:0 6px 5px;border-bottom:1px solid rgba(70,50,25,.12);background:none !important;text-align:center}
.rs .rs-table th:nth-child(2){text-align:start}
.rs .rs-table td{height:50px;padding:0 6px;background:none !important;border:0 !important;color:#231F1A;text-align:center;font-variant-numeric:tabular-nums}
.rs .rs-table tr.me td{background:#FBEFD3 !important}
.rs .rs-table tr.me td:first-child{border-radius:0 12px 12px 0}.rs .rs-table tr.me td:last-child{border-radius:12px 0 0 12px}
html:not([dir=rtl]) .rs .rs-table tr.me td:first-child{border-radius:12px 0 0 12px}html:not([dir=rtl]) .rs .rs-table tr.me td:last-child{border-radius:0 12px 12px 0}
.rs .rs-rk{width:22px;font-weight:800;color:#B07A12}
.rs .rs-pl{text-align:start !important}
.rs .rs-plw{display:flex;align-items:center;gap:9px;min-width:0}
.rs .rs-av{width:32px;height:32px;border-radius:50%;flex:none;display:grid;place-items:center;color:#fff;font-weight:800;box-shadow:0 0 0 2px #E9B949;overflow:hidden}
.rs .rs-av .av-emoji{font-size:18px}
.rs .rs-nm{font-weight:700;font-size:14.5px;min-width:0;overflow-wrap:anywhere;line-height:1.2}
.rs .rs-win{font-style:normal}
.rs .rs-add{font-weight:700;color:#6B6256;white-space:nowrap}
.rs .rs-tot{font-weight:800;font-size:16px}
.rs tr.out td{opacity:.55}
.rs .hint{color:#6B6256 !important}
.rs .btn-row{gap:8px}

/* ---- the call moment: the word on a striped disc, the story in a pill (canvas board YanivMoment) ---- */
.announce.an-disc.an-yaniv,.announce.an-disc.an-assaf{top:40%;display:flex;flex-direction:column;align-items:center;gap:12px}
.announce.an-disc.an-yaniv .an-main,.announce.an-disc.an-assaf .an-main{width:132px;height:132px;border-radius:50%;display:grid;place-items:center;padding:0 10px;box-sizing:border-box;
  background:radial-gradient(circle,#EC4346 0 55%,transparent 56%),repeating-conic-gradient(#E5383B 0 15deg,#FFFDF9 15deg 30deg) !important;
  -webkit-background-clip:border-box !important;background-clip:border-box !important;-webkit-text-fill-color:#fff;color:#fff !important;
  font-size:clamp(22px,8vw,34px) !important;line-height:1 !important;text-shadow:0 2px 0 rgba(120,15,20,.5);overflow-wrap:anywhere;text-align:center;
  box-shadow:0 0 0 3px #B3232A,0 6px 0 #8A1A20,0 20px 34px rgba(0,0,0,.45);animation:t2disc .5s cubic-bezier(.2,1.4,.3,1) both}
.announce.an-disc.an-assaf .an-main{background:radial-gradient(circle,#2A2420 0 55%,transparent 56%),repeating-conic-gradient(#E9B949 0 15deg,#2A2420 15deg 30deg) !important;box-shadow:0 0 0 3px #B6861B,0 6px 0 #6B4C10,0 20px 34px rgba(0,0,0,.45);color:#F2D27A !important;-webkit-text-fill-color:#F2D27A}
.announce.an-disc.an-yaniv .an-sub,.announce.an-disc.an-assaf .an-sub{background:rgba(10,30,20,.62);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;text-shadow:none;
  padding:6px 14px;border-radius:12px;box-shadow:inset 0 0 0 1px rgba(242,210,122,.45);max-width:min(320px,86vw);font-size:14px;line-height:1.35}
@keyframes t2disc{from{transform:scale(.3) rotate(-30deg);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){ .announce .an-main{animation:none !important} }
.announce.an-disc{top:36%}
.announce.an-disc .an-sub{background:#0F2C1E !important;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:inset 0 0 0 1px rgba(242,210,122,.55),0 10px 24px rgba(0,0,0,.4) !important}
/* v206: the round sheet follows the look (light paper by day, warm dark by night) - text always on its own surface */
.modal:has(.rs){background:var(--rs-bg,#FFFDF9) !important;color:var(--rs-ink,#231F1A) !important}
html.pv-night .modal:has(.rs){--rs-bg:#2A241E;--rs-ink:#F6EEE2}
.rs h3,.rs .rs-table td,.rs .rs-nm,.rs .rs-tot{color:var(--rs-ink,#231F1A) !important}
.rs .rs-table th,.rs .rs-add,.rs .hint{color:var(--rs-ink,#231F1A) !important;opacity:.68}
.rs .rs-table tr.me td{background:rgba(233,185,73,.22) !important}
/* v230 (a player's report, 2026-11-01: "the left player puts cards on the right and the other way round"): the seats run left to
   right in every language, the order the trick spots (Hearts), the pass arrow ("שמאלה" = the next player) and the turn order use.
   In Hebrew/Arabic the rail used to flow right to left, so the next player sat on the right while their trick card lay on the left */
#table-root .opps.rail{direction:ltr}
html[dir=rtl] #table-root .opps.rail>*{direction:rtl}
