:root{--wood-0: #170e08;--wood-1: #2a180d;--wood-2: #4a2c18;--wood-3: #6e4424;--felt-1: #1c7c66;--felt-2: #0c4a3d;--ivory: #f7eedb;--ivory-2: #e9dcc0;--ink: #2a1a10;--ink-soft: #7a6348;--cream: #f3e6cd;--muted: #c9b08a;--brass: #d9ae4f;--brass-dark: #a97c25;--tea: #c2511f;--tea-dark: #96380f;--danger: #b3261e;--ok: #1f7a4d;--team-a: #3cc0b5;--team-b: #f08a4b;--team-c: #ecc94f;--team-d: #c39be6;--radius: 14px;--shadow: 0 10px 30px rgba(0, 0, 0, .45);font-family:Tajawal,Segoe UI,Tahoma,sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}html{background:var(--wood-0)}body{margin:0;color:var(--cream);background:repeating-linear-gradient(92deg,rgba(255,255,255,.018) 0 2px,transparent 2px 9px),repeating-linear-gradient(88deg,rgba(0,0,0,.12) 0 1px,transparent 1px 23px),radial-gradient(120% 90% at 50% 0%,var(--wood-2),var(--wood-1) 55%,var(--wood-0));background-attachment:fixed;font-size:16px;line-height:1.6;-webkit-tap-highlight-color:transparent}h1,h2,h3{font-family:Aref Ruqaa,Tajawal,serif;margin:0 0 .4em;line-height:1.3;font-weight:700}h1{font-size:1.5rem}h2{font-size:1.45rem}h3{font-size:1.15rem}p{margin:0 0 .8em}button,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid var(--brass);outline-offset:2px}.muted{color:var(--muted)}.center{text-align:center}.hint{font-size:.85rem;color:var(--ink-soft);margin:.6em 0 0}.error{color:var(--danger);font-weight:700;margin:.4em 0}.ok{color:var(--ok);font-weight:700;margin:.4em 0}.page{max-width:1080px;margin:0 auto;padding:14px 16px 40px;min-height:100%}.page.narrow{max-width:460px}.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;flex-wrap:wrap}.bar h1{margin:0;flex:1;text-align:center}.bar h1 small{font-family:Tajawal,sans-serif;font-size:.9rem;color:var(--muted);font-weight:500}.bar nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.splash{height:100%;display:grid;place-items:center}.card{background:linear-gradient(180deg,var(--ivory),var(--ivory-2));color:var(--ink);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow),inset 0 0 0 1px #ffffff80;border:1px solid var(--brass-dark);margin-bottom:16px}.card .muted{color:var(--ink-soft)}.card label{display:block;margin-bottom:12px;font-weight:700;font-size:.92rem}.card label>span{display:block;margin-bottom:4px}.card input:not([type=file]),.search{width:100%;padding:11px 12px;border-radius:10px;border:1.5px solid #c9b58d;background:#fffaf0;color:var(--ink);font-size:1rem}.card input:disabled{background:#efe4cb;color:var(--ink-soft)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 18px;border-radius:999px;border:1.5px solid transparent;font-weight:800;text-decoration:none;min-height:44px;transition:transform .08s,filter .15s}.btn:active:not(:disabled){transform:translateY(1px) scale(.99)}.btn.primary{background:linear-gradient(180deg,#d9662c,var(--tea));color:#fff7ea;border-color:var(--tea-dark);box-shadow:0 3px 0 var(--tea-dark)}.btn.primary:hover:not(:disabled){filter:brightness(1.08)}.btn.primary:disabled{background:#b9a988;border-color:#a39270;box-shadow:none;color:#f3ead6}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--brass-dark)}.btn.danger{background:var(--danger);color:#fff}.btn.big{width:100%;font-size:1.1rem;min-height:52px}.btn.small{padding:6px 14px;min-height:36px;font-size:.9rem}.link{background:none;border:0;padding:4px 2px;color:var(--brass);font-weight:700;text-decoration:underline;text-underline-offset:3px}.card .link{color:var(--tea-dark)}.link.danger{color:var(--danger)}.link.back{text-decoration:none}.seg{display:flex;background:#e3d4b2;border-radius:999px;padding:4px;margin-bottom:12px}.seg button{flex:1;border:0;background:transparent;color:var(--ink);padding:9px 8px;border-radius:999px;font-weight:700;min-height:40px}.seg button.on{background:var(--wood-2);color:var(--cream);box-shadow:0 2px 6px #0000004d}.seg button small{opacity:.8;margin-inline-start:4px}.team-names{display:grid;grid-template-columns:1fr 1fr;gap:10px}.team-names label>span:before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--team);margin-inline-end:6px}.pill{display:inline-block;padding:1px 10px;border-radius:999px;font-size:.8rem;font-weight:800;background:#e3d4b2;color:var(--ink)}.pill.win{background:var(--ok);color:#fff}.pill.lose{background:#8d7a5c;color:#fff}.logo{display:flex;align-items:center;justify-content:center;gap:12px}.logo-text{font-family:Aref Ruqaa,serif;font-size:2.6rem;font-weight:700;color:var(--brass);text-shadow:0 2px 0 #000,0 0 24px rgba(217,174,79,.25)}.logo.small .logo-text{font-size:1.6rem}.logo-tile{width:26px;height:52px;border-radius:6px;background:var(--ivory);border:1.5px solid var(--brass-dark);display:grid;grid-template-columns:1fr 1fr;align-content:space-evenly;justify-items:center;padding:4px 3px;transform:rotate(-8deg);box-shadow:0 4px 10px #00000080}.logo.small .logo-tile{width:18px;height:36px;padding:3px 2px;border-radius:4px}.logo-tile i{width:6px;height:6px;border-radius:50%;background:var(--ink)}.logo.small .logo-tile i{width:4px;height:4px}.logo-tile i:nth-child(3){grid-column:1 / 3}.logo-tile b{grid-column:1 / 3;width:80%;height:1.5px;background:var(--ink)}.tagline{text-align:center;color:var(--muted);margin:6px 0 20px}.auth{padding-top:8vh}.auth-links{display:flex;justify-content:space-between;gap:10px;margin-top:12px;flex-wrap:wrap}.invite{background:#3cc0b524;border:1px solid var(--team-a);border-radius:var(--radius);padding:12px 14px;margin-bottom:14px}.invite small{display:block;color:var(--muted)}.invite.warn{background:#f08a4b24;border-color:var(--team-b)}.recovery{font-size:2rem;font-weight:800;letter-spacing:.12em;text-align:center;background:#fffaf0;border:2px dashed var(--brass-dark);border-radius:12px;padding:14px;margin:12px 0 16px;-webkit-user-select:all;user-select:all}.home-grid{display:grid;grid-template-columns:1fr;gap:16px}@media(min-width:820px){.home-grid{grid-template-columns:1.5fr 1fr;align-items:start}}.who{display:inline-flex;align-items:center;gap:8px;background:#0000004d;border:1px solid var(--brass-dark);border-radius:999px;padding:4px 12px 4px 4px;font-weight:700;min-height:40px}[dir=rtl] .who{padding:4px 4px 4px 12px}.game-pick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.game-card{text-align:start;background:#fffaf0;border:2px solid #d6c49c;border-radius:12px;padding:12px;color:var(--ink);display:grid;gap:2px;position:relative}.game-card.on{border-color:var(--tea);background:#fff3de;box-shadow:0 0 0 3px #c2511f2e}.game-card b{font-family:Aref Ruqaa,serif;font-size:1.4rem}.game-card .target-num{position:absolute;inset-inline-end:12px;top:10px;font-weight:800;font-size:1.3rem;color:var(--tea-dark)}.game-card small{color:var(--ink-soft);line-height:1.4}.join-form{display:flex;gap:8px}.join-form input{text-align:center;letter-spacing:.25em;font-weight:800;text-transform:uppercase}.join{position:relative;overflow:hidden}.istikan{margin:22px auto 4px;width:64px;height:84px;position:relative}.istikan span{position:absolute;top:0;right:8px;bottom:12px;left:8px;border-radius:6px 6px 22px 22px/6px 6px 40px 40px;background:linear-gradient(180deg,#ffffff8c 0,#ffffff8c 18%,#c2511f 18%,#c2511f 60%,#7d2c0b);border:2px solid rgba(255,255,255,.85);box-shadow:inset 6px 0 8px #ffffff59;clip-path:polygon(0 0,100% 0,100% 36%,82% 52%,100% 100%,0 100%,18% 52%,0 36%)}.istikan i{position:absolute;bottom:0;left:0;right:0;height:12px;border-radius:50%;background:linear-gradient(180deg,#fff,#d8cbb0);border:1.5px solid var(--brass-dark)}.tile{--u: 22px;display:inline-flex;flex:none;background:linear-gradient(145deg,#fffdf6,#efe3c8 70%,#dfd0ae);border-radius:calc(var(--u) * .17);box-shadow:0 calc(var(--u) * .07) 0 #b9a67f,0 calc(var(--u) * .14) calc(var(--u) * .2) #0006;border:1px solid #cbb98f}.tile.v{flex-direction:column;width:var(--u);height:calc(var(--u) * 2)}.tile.h{flex-direction:row;width:calc(var(--u) * 2);height:var(--u)}.half{flex:1;display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);padding:calc(var(--u) * .13);min-width:0;min-height:0}.half i{place-self:center;width:74%;height:74%;border-radius:50%}.half i.pip{background:radial-gradient(circle at 35% 30%,#4b3a2c,#17100b 70%)}.split{background:#9b8760;flex:none}.tile.v .split{height:1px;width:76%;margin:0 auto}.tile.h .split{width:1px;height:76%;margin:auto 0}.tile.back{background:linear-gradient(145deg,#7a4a2b,#4a2c18);border-color:#2a180d;box-shadow:0 1px 2px #00000080;position:relative}.tile.back:after{content:"";position:absolute;top:25%;right:25%;bottom:25%;left:25%;border-radius:2px;border:1px solid rgba(217,174,79,.55)}.tile.on-board{position:absolute;transition:left .25s,top .25s}.tile.fresh{animation:land .35s ease-out;box-shadow:0 0 0 2px var(--brass),0 0 16px #d9ae4fcc;z-index:2}@keyframes land{0%{transform:scale(1.5);opacity:.2}to{transform:scale(1);opacity:1}}.felt{position:relative;border-radius:26px;border:12px solid var(--wood-3);background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.07),transparent 60%),repeating-linear-gradient(45deg,rgba(0,0,0,.05) 0 2px,transparent 2px 6px),radial-gradient(120% 120% at 50% 40%,var(--felt-1),var(--felt-2));box-shadow:inset 0 0 0 2px var(--brass-dark),inset 0 0 40px #0000008c,var(--shadow);min-height:0}.board{position:absolute;top:62px;right:70px;bottom:12px;left:70px}.target{position:absolute;transform:translate(-50%,-50%);width:calc(var(--u) * 1.7);height:calc(var(--u) * 1.7);min-width:40px;min-height:40px;border-radius:50%;border:3px dashed var(--brass);background:#d9ae4f47;animation:pulse 1s ease-in-out infinite;z-index:3}@keyframes pulse{50%{background:#d9ae4f99;box-shadow:0 0 0 8px #d9ae4f2e}}.avatar{position:relative;flex:none;width:40px;height:40px;border-radius:50%;display:inline-grid;place-items:center;background:var(--wood-2);color:var(--cream);font-weight:800;font-size:1.1rem;border:3px solid var(--team, var(--brass))}.avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.avatar.empty{border-style:dashed;background:transparent;color:var(--muted)}.avatar.big{width:84px;height:84px;font-size:2rem}.avatar.tiny{width:26px;height:26px;font-size:.8rem;border-width:2px;margin-inline-end:6px;vertical-align:middle}.who .avatar{width:32px;height:32px;font-size:.95rem;border-width:2px}.avatar .off{position:absolute;bottom:-2px;inset-inline-end:-2px;width:12px;height:12px;border-radius:50%;background:#8a8a8a;border:2px solid var(--wood-1)}.player{position:absolute;display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;z-index:1}.player.top{top:8px;left:50%;transform:translate(-50%)}.player.left,.player.right{top:50%;transform:translateY(-50%);flex-direction:column;width:60px;text-align:center}.player.left{left:4px}.player.right{right:4px}.player-name{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px #000}.player.left .player-name,.player.right .player-name{max-width:60px}.player.turn .avatar{animation:turn 1.1s ease-in-out infinite}@keyframes turn{50%{box-shadow:0 0 0 5px #d9ae4fe6,0 0 22px var(--brass)}}.backs{display:flex;gap:2px;align-items:center}.player.left .backs,.player.right .backs{flex-direction:column}.backs-num{background:#0000008c;border-radius:999px;padding:0 7px;font-size:.75rem;margin:2px}.count{position:absolute;bottom:8px;inset-inline-start:10px;background:#00000080;border:1px solid var(--brass-dark);border-radius:12px;padding:2px 10px;text-align:center;line-height:1.2;z-index:2}.count small{display:block;font-size:.65rem;color:var(--muted)}.count b{font-size:1.2rem}.count.hit{background:var(--brass);color:var(--ink);border-color:#fff}.count.hit small{color:var(--ink)}.stock{position:absolute;left:6px;top:50%;transform:translateY(-50%);display:grid;justify-items:center;gap:4px;z-index:1;text-align:center;line-height:1.2}.stock small{font-size:.7rem;color:var(--muted);font-weight:700}.stock b{background:#0000008c;border-radius:999px;padding:0 8px;font-size:.85rem}.stock.empty b{font-size:.7rem;color:var(--muted)}.stock-tiles{display:grid;grid-template-columns:auto auto;gap:3px}.stock-tiles .tile{--u: 11px}@media(min-width:980px){.stock{left:14px}.stock-tiles{gap:4px}.stock-tiles .tile{--u: 17px}}.wins{font-style:normal;color:var(--brass);margin-inline-start:6px;letter-spacing:1px;font-size:.7rem}.card .wins{color:var(--tea-dark)}.btn.vs-bot{margin-top:10px}.flashes{position:absolute;top:38%;left:0;right:0;display:grid;justify-items:center;gap:6px;pointer-events:none;z-index:4}.flash{padding:6px 16px;border-radius:999px;font-weight:800;font-size:1.05rem;background:#000000c7;border:1.5px solid var(--brass);animation:rise 2.6s ease-out forwards}.flash.score{background:var(--brass);color:var(--ink)}@keyframes rise{0%{opacity:0;transform:translateY(14px) scale(.9)}12%{opacity:1;transform:none}80%{opacity:1}to{opacity:0;transform:translateY(-18px)}}.avatar .mic{position:absolute;top:-6px;inset-inline-start:-6px;width:20px;height:20px;border-radius:50%;background:#55504a;border:2px solid var(--wood-1);font-size:.62rem;font-style:normal;display:grid;place-items:center}.avatar .mic.live{background:var(--ok);box-shadow:0 0 0 2px #1f7a4d73}.tool.voice-on{background:var(--ok);border-color:#fff}.tool.voice-on.muted{background:var(--danger)}.bar .game-tools{flex:none}.lobby-grid{display:grid;gap:16px;grid-template-columns:1fr}@media(min-width:860px){.lobby-grid{grid-template-columns:1.1fr 1fr;align-items:start}}.small-felt{aspect-ratio:1 / 1.22;max-width:470px;margin:0 auto 16px;width:100%}.chair{position:absolute;z-index:1;display:grid;justify-items:center;gap:2px;width:128px;text-align:center;font-size:.85rem}.chair .avatar{width:52px;height:52px;font-size:1.4rem}.chair-name{font-weight:800;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chair-team{color:var(--team);font-size:.75rem;font-weight:700}.chair .link{font-size:.8rem;padding:0}.chair.pos-0{bottom:6px;left:50%;transform:translate(-50%)}.chair.pos-2{top:6px;left:50%;transform:translate(-50%)}.chair.pos-1{right:0;top:50%;transform:translateY(-50%)}.chair.pos-3{left:0;top:50%;transform:translateY(-50%)}.felt-mid{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:110px;height:70px;pointer-events:none;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:.85rem}.big-num{font-size:2rem;font-weight:800;color:var(--cream);line-height:1}.team-pick{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:470px;margin:0 auto 8px}.team-card{background:#00000052;border:2px solid var(--team);border-radius:var(--radius);padding:10px 12px;display:grid;gap:4px;justify-items:start}.team-card.mine{background:#ffffff14;box-shadow:0 0 0 3px #ffffff1f}.team-head{display:flex;justify-content:space-between;align-items:baseline;width:100%;gap:8px}.team-head b{color:var(--team);font-size:1.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-count{font-weight:800;font-size:1.2rem}.team-card small{color:var(--muted);min-height:1.5em}.lobby-note{text-align:center;color:var(--muted);font-size:.85rem;margin:0 0 10px}.share h3{margin-bottom:8px}.code-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.code{font-size:1.9rem;font-weight:800;letter-spacing:.2em;color:var(--tea-dark)}.share-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}.share-btn{color:#fff;border:0;min-height:46px;padding:8px 10px}.share-btn.wa{background:#128c4b}.share-btn.fb{background:#1463d8}.share-btn.tg{background:#1b8fd0}.share-btn.more{background:var(--wood-2)}.game{height:100vh;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);gap:8px;padding:8px;overflow:hidden}.game-bar{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:10px}.game-title{line-height:1.2}.game-title b{font-family:Aref Ruqaa,serif;font-size:1.25rem;color:var(--brass);display:block}.game-title small{color:var(--muted);font-size:.75rem;white-space:nowrap}.game-tools{display:flex;gap:6px}.tool{position:relative;width:44px;height:44px;border-radius:50%;border:1px solid var(--brass-dark);background:#0000004d;font-size:1.1rem}.badge{position:absolute;top:-4px;inset-inline-end:-4px;min-width:20px;height:20px;border-radius:10px;background:var(--tea);color:#fff;font-size:.72rem;font-style:normal;font-weight:800;display:grid;place-items:center;padding:0 5px}.scores{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px;min-width:0}.score{display:grid;grid-template-columns:1fr auto;align-items:baseline;column-gap:8px;background:#00000052;border-radius:10px;padding:3px 10px 5px;border-inline-start:4px solid var(--team);min-width:0}.score-name{font-size:.8rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-num{font-size:1.25rem;font-weight:800;line-height:1.1}.score-bar{grid-column:1 / 3;height:4px;background:#ffffff24;border-radius:2px;overflow:hidden}.score-bar i{display:block;height:100%;background:var(--team);transition:width .4s}.card .score{background:#2a1a1014}.card .score-bar{background:#2a1a1024}.scores.solo .score-name{font-size:.7rem}.hand-area{container-type:inline-size;background:linear-gradient(180deg,#00000040,#00000073);border-radius:16px;padding:6px 8px calc(8px + env(safe-area-inset-bottom));border:1px solid rgba(217,174,79,.25)}.hand-area.my-turn{border-color:var(--brass);box-shadow:0 0 0 2px #d9ae4f40}.turn-line{text-align:center;font-weight:800;font-size:.95rem;margin-bottom:4px;color:var(--muted)}.my-turn .turn-line{color:var(--brass)}.hand{display:flex;justify-content:center;align-items:flex-end;gap:6px;padding-top:14px;min-height:60px}.hand-tile{background:none;border:0;padding:0;border-radius:8px;transition:opacity .15s}.hand-tile .tile{transition:transform .12s}.hand-tile .tile{--u: clamp(24px, calc((100cqw - 56px) / 7), 46px)}.hand-tile.can .tile{transform:translateY(-6px);box-shadow:0 0 0 2px var(--brass),0 6px 14px #00000080}.hand-tile.can:hover .tile{transform:translateY(-11px)}.hand-tile.picked .tile{transform:translateY(-16px);box-shadow:0 0 0 3px #fff,0 0 18px var(--brass)}.hand-tile.dim{opacity:.45}.chat{position:fixed;inset-inline:0;bottom:0;height:min(62dvh,460px);background:var(--wood-1);border-top:2px solid var(--brass-dark);border-radius:18px 18px 0 0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;transform:translateY(105%);transition:transform .22s;z-index:20;box-shadow:0 -10px 30px #00000080}.chat.open{transform:none}.chat-head{display:flex;justify-content:space-between;align-items:center;padding:8px 14px 0}.chat-head h3{margin:0;color:var(--brass)}.chat .close{font-size:1.2rem;text-decoration:none;min-width:40px;min-height:40px}.chat-list{overflow-y:auto;padding:8px 14px}.msg{margin:0 0 6px;overflow-wrap:anywhere;line-height:1.45}.quick{display:flex;gap:6px;overflow-x:auto;padding:4px 12px;scrollbar-width:none}.quick button{flex:none;border:1px solid var(--brass-dark);background:#00000040;border-radius:999px;padding:4px 12px;font-size:.85rem;min-height:34px}.chat-form{display:flex;gap:8px;padding:8px 12px calc(10px + env(safe-area-inset-bottom))}.chat-form input{flex:1;min-width:0;padding:10px 12px;border-radius:999px;border:1px solid var(--brass-dark);background:#0000004d}@media(min-width:980px){.game{grid-template-columns:minmax(0,1fr) 320px;padding:12px;gap:12px}.game-bar,.game .felt,.hand-area{grid-column:1}.chat{position:static;grid-column:2;grid-row:1 / 4;height:auto;transform:none;border:1px solid var(--brass-dark);border-radius:16px;box-shadow:none}.chat .close,.chat-toggle{display:none}.board{top:70px;right:96px;bottom:16px;left:96px}.player.left,.player.right{width:84px}.player.left{left:8px}.player.right{right:8px}.player-name{font-size:.9rem}.player.left .player-name,.player.right .player-name{max-width:84px}.avatar{width:48px;height:48px}}@media(max-width:560px){.game-bar{grid-template-columns:auto 1fr auto;grid-template-areas:"back title tools" "scores scores scores";row-gap:6px}.game-bar .back{grid-area:back}.game-title{grid-area:title}.game-tools{grid-area:tools}.game-bar .scores{grid-area:scores}.felt{border-width:8px;border-radius:20px}.board{top:58px;right:58px;bottom:8px;left:58px}.player.left,.player.right{width:52px;font-size:.72rem}.player.left .player-name,.player.right .player-name{max-width:52px}.player .avatar{width:34px;height:34px;font-size:.95rem}.logo-text{font-size:2.1rem}.chair{width:104px}}@media(max-height:480px)and (orientation:landscape){.game{gap:4px;padding:4px}.game-bar{grid-template-columns:auto auto 1fr auto;grid-template-areas:none}.game-bar>*{grid-area:auto!important}.turn-line{display:none}.hand{padding-top:8px;min-height:0}.hand-tile .tile{--u: clamp(20px, 11vh, 34px)}.board{top:8px;right:70px;bottom:8px;left:70px}.player.top{top:2px}.player.top .backs .tile{display:none}}.felt.duel .board{right:12px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0603b8;display:grid;place-items:center;padding:14px;z-index:40;overflow-y:auto;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.summary{width:min(520px,100%);margin:0;max-height:94dvh;overflow-y:auto;text-align:center;animation:pop .25s ease-out}@keyframes pop{0%{transform:scale(.92);opacity:0}}.summary.final h2{font-size:1.9rem;color:var(--tea-dark)}.lead{font-weight:700}.summary .row{justify-content:center}.left-tiles{display:grid;gap:6px;margin:12px 0;text-align:start}.left-row{display:grid;grid-template-columns:84px minmax(0,1fr) 34px;align-items:center;gap:8px;padding:4px 8px;border-radius:10px;background:#2a1a100f;border-inline-start:4px solid var(--team)}.left-name{font-weight:800;font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.left-hand{display:flex;flex-wrap:wrap;gap:4px;min-height:28px;align-items:center}.left-hand em{color:var(--ok);font-weight:800;font-style:normal}.left-pips{font-weight:800;text-align:center}.summary .scores{margin:12px 0 16px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:#111;border:1.5px solid var(--brass);padding:10px 18px;border-radius:999px;font-weight:700;z-index:60;max-width:92vw;text-align:center}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin-bottom:16px}.stat{background:#0000004d;border:1px solid var(--brass-dark);border-radius:var(--radius);padding:10px;text-align:center}.stat b{display:block;font-size:1.7rem;line-height:1.2;color:var(--brass)}.stat span{color:var(--muted);font-size:.85rem}.stat.live{border-color:var(--team-a)}.stat.live b{color:var(--team-a)}.matches{list-style:none;padding:0;margin:0;display:grid;gap:12px}.match{margin:0;border-inline-start:6px solid #8d7a5c}.match.won{border-inline-start-color:var(--ok)}.match-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.match-sides{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.side{background:#2a1a100f;border-radius:10px;padding:6px 10px;border-top:3px solid var(--team);display:grid}.side-score{font-size:1.5rem;font-weight:800;line-height:1.1}.side.top .side-score{color:var(--ok)}.side-name{font-weight:800}.side small{color:var(--ink-soft)}.avatar-edit{display:flex;gap:16px;align-items:center}.table-wrap{overflow-x:auto}.grid{width:100%;border-collapse:collapse;font-size:.9rem;min-width:560px}.grid th,.grid td{padding:7px 8px;text-align:start;border-bottom:1px solid #dccba4;white-space:nowrap}.grid th{color:var(--ink-soft);font-size:.8rem}.grid tr.banned td{opacity:.55}.grid .actions{display:flex;gap:10px}.barcell{position:relative;display:inline-block;min-width:90px;padding-inline-start:4px}.barcell i{position:absolute;inset-block:2px;inset-inline-start:0;background:#c2511f40;border-radius:3px;z-index:0}.search{margin-bottom:10px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
