*{margin:0;padding:0;box-sizing:border-box}body{font-family:"Microsoft YaHei",sans-serif;background:#1a3a1a;color:#e8d5a3;min-height:100vh;overflow:hidden;user-select:none}
#setup-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:14px}
#setup-screen h1{font-size:2.2em;color:#ffd700;text-shadow:2px 2px 4px rgba(0,0,0,0.6);letter-spacing:.3em}
#fs-welcome{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;background:linear-gradient(180deg,#123a1f,#0a2412);display:flex;align-items:center;justify-content:center;cursor:pointer}
#fs-welcome .fs-box{text-align:center;color:#ffd700;padding:30px}
#fs-welcome .fs-icon{font-size:4em;line-height:1;margin-bottom:14px}
#fs-welcome .fs-title{font-size:1.5em;font-weight:bold;letter-spacing:.12em;margin-bottom:10px}
#fs-welcome .fs-sub{font-size:.95em;color:#cfe8d8;letter-spacing:.05em}
body.rotate-fallback{position:fixed;top:0;left:0;width:100vh;height:100vw;transform:translateX(100vw) rotate(90deg);transform-origin:top left}
#seat-indicator{font-size:1.6em;color:#ffd700;background:rgba(0,0,0,0.4);padding:6px 20px;border-radius:20px;border:1px solid #8b7355}
.setup-card{background:rgba(0,0,0,0.4);border:2px solid #8b7355;border-radius:16px;padding:20px 35px;min-width:400px;max-width:460px}
.setup-card h2{text-align:center;margin-bottom:12px;color:#ffd700;font-size:1.1em}
.setup-row{display:flex;align-items:center;margin:10px 0;gap:10px}
.setup-row label{width:85px;text-align:right;font-size:1em}
.setup-row input{flex:1;padding:8px 12px;border-radius:8px;border:1px solid #8b7355;background:rgba(255,255,255,0.1);color:#e8d5a3;font-size:1em}
#avatar-row{display:flex;align-items:center;gap:10px;width:100%;max-width:1920px;margin:0 auto;padding:0 10px;box-sizing:border-box}
#avatar-grid{display:flex;flex-wrap:nowrap;gap:8px;align-items:center;flex:1 1 auto;min-width:0;justify-content:space-between;margin:0}
.avatar-option{width:96px;height:121px;border-radius:18px;background:rgba(255,255,255,0.08);border:2px solid #5c3d1e;overflow:hidden;cursor:pointer;transition:all .2s;flex:0 0 auto}
.avatar-option.dragging{opacity:.35}
.avatar-option img{width:100%;height:100%;object-fit:cover;display:block}
#avatar-grid .avatar-option{display:flex;flex-direction:column}
#avatar-grid .avatar-option img{width:100%;height:auto;flex:1 1 auto;min-height:0;object-fit:cover;display:block}
.avatar-name{flex:0 0 36px;font-family:"Microsoft YaHei","微软雅黑",sans-serif;font-weight:bold;color:#00ffff;text-align:center;line-height:36px;font-size:21px;background:rgba(0,0,0,0.35);letter-spacing:0.5em;text-indent:0.5em}
.avatar-option:hover{border-color:#d4a017;background:rgba(255,215,0,0.1);transform:scale(1.15)}
.avatar-option:active{transform:scale(.94)}
.avatar-option.selected{border-color:#ffd700!important;background:rgba(255,215,0,0.2)!important;box-shadow:0 0 10px rgba(255,215,0,0.4)}

.room-id-display{text-align:center;font-size:1.3em;color:#ffd700;letter-spacing:.2em;margin:8px 0}
.copy-btn{background:rgba(255,255,255,0.1);border:1px solid #8b7355;color:#e8d5a3;padding:4px 10px;border-radius:4px;cursor:pointer;font-size:.8em}
.player-list{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:8px 0}
.player-slot{background:rgba(0,0,0,0.3);border:1px solid #8b7355;border-radius:8px;padding:8px 12px;text-align:center;min-width:80px}
.player-slot.filled{border-color:#d4a017}
.player-slot .slot-avatar{font-size:1.3em;display:block}
.player-slot .slot-avatar img{width:28px;height:35px;object-fit:cover;border-radius:6px;display:block;margin:0 auto}
.player-slot .slot-name{font-size:.85em}
.player-slot .slot-wind{font-size:.65em;color:#888}

#btn-ready{width:100%;padding:12px;font-size:1.2em;background:linear-gradient(180deg,#27ae60,#1e8449);color:#fff;border:2px solid #2ecc71;border-radius:12px;cursor:pointer;letter-spacing:.2em;font-weight:bold;margin-top:4px}
#btn-ready:hover{background:linear-gradient(180deg,#2ecc71,#27ae60)}
#btn-ready:active,#btn-start-game:active{filter:brightness(.88);transform:translateY(1px)}
#btn-start-game{width:100%;padding:12px;font-size:1.2em;background:linear-gradient(180deg,#c0392b,#922b21);color:#ffd700;border:2px solid #d4a017;border-radius:12px;cursor:pointer;letter-spacing:.2em;font-weight:bold;margin-top:8px}
#btn-start-game:hover{background:linear-gradient(180deg,#e74c3c,#b03a2e)}
#btn-start-game:disabled{opacity:.4;cursor:not-allowed}

#game-screen{position:relative;display:none;flex-direction:column;align-items:center;height:100vh;padding:12px 10px}
#game-header{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:860px;padding:8px 16px;background:rgba(0,0,0,0.4);border:1px solid #8b7355;border-radius:10px;margin-bottom:10px}
#my-info{display:flex;align-items:center;gap:8px}
#my-avatar{font-size:1.6em}
#my-avatar img{width:30px;height:38px;object-fit:cover;border-radius:6px;display:block}
#my-wind{font-size:1.4em}
#my-name{font-weight:bold;font-size:1.1em}
#turn-indicator{font-size:.9em;color:#aaa;min-width:120px;text-align:right}
#top-controls{display:flex;gap:8px}
#top-controls button{padding:4px 12px;border-radius:6px;cursor:pointer;font-size:.8em;background:rgba(0,0,0,0.5);color:#e8d5a3;border:1px solid #8b7355}
#top-controls button:hover{background:rgba(0,0,0,0.7)}

#hand-area{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;flex:1;width:100%;max-width:1920px;min-height:0}
#my-melds{display:none;flex-wrap:wrap;gap:3px;justify-content:center;align-items:center;max-width:100%;padding:6px 8px 0;box-sizing:border-box}
.meld-group{display:flex;align-items:center;gap:2px;border:1px solid rgba(212,160,23,.55);border-radius:6px;padding:3px 5px;background:rgba(0,0,0,.22);flex-shrink:0}
.meld-label{font-size:.62em;color:#ffd700;background:rgba(212,160,23,.16);border-radius:4px;padding:1px 5px;margin-right:2px;line-height:1.4}
.meld-tile{display:inline-block;font-size:2.08em;line-height:1;width:1em;height:1.35em;overflow:hidden;flex-shrink:0}
.meld-tile img,.meld-tile svg{width:100%;height:100%;display:block}
#hand-row{display:flex;align-items:flex-end;justify-content:center;flex-wrap:nowrap;width:100%;max-width:100%;gap:10px;padding:6px 18px;background:rgba(0,0,0,0.28);border:1px solid #3a2a0a;border-radius:12px;box-sizing:border-box}
#hand-area.my-turn #hand-row{background:rgba(255,215,0,0.06);border-color:rgba(255,215,0,0.4)}
#hand-tiles{display:flex;gap:0;flex-wrap:nowrap;justify-content:center;align-items:flex-end;min-height:0;padding:calc(6px + 0.71em) 6px 6px;touch-action:none;flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;box-sizing:border-box}
#hand-tiles:has(.discard-anim){overflow-x:visible;overflow-y:visible}
#self-meld-text{display:none;flex:0 1 auto;max-width:36%;min-width:0;color:#ffd700;font-size:min(3.2vmin,14px);line-height:1.35;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.8);padding:2px 4px;box-sizing:border-box;overflow:hidden;align-self:center}

.tile{display:inline-flex;align-items:center;justify-content:center;font-size:6.6em;line-height:1.5;cursor:default;position:relative;font-family:"Microsoft YaHei","Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;box-shadow:0 3px 8px rgba(0,0,0,.35);width:1em;height:1.35em}
.tile img{width:100%;height:100%;display:block;object-fit:fill}
.tile svg{width:100%;height:100%;display:block}
#hand-tiles .tile{margin:0 0.03em}
.tile.selectable{cursor:pointer}
.tile.grabbed{outline:none;filter:brightness(1.15)}
.tile.dragging-out{outline:none;filter:brightness(1.2) drop-shadow(0 0 5px rgba(255,107,107,0.85))}
.tile.discard-anim{animation:tileDiscard .34s ease-out forwards;pointer-events:none}
.tile.drawn-mark{transform:translateY(-7%)}
@keyframes tileDiscard{
  0%{transform:translateY(0);opacity:1}
  70%{transform:translateY(-100%);opacity:1}
  100%{transform:translateY(-100%);opacity:0}
}
.tile.meld-tile{font-size:5.4em}
.tile.chi-candidate{--chi-flash:1;animation:chiFlash .6s infinite}
.tile.chi-candidate::after,.tile.chi-selected::after{content:"";position:absolute;inset:0;pointer-events:none;border:4px solid #ffd700;border-radius:12px;box-shadow:0 0 12px rgba(255,215,0,.85);opacity:var(--chi-flash,1)}
.tile.chi-selected{transform:translateY(-10%);z-index:2;animation:none;--chi-flash:1}
.tile.chi-selected::after{opacity:var(--chi-flash,1)}
.tile.pong-candidate{--pong-flash:1;animation:pongFlash .6s infinite}
.tile.pong-candidate::after,.tile.pong-selected::after{content:"";position:absolute;inset:0;pointer-events:none;border:4px solid #e74c3c;border-radius:12px;box-shadow:0 0 12px rgba(231,76,60,.85);opacity:var(--pong-flash,1)}
.tile.pong-selected{transform:translateY(-10%);z-index:2;animation:none;--pong-flash:1}
.tile.pong-selected::after{opacity:var(--pong-flash,1)}
.tile.win-candidate{--win-flash:1;animation:winFlash .6s infinite}
.tile.win-candidate::after,.tile.win-selected::after{content:"";position:absolute;inset:0;pointer-events:none;border:4px solid #2ecc71;border-radius:12px;box-shadow:0 0 12px rgba(46,204,113,.85);opacity:var(--win-flash,1)}
.tile.win-selected{transform:translateY(-10%);z-index:2;animation:none;--win-flash:1}
.tile.win-selected::after{opacity:var(--win-flash,1)}
.tile.kong-candidate{--kong-flash:1;animation:kongFlash .6s infinite}
.tile.kong-candidate::after,.tile.kong-selected::after{content:"";position:absolute;inset:0;pointer-events:none;border:4px solid #a569bd;border-radius:12px;box-shadow:0 0 12px rgba(165,105,189,.85);opacity:var(--kong-flash,1)}
.tile.kong-selected{transform:translateY(-10%);z-index:2;animation:none;--kong-flash:1}
.tile.kong-selected::after{opacity:var(--kong-flash,1)}
.tile.chi-invalid{animation:chiShake .45s}
@keyframes chiFlash{
  0%,49.9%{--chi-flash:1}
  50%,100%{--chi-flash:0}
}
@keyframes pongFlash{
  0%,49.9%{--pong-flash:1}
  50%,100%{--pong-flash:0}
}
@keyframes winFlash{
  0%,49.9%{--win-flash:1}
  50%,100%{--win-flash:0}
}
@keyframes kongFlash{
  0%,49.9%{--kong-flash:1}
  50%,100%{--kong-flash:0}
}
@keyframes chiShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.tile.chi-action-tile{margin-left:.45em;margin-right:0;flex:none;cursor:pointer;background:linear-gradient(180deg,#fffdf3,#e9dfc3);color:#5a3d1a;border:2px solid #8b7355;border-radius:10px;box-shadow:0 3px 8px rgba(0,0,0,.35);width:1em;height:1.35em;font-size:6.6em;transform:none}
.tile.chi-action-tile .chi-action-text{font-size:.5em;line-height:1}
.tile.chi-action-tile:hover{filter:brightness(1.06)}
.tile.chi-action-tile.chi-ready{background:linear-gradient(180deg,#d9f7d9,#8fd98f);color:#0b5d0b;border-color:#1e8449;box-shadow:0 0 14px rgba(46,204,113,.8)}
.tile.chi-action-tile.pong-ready{background:linear-gradient(180deg,#bfe3ff,#7ab8e8);color:#0b3d66;border-color:#1f618d;box-shadow:0 0 14px rgba(41,128,185,.8)}
.tile.chi-action-tile.win-ready{background:linear-gradient(180deg,#fbdcd5,#f0a99a);color:#7b0f0f;border-color:#c0392b;box-shadow:0 0 14px rgba(231,76,60,.8)}
.tile.chi-action-tile.kong-ready{background:linear-gradient(180deg,#e6d5f2,#c49ae0);color:#3d0f5e;border-color:#6c3483;box-shadow:0 0 14px rgba(142,68,173,.8)}

#action-bar{display:flex;gap:10px;flex-wrap:nowrap;justify-content:flex-start;min-height:0;margin:0 0 0 12px;flex:none}
#action-bar button{padding:10px 24px;font-size:1.2em;border-radius:10px;border:2px solid #d4a017;cursor:pointer;font-weight:bold;letter-spacing:.1em;transition:all .2s}
#action-bar button:disabled{opacity:.4;cursor:not-allowed}
.btn-win{background:linear-gradient(180deg,#e74c3c,#c0392b);color:#fff}
.btn-kong{background:linear-gradient(180deg,#8e44ad,#6c3483);color:#fff}
.btn-pong{background:linear-gradient(180deg,#2980b9,#1f618d);color:#fff}
.btn-chi{background:linear-gradient(180deg,#27ae60,#1e8449);color:#fff}
.chi-opt-tile{display:inline-block;width:1.15em;height:1.55em;vertical-align:middle;margin:0 2px}
.chi-opt-tile img{width:100%;height:100%;display:block}
.btn-pass{background:linear-gradient(180deg,#7f8c8d,#616a6b);color:#fff}
.btn-discard{background:linear-gradient(180deg,#d35400,#a04000);color:#fff}
#action-bar button:hover:not(:disabled){filter:brightness(1.2)}
#action-bar button:active:not(:disabled){transform:scale(.94)}
#message-bar{font-size:1.3em;font-weight:bold;color:#ffd700;text-shadow:2px 2px 4px rgba(0,0,0,0.8);min-height:30px;text-align:center;transition:opacity .3s}
#round-info{font-size:.9em;color:#aaa}
#log-panel{position:absolute;right:10px;bottom:10px;width:200px;max-height:180px;overflow-y:auto;background:rgba(0,0,0,0.5);border:1px solid #8b7355;border-radius:8px;padding:8px;font-size:.75em}
#log-panel .log-entry{padding:2px 0;border-bottom:1px solid rgba(255,255,255,0.1)}

#gameover-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);z-index:100;justify-content:center;align-items:center}
#gameover-overlay.show{display:flex}
#gameover-card{background:linear-gradient(180deg,#2a1a0a,#1a0a00);border:3px solid #d4a017;border-radius:20px;padding:18px 10px;text-align:center;min-width:0;max-width:calc(100vw - 12px);box-sizing:border-box}
#gameover-card h2{font-size:2em;color:#ffd700;margin-bottom:20px}
#gameover-card .winner{font-size:1.5em;margin:10px 0}
.go-encourage-wrap{min-height:0;margin-bottom:12px}
.go-encourage{font-size:1.89em;color:#ffd700;text-shadow:2px 2px 4px rgba(0,0,0,.6);margin:8px 0 12px;line-height:1.5}
.go-score{margin:6px 0 10px;padding:10px 12px;background:rgba(0,0,0,.32);border:1px solid rgba(212,160,23,.4);border-radius:12px}
.gs-line{font-size:1.08em;font-weight:700;color:#ffd700;margin-bottom:5px}
.gs-fans{font-size:.9em;color:#ffe9b0;margin-bottom:8px;word-break:break-all}
.gs-players{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.gs-p{display:flex;align-items:center;gap:8px;padding:5px 10px;background:rgba(255,255,255,.06);border-radius:8px;font-size:.9em}
.gs-p.win{background:rgba(232,184,48,.22);border:1px solid #d4a017}
.gs-delta{font-weight:800;color:#7ee08a;min-width:34px}
.gs-total{color:rgba(245,230,200,.75);font-size:.82em}
#gameover-card button{margin-top:20px;padding:12px 30px;font-size:1.1em;border-radius:8px;cursor:pointer;background:linear-gradient(180deg,#c0392b,#922b21);color:#ffd700;border:2px solid #d4a017}

#gameover-card .as-row{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:1920px;margin:0 auto;padding:0 10px;box-sizing:border-box;overflow:visible}
.as-countdown{flex:0 0 auto;width:68px;height:88px;box-sizing:border-box;border-radius:14px;background:rgba(0,0,0,.45);border:2px solid #d4a017;color:#ffd700;font-size:2.2em;font-weight:800;line-height:1;text-align:center;display:flex;align-items:center;justify-content:center}
.as-grid{display:flex;flex-wrap:nowrap;gap:8px;align-items:center;flex:1 1 auto;min-width:0;justify-content:space-between;margin:0}
#gameover-card .as-grid .avatar-option{width:96px;height:121px;border-radius:18px;flex:0 0 auto}
#gameover-card .as-grid .avatar-option:hover{transform:none}
#gameover-card .as-grid .avatar-option.used{opacity:.28;cursor:not-allowed;pointer-events:none}
.as-continue{flex:0 0 auto;width:96px;height:110px;border-radius:16px;font-size:2.94em;font-weight:bold;letter-spacing:.12em;background:linear-gradient(180deg,#7f8c8d,#616a6b);color:#fff;border:2px solid #d4a017;cursor:pointer;transition:filter .2s;display:flex;align-items:center;justify-content:center;line-height:1;writing-mode:vertical-rl;transform:translateY(-10%)}
.as-continue:hover:not(:disabled){filter:brightness(1.2)}
.as-continue:active:not(:disabled){transform:translateY(-10%) scale(.94)}
.as-continue:disabled{opacity:.45;cursor:default}

@media (max-width:720px), (max-height:520px) and (max-width:950px){

  #avatar-row{position:relative}
  #avatar-grid{flex-wrap:wrap;justify-content:center;overflow:visible;padding-bottom:4px}
  #avatar-grid .avatar-option{flex:0 0 auto}
  #countdown-bar{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:6;box-shadow:0 0 18px rgba(0,0,0,.6)}
  .as-grid{justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding-bottom:4px}
  #gameover-card .as-grid .avatar-option{min-width:64px}
  .as-countdown{min-width:64px}
  .as-continue{flex:0 0 96px}
}

/* 玩家端界面不显示自己的明牌（公共牌桌明牌仍正常显示） */

#btn-ready.hidden{display:none}

#countdown-bar{
  display:none;width:76.5px;height:96.75px;flex:0 0 auto;text-align:center;
  background:rgba(0,0,0,0.45);border:2px solid #d4a017;border-radius:18px;color:#ffd700;
  font-size:2.7em;line-height:87.75px;box-sizing:border-box;
}
#countdown-bar .cd-time{font-weight:800;margin:0;color:#ffd700}

/* 玩家牌面精简模式：只保留一行麻将牌与吃碰杠提示 */
#game-header,#message-bar,#log-panel{display:none!important}

/* phone mute */
#mute-btn{position:fixed;top:8px;left:8px;top:max(8px,env(safe-area-inset-top,0px));left:max(8px,env(safe-area-inset-left,0px));z-index:300;width:48px;height:48px;border-radius:50%;background:rgba(0,0,0,.58);border:1px solid #8b7355;color:#ffd700;font-size:1.35em;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
#mute-btn:active{transform:scale(.92)}
#mute-btn.off{background:rgba(140,35,35,.68);border-color:#c0392b;color:#fff}
#exit-btn{position:fixed;top:8px;right:8px;top:max(8px,env(safe-area-inset-top,0px));right:max(8px,env(safe-area-inset-right,0px));z-index:300;height:44px;min-width:58px;padding:0 14px;border-radius:12px;background:rgba(0,0,0,.58);border:1px solid #9c6b30;color:#ffd700;font-size:.95em;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
#exit-btn:active{transform:scale(.94)}
#opponents{display:none;position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:20}
.opp-mod{position:absolute;display:none;align-items:center;justify-content:center;width:min(16vmin,94px);height:auto}
.opp-cell{display:flex;flex-direction:column;align-items:center;width:100%;position:relative}
.opp-face{display:flex;align-items:center;justify-content:center;width:min(15vmin,86px);height:calc(min(15vmin,86px)*1.26);margin:2px 0;background:rgba(0,0,0,.5);border:2px solid #d4a017;border-radius:12px;overflow:hidden;box-shadow:0 3px 10px rgba(0,0,0,.45);flex:0 0 auto}
.opl-score{font-size:min(3.2vmin,14px);color:#ffd700;font-weight:800;line-height:1.1;text-shadow:1px 1px 2px rgba(0,0,0,.85);white-space:nowrap;min-height:1.1em}
.opl-name{font-size:min(2.9vmin,13px);color:#fff;font-weight:700;line-height:1.1;text-shadow:1px 1px 2px rgba(0,0,0,.9);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.opp-mod[data-wind="west"]{width:auto;min-width:min(15vmin,86px)}
.opp-mod[data-wind="west"] .opp-cell{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;align-items:center;column-gap:5px;row-gap:0}
.opp-mod[data-wind="west"] .opp-face{grid-column:1;grid-row:1/3}
.opp-mod[data-wind="west"] .opl-score{grid-column:2;grid-row:1;text-align:left;padding-left:2px;margin:0}
.opp-mod[data-wind="west"] .opl-name{grid-column:2;grid-row:2;text-align:left;padding-left:2px}
.opp-face img.opp-avatar{width:100%;height:100%;object-fit:cover;display:block}
.opp-tile{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#fffdf3,#e9dfc3);border:2px solid #d4a017;border-radius:12px;box-shadow:0 3px 10px rgba(0,0,0,.45);overflow:hidden}
.opp-tile img,.opp-tile svg{width:100%;height:100%;display:block;object-fit:fill}
#opp-top{top:max(8px,env(safe-area-inset-top,0px));left:50%;transform:translateX(-50%)}
#opp-left{left:max(8px,env(safe-area-inset-left,0px));top:50%;transform:translateY(-50%)}
#opp-right{right:max(8px,env(safe-area-inset-right,0px));top:50%;transform:translateY(-50%)}
.opp-meld{position:absolute;display:none;pointer-events:none;z-index:21;color:#ffd700;font-size:min(3.4vmin,15px);line-height:1.45;font-weight:700;text-align:left;white-space:pre-line;text-shadow:1px 1px 2px rgba(0,0,0,.8);max-width:38vw}
@media (orientation:landscape) and (max-width:950px) and (max-height:560px){
  #opponents{display:block}
  .opp-mod{display:flex}
}
body.rotate-fallback #opponents{display:block}
body.rotate-fallback .opp-mod{display:flex}

/* 手机端中央出牌计数表 */
#tally-wrap{display:none;position:absolute;left:50%;transform:translateX(-50%);z-index:30;pointer-events:none;background:rgba(0,0,0,.62);border:1px solid #d4a017;border-radius:10px;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.5)}
#tally-wrap table{width:100%;height:100%;border-collapse:collapse;table-layout:fixed;color:#ffd700;user-select:none}
#tally-wrap td{width:calc(100%/11);height:calc(100%/5);text-align:center;border:1px solid rgba(255,215,0,.20);padding:0;line-height:1}
#tally-wrap td.h{background:rgba(212,160,23,.24);color:#fff3d0;font-weight:800}
#tally-wrap td.v{background:rgba(212,160,23,.18);color:#ffe9b0;font-weight:800}
#tally-wrap td.tally-name-cell{color:#00ffff;font-weight:800;font-size:.9em;overflow:hidden;white-space:nowrap}
#tally-wrap td.tally-score-cell{color:#ffd700;font-weight:800;font-size:.95em;overflow:hidden;white-space:nowrap}
#tally-wrap td.c0{color:rgba(255,255,255,.30)}
#tally-wrap td.c1{color:#fff;background:rgba(255,215,0,.05)}
#tally-wrap td.c2{color:#ffd700}
#tally-wrap td.c3{color:#ff9a2a}
#tally-wrap td.c4{color:#ff5e00}
