.pool-page{--uno-bg:#091611;--uno-surface:#11251e;--uno-surface-2:#183129;--uno-ink:#f7f0df;--uno-muted:#a9bbb4;--uno-border:#315346;--line:var(--uno-border);--muted:var(--uno-muted);--yellow:var(--game-accent);--game-accent:#e2bd61;--game-accent-ink:#18120a;--game-secondary:#31966f;min-height:100dvh;color:var(--uno-ink);background-color:var(--uno-bg);background-image:radial-gradient(circle at 72% -15%,rgba(38,112,82,.28),transparent 38%),var(--game-texture)}
.pool-page [hidden]{display:none!important}.pool-shell{width:min(1180px,calc(100% - 40px));min-height:100dvh;margin:auto;padding:16px 0 40px}
.pool-page .game-header{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:64px;border-bottom:1px solid var(--uno-border)}.pool-page .game-back{color:var(--uno-muted);text-decoration:none}.pool-page .game-back:hover{color:var(--uno-ink)}
.pool-page .game-brand{position:absolute;left:50%;top:50%;display:flex;align-items:baseline;gap:9px;color:var(--uno-ink);text-decoration:none;translate:-50% -50%}.pool-page .game-brand strong{font:italic 1.65rem/1 var(--font-display);letter-spacing:-.06em}.pool-page .game-brand small{color:var(--uno-muted);font-size:.7rem}
.pool-page .game-lobby{padding:48px 0 0}.pool-page .game-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.62fr);align-items:center;gap:48px;padding-bottom:40px;border-bottom:1px solid var(--uno-border)}.pool-page .game-hero__copy{max-width:650px}.pool-page .game-hero .eyebrow,.pool-page .section-kicker{color:var(--game-accent)}.pool-page .game-hero h1{margin:0;font:italic clamp(3rem,6vw,5.5rem)/.9 var(--font-display);letter-spacing:-.06em;text-transform:uppercase}.pool-page .game-hero h1+p{max-width:590px;margin:20px 0 0;color:var(--uno-muted);font-size:1.05rem;line-height:1.55}.pool-page .game-facts span:before{background:var(--game-accent)}
.pool-page .lobby-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(460px,1.28fr);gap:54px;padding-top:40px}.pool-page .lobby-entry{padding-right:54px;border-right:1px solid var(--uno-border)}.pool-page .lobby-entry h2,.pool-page .rooms-section h2{font-family:var(--font-display);font-weight:400}
.pool-page .primary,.pool-page .secondary{min-height:48px;border-radius:var(--radius-sm);font-weight:800}.pool-page .primary{border:1px solid var(--game-accent);background:var(--game-accent);color:var(--game-accent-ink)}.pool-page .secondary{border:1px solid #64776f;background:transparent;color:var(--uno-ink)}.pool-page .primary:hover{filter:brightness(1.08)}.pool-page .secondary:hover{border-color:var(--game-accent);color:var(--game-accent)}.pool-page .room-list,.pool-page .room-row{border-color:var(--uno-border)}.pool-page .room-row>button,.pool-page .empty button{border-color:var(--game-accent);color:var(--game-accent)}.pool-page .room-row>button:hover,.pool-page .empty button:hover{background:var(--game-accent);color:var(--game-accent-ink)}
.pool-page dialog{max-height:calc(100dvh - 20px);overflow-y:auto;border-color:var(--uno-border);border-radius:var(--radius-lg);background:var(--uno-surface);color:var(--uno-ink)}.pool-page dialog::backdrop{background:rgba(4,12,9,.82);backdrop-filter:blur(5px)}.pool-page dialog form{padding:28px}.pool-page dialog .primary{width:100%}.pool-page input,.pool-page select{border-color:var(--uno-border);background:#0c1914;color:var(--uno-ink)}
.pool-hero{position:relative;justify-self:end;width:min(380px,100%);height:220px;padding:18px;border:1px solid #b27a49;border-radius:21px;background:linear-gradient(135deg,#a36a3a 0%,#63391f 35%,#9a6034 67%,#4a2919 100%);box-shadow:inset 0 0 0 7px #422417,inset 0 0 0 9px rgba(255,215,145,.12),9px 13px 0 #301b12,0 27px 48px rgba(0,0,0,.44);transform:rotate(-2deg);transform-style:preserve-3d;animation:pool-hero-enter .65s var(--ease-spring) both}
.pool-hero__felt{position:relative;display:block;width:100%;height:100%;overflow:visible;border:9px solid #0b4c37;border-radius:9px;background:radial-gradient(circle at 48% 38%,#288e67 0%,#197553 64%,#105c41 100%);box-shadow:inset 0 0 0 2px rgba(255,255,255,.08),inset 0 0 28px rgba(0,0,0,.3)}
.pool-hero__felt:after{content:"";position:absolute;inset:0;opacity:.16;background:repeating-linear-gradient(105deg,transparent 0 3px,rgba(255,255,255,.1) 4px,transparent 5px);pointer-events:none}
.pool-hero__pocket{position:absolute;z-index:4;box-sizing:border-box;width:25px;height:25px;border:3px solid #17241f;border-radius:50%;background:radial-gradient(circle at 42% 38%,#101714 0 26%,#020403 70%);box-shadow:0 2px 5px rgba(0,0,0,.6)}.pool-hero__pocket--tl{left:-12px;top:-12px}.pool-hero__pocket--tm{left:50%;top:-13px;translate:-50% 0}.pool-hero__pocket--tr{right:-12px;top:-12px}.pool-hero__pocket--bl{left:-12px;bottom:-12px}.pool-hero__pocket--bm{left:50%;bottom:-13px;translate:-50% 0}.pool-hero__pocket--br{right:-12px;bottom:-12px}
.pool-hero__ball{position:absolute;z-index:3;display:grid;width:25px;height:25px;place-items:center;border:1px solid rgba(30,30,24,.5);border-radius:50%;box-shadow:inset -4px -5px 6px rgba(0,0,0,.28),inset 4px 4px 5px rgba(255,255,255,.35),2px 5px 7px rgba(0,0,0,.38);font:800 8px/1 Arial,sans-serif}.pool-hero__ball:after{content:"";position:absolute;left:5px;top:4px;width:6px;height:4px;border-radius:50%;background:rgba(255,255,255,.62);filter:blur(.4px)}.pool-hero__ball--cue{left:24%;top:60%;background:linear-gradient(145deg,#fff,#d8d7ca);animation:pool-cue-roll 4.8s ease-in-out 1s infinite}.pool-hero__ball--eight{left:57%;top:45%;color:#111;background:radial-gradient(circle,#f4f0df 0 27%,#111 29%);animation:pool-eight-roll 4.8s ease-in-out 1s infinite}.pool-hero__ball--one{right:21%;top:25%;color:#2a2108;background:radial-gradient(circle,#f7f1dc 0 27%,#ddb62f 29%);animation:pool-one-breathe 3.4s ease-in-out infinite}
.pool-hero__aim{position:absolute;z-index:2;left:30%;top:62%;width:34%;height:1px;border-top:1px dashed rgba(241,246,229,.52);transform:rotate(-16deg);transform-origin:left;animation:pool-aim-pulse 4.8s ease-in-out 1s infinite}
.pool-hero__cue{position:absolute;z-index:5;left:-23px;top:142px;width:255px;height:7px;border:1px solid #5b351e;border-radius:99px;background:linear-gradient(180deg,#f1d29b,#bd8249 55%,#76502e);box-shadow:0 4px 7px rgba(0,0,0,.32);transform:rotate(-15deg);transform-origin:8% 50%;animation:pool-cue-strike 4.8s ease-in-out 1s infinite}.pool-hero__cue:after{content:"";position:absolute;right:-5px;top:1px;width:8px;height:3px;border-radius:0 4px 4px 0;background:#e8eee5}
@keyframes pool-hero-enter{from{opacity:0;transform:translateX(42px) rotate(4deg) scale(.92)}to{opacity:1;transform:rotate(-2deg)}}
@keyframes pool-cue-strike{0%,20%,100%{translate:-8px 3px}34%{translate:-25px 8px}40%,48%{translate:5px -1px}62%,90%{translate:-8px 3px}}
@keyframes pool-cue-roll{0%,37%,100%{transform:translate(0,0) rotate(0)}52%,88%{transform:translate(83px,-28px) rotate(270deg)}}
@keyframes pool-eight-roll{0%,50%,100%{transform:translate(0,0) rotate(0)}66%,88%{transform:translate(50px,-23px) rotate(190deg)}}
@keyframes pool-one-breathe{50%{transform:translateY(-2px) rotate(12deg)}}
@keyframes pool-aim-pulse{0%,25%,100%{opacity:.2}30%,38%{opacity:.85}48%,90%{opacity:0}}
.pool-game{display:grid;gap:16px;padding:18px;border:1px solid var(--uno-border);border-radius:18px;background:var(--uno-surface)}.pool-game__header,.pool-game__header>div,.pool-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}.pool-game__header>div:first-child{display:grid}.pool-game__header button{min-height:38px;padding:0 12px;border:1px solid #536b64;border-radius:8px;background:transparent;color:var(--uno-ink)}.pool-game button{min-height:44px}.pool-players{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pool-players article{display:grid;padding:12px;border:1px solid var(--uno-border);border-radius:10px;background:#0b1914}.pool-players article.is-turn{border-color:var(--game-accent);box-shadow:0 0 0 2px rgba(226,189,97,.2)}.pool-players small{color:var(--uno-muted)}.pool-table-wrap{position:relative;overflow:hidden;border-radius:18px}.pool-table-wrap canvas{display:block;width:100%;height:auto;aspect-ratio:1000/520;cursor:crosshair;touch-action:none}.pool-table-wrap canvas.is-aim-locked{cursor:default;box-shadow:inset 0 0 0 3px rgba(226,189,97,.5)}.pool-controls{justify-content:center;flex-wrap:wrap}.pool-controls label{font-weight:700}.pool-controls input{width:min(280px,50vw)}.pool-rules{padding:14px;border:1px solid var(--uno-border);border-radius:12px}.pool-result{position:absolute;inset:20px;display:grid;place-items:center;background:rgba(8,20,14,.86)}
.pool-hub-art{position:relative;width:230px;height:145px;rotate:-5deg}.pool-hub-felt{position:absolute;inset:10px;border:12px solid #5b3922;border-radius:12px;background:#176846}.pool-hub-ball{position:absolute;width:20px;height:20px;border-radius:50%}.pool-hub-ball--cue{left:35px;top:70px;background:#fff}.pool-hub-ball--eight{left:140px;top:55px;background:#111}.pool-hub-ball--one{left:165px;top:80px;background:#d9b52c}.pool-hub-cue{position:absolute;left:-10px;top:80px;width:210px;height:5px;background:#d7b47d;rotate:-14deg}
@media(max-width:760px){.pool-shell{width:min(calc(100% - 24px),620px);padding:8px 0 32px}.pool-page .game-header{min-height:58px}.pool-page .game-brand small{display:none}.pool-page .game-lobby{padding-top:32px}.pool-page .game-hero{grid-template-columns:1fr;gap:28px;padding-bottom:30px}.pool-page .game-hero h1{font-size:clamp(2.7rem,13vw,4.2rem)}.pool-hero{justify-self:center;width:min(320px,calc(100% - 8px));height:180px}.pool-page .lobby-layout{grid-template-columns:1fr;gap:34px;padding-top:30px}.pool-page .lobby-entry{padding:0 0 34px;border-right:0;border-bottom:1px solid var(--uno-border)}.pool-page .rooms-tools{flex-basis:100%;justify-content:stretch}.pool-page .room-search{flex:1}.pool-game{padding:10px}.pool-game__header{align-items:flex-start;flex-direction:column}.pool-players{grid-template-columns:1fr}.pool-controls input{width:100%}}
@media(max-width:390px){.pool-shell{width:calc(100% - 16px)}.pool-hero{height:160px;border-width:14px}.pool-page .game-brand strong{font-size:1.25rem}}@media(prefers-reduced-motion:reduce){.pool-page *,.pool-page :before,.pool-page :after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Mesa de jogo no mesmo padrão estrutural de Damas e Dominó. */
.pool-page.is-in-room .game-header{border-bottom-color:transparent}
.pool-header-controls{position:relative;z-index:2;margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:8px}.pool-header-controls .live-audience{display:flex;align-items:center;justify-content:center;gap:6px;min-width:54px;height:36px;padding:0 11px;border:1px solid var(--uno-border);border-radius:99px;background:var(--uno-surface);color:var(--uno-muted);font-size:.75rem;font-weight:800;box-shadow:0 5px 14px rgba(0,0,0,.16)}.pool-header-controls .live-audience svg{display:block;width:16px;height:16px;fill:var(--game-accent)}.pool-header-controls .live-audience b{font-variant-numeric:tabular-nums}.pool-header-controls .live-audience.has-viewers{border-color:#3d9c72;background:#163d2e;color:#effff7;box-shadow:0 0 16px rgba(61,156,114,.2)}.pool-header-controls .header-leave{width:auto;min-height:36px;height:36px;padding:0 13px;border-radius:18px}.pool-header-controls .sound-toggle{position:static;display:grid;width:40px;height:40px;min-height:40px;padding:0;place-items:center;border:1px solid var(--uno-border);border-radius:50%;background:var(--uno-surface);color:var(--uno-ink);opacity:1;box-shadow:none}.pool-header-controls .sound-toggle[aria-pressed=true]{border-color:var(--game-accent);box-shadow:0 0 15px color-mix(in srgb,var(--game-accent) 16%,transparent)}.pool-header-controls .sound-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pool-page.is-in-room .pool-shell{width:min(1380px,calc(100% - 40px))}
.pool-page.is-in-room .pool-game{grid-template-columns:minmax(0,1fr) 280px;grid-template-rows:auto auto auto 1fr;gap:16px;padding:18px;border-color:#35564a;border-radius:18px;background:#12261f;box-shadow:0 24px 70px rgba(0,0,0,.22)}
.pool-page.is-in-room .pool-game__header{grid-column:1/-1;padding:2px 0 14px;border-bottom:1px solid color-mix(in srgb,var(--uno-border) 74%,transparent)}
.pool-page.is-in-room .pool-game__header>div:first-child{gap:4px}.pool-page.is-in-room .pool-game__header strong{font:1.12rem/1.1 var(--font-display)}.pool-page.is-in-room .pool-game__header span{color:var(--uno-muted);font-size:.76rem}.pool-page.is-in-room .pool-game__header>div:last-child{justify-content:flex-end}.pool-page.is-in-room #liveAudience{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border:1px solid var(--uno-border);border-radius:99px;background:#0d1d18}.pool-page.is-in-room #copyInvite{border-color:color-mix(in srgb,var(--game-accent) 45%,transparent);background:color-mix(in srgb,var(--game-accent) 8%,transparent);color:var(--game-accent);font-weight:800}.pool-page.is-in-room #leaveRoom{border-color:#684b47;color:#efb4ad}
.pool-page.is-in-room #turnTimer{flex:0 0 auto;min-width:48px;padding:8px 9px;border-radius:8px;background:var(--game-accent);color:var(--game-accent-ink);font:900 .84rem/1 var(--font-body);text-align:center;font-variant-numeric:tabular-nums}.pool-page.is-in-room #turnTimer.is-low{background:#dc6255;color:#fff;animation:pool-timer-pulse .8s ease-in-out infinite}@keyframes pool-timer-pulse{50%{transform:scale(1.07)}}
.pool-page.is-in-room .pool-players{grid-column:1/-1}.pool-page.is-in-room .pool-players article{position:relative;grid-template-columns:44px minmax(0,1fr);align-items:center;min-height:64px;padding:9px 12px;background:#0d1d18}.pool-page.is-in-room .pool-players article:before{content:"8";display:grid;width:38px;height:38px;place-items:center;border:3px solid #e9e4d8;border-radius:50%;background:#111;color:#fff;font:800 .78rem/1 var(--font-body);box-shadow:0 4px 10px rgba(0,0,0,.3)}.pool-page.is-in-room .pool-players article.is-turn:before{background:var(--game-accent);color:var(--game-accent-ink)}.pool-page.is-in-room .pool-players strong,.pool-page.is-in-room .pool-players small{grid-column:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pool-page.is-in-room .pool-players strong{align-self:end}.pool-page.is-in-room .pool-players small{align-self:start}
.pool-page.is-in-room .pool-table-wrap{grid-column:1;grid-row:3/5;align-self:start;padding:12px;border:1px solid #45675b;border-radius:16px;background:#0a1713;box-shadow:inset 0 0 35px rgba(0,0,0,.34)}.pool-page.is-in-room .pool-table-wrap canvas{border-radius:11px;box-shadow:0 14px 28px rgba(0,0,0,.28)}
.pool-page.is-in-room .pool-controls{grid-column:2;grid-row:3;display:grid;align-content:start;justify-content:stretch;gap:11px;padding:16px;border:1px solid var(--uno-border);border-radius:13px;background:#0d1d18}.pool-page.is-in-room .pool-controls label{display:flex;justify-content:space-between;color:var(--uno-muted);font-size:.78rem}.pool-page.is-in-room .pool-controls output{color:var(--game-accent);font-weight:900}.pool-page.is-in-room .pool-controls input{width:100%;margin:5px 0 8px;accent-color:var(--game-accent)}.pool-page.is-in-room .pool-controls button{width:100%}
.pool-page.is-in-room .pool-rules{grid-column:2;grid-row:4;align-self:stretch;background:#0d1d18}.pool-page.is-in-room .pool-rules h2{margin:0 0 10px;font:1rem/1.2 var(--font-display)}.pool-page.is-in-room .pool-rules p{margin:0;color:var(--uno-muted);font-size:.78rem;line-height:1.55}
@media(max-width:900px){.pool-page.is-in-room .pool-shell{width:min(calc(100% - 24px),760px)}.pool-page.is-in-room .pool-game{grid-template-columns:1fr;grid-template-rows:auto}.pool-page.is-in-room .pool-game__header,.pool-page.is-in-room .pool-players,.pool-page.is-in-room .pool-table-wrap,.pool-page.is-in-room .pool-controls,.pool-page.is-in-room .pool-rules{grid-column:1;grid-row:auto}.pool-page.is-in-room .pool-controls{grid-template-columns:minmax(0,1fr) auto auto}.pool-page.is-in-room .pool-controls label{grid-column:1/-1}.pool-page.is-in-room .pool-controls input{grid-column:1/-1}.pool-page.is-in-room .pool-controls button{width:auto}.pool-page.is-in-room .pool-rules{min-height:0}}
@media(max-width:600px){.pool-page.is-in-room .pool-shell{width:calc(100% - 12px)}.pool-page.is-in-room .pool-game{gap:10px;padding:9px;border-radius:13px}.pool-page.is-in-room .pool-game__header{align-items:stretch}.pool-page.is-in-room .pool-game__header>div:last-child{display:grid;grid-template-columns:1fr 1fr}.pool-page.is-in-room #liveAudience{grid-column:1/-1;justify-content:center}.pool-page.is-in-room .pool-players{grid-template-columns:1fr 1fr;gap:6px}.pool-page.is-in-room .pool-players article{grid-template-columns:34px minmax(0,1fr);min-height:54px;padding:7px}.pool-page.is-in-room .pool-players article:before{width:30px;height:30px;border-width:2px}.pool-page.is-in-room .pool-table-wrap{padding:5px;border-radius:10px}.pool-page.is-in-room .pool-controls{grid-template-columns:1fr 1fr;padding:12px}.pool-page.is-in-room .pool-controls label,.pool-page.is-in-room .pool-controls input{grid-column:1/-1}.pool-page.is-in-room .pool-controls button{width:100%}}
@media(max-width:600px){.pool-header-controls{gap:6px}.pool-header-controls .live-audience{min-width:48px;height:32px;padding-inline:9px}.pool-header-controls .header-leave{width:36px;height:36px;padding:0;font-size:0}.pool-header-controls .header-leave:before{content:"↩";font-size:1.05rem}.pool-header-controls .sound-toggle{width:36px;height:36px;min-height:36px}}

/* A criação de mesa usa o mesmo diálogo compartilhado do Dominó/UNO. */
.pool-page{--game-yellow:var(--game-accent);--uno-accent:var(--game-accent);--focus-ring:var(--game-accent)}
.pool-page dialog{border-color:var(--uno-border);border-radius:var(--radius-lg);background:var(--uno-surface);color:var(--uno-ink)}
.pool-page dialog::backdrop{background:rgba(7,15,12,.8)}
.pool-page dialog form{padding:28px}
.pool-page dialog h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.03em}
.pool-page dialog input,.pool-page dialog select{border-radius:var(--radius-sm)}
.pool-page dialog .primary{width:100%}
.pool-page .pool-difficulty-field>small{display:block;margin-top:7px;color:var(--uno-muted);font-size:.72rem;line-height:1.4}
@media(max-width:760px){.pool-page .sheet-dialog form{padding:28px 20px calc(24px + env(safe-area-inset-bottom))}}

/* Resultado final sobre a mesa. */
.pool-result{z-index:8;inset:12px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:radial-gradient(circle at 50% 38%,rgba(44,99,77,.92),rgba(5,17,12,.97));text-align:center;backdrop-filter:blur(7px)}.pool-result>div{display:grid;justify-items:center;gap:10px;padding:24px}.pool-result small{color:var(--game-accent);font-size:.65rem;font-weight:900;letter-spacing:.18em}.pool-result strong{color:#fff7e4;font:clamp(2rem,5vw,3.8rem)/.95 var(--font-display);letter-spacing:-.05em}.pool-result span{max-width:430px;color:#c9d8d1;font-size:.9rem;line-height:1.5}.pool-result em{margin-top:7px;color:#b8c8c1;font-size:.78rem;font-style:normal}.pool-result button{min-height:44px;margin-top:8px;padding:0 18px;border:1px solid var(--game-accent);border-radius:9px;background:var(--game-accent);color:var(--game-accent-ink);font-weight:900}.pool-result.is-loser{background:radial-gradient(circle at 50% 38%,rgba(95,53,45,.92),rgba(17,10,8,.97))}.pool-result.is-loser small{color:#efaa91}
.pool-page.is-in-room .pool-header-controls .live-audience[hidden]{display:flex!important}

/* Jogadores e chat no padrão das demais mesas do GameHub. */
.pool-page.is-in-room .pool-players article{grid-template-columns:42px minmax(0,1fr)}.pool-page.is-in-room .pool-players article:before{display:none}.pool-player-avatar{grid-column:1;grid-row:1/3}.pool-player-avatar.game-avatar-stack{width:42px;height:42px;flex-basis:42px}.pool-player-avatar .game-player-avatar{width:36px;height:36px;border:2px solid #617a70;border-radius:50%;object-fit:cover}.pool-page.is-in-room .pool-players article:has(.game-avatar-frame){grid-template-columns:56px minmax(0,1fr);min-height:62px}.pool-page.is-in-room .pool-players article:has(.game-avatar-frame) .pool-player-avatar{justify-self:center}.pool-players article.is-turn .pool-player-avatar>img:first-child{border-color:var(--game-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--game-accent) 22%,transparent)}.pool-players article.is-premium{border-color:color-mix(in srgb,var(--player-color,var(--game-accent)) 55%,var(--uno-border));background:radial-gradient(circle at 8% 15%,color-mix(in srgb,var(--player-color,var(--game-accent)) 16%,transparent),#0d1d18 54%)}
.pool-chat{grid-column:1;grid-row:5;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.pool-chat[hidden]{display:none!important}.pool-chat input{width:100%;min-width:0;height:42px;padding:0 12px;border:1px solid var(--uno-border);border-radius:9px;background:#0d1915;color:var(--uno-ink);font-size:.82rem}.pool-chat input:focus{border-color:var(--game-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--game-accent) 14%,transparent)}.pool-chat button{min-height:42px;padding:0 17px;border:1px solid var(--game-accent);border-radius:9px;background:var(--game-accent);color:var(--game-accent-ink);font-size:.78rem;font-weight:800}.pool-chat-bubbles{position:absolute;z-index:6;inset:0;overflow:hidden;pointer-events:none}.pool-chat-bubble{position:absolute;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;max-width:min(310px,72%);padding:9px 12px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(8,22,17,.94);box-shadow:0 9px 25px rgba(0,0,0,.34);opacity:0;transform:translateY(8px) scale(.96);transition:opacity .18s,transform .2s;pointer-events:auto;cursor:pointer;backdrop-filter:blur(8px)}.pool-chat-bubble.is-visible{opacity:1;transform:none}.pool-chat-bubble.is-mine{left:18px;bottom:18px}.pool-chat-bubble.is-opponent{right:18px;top:18px}.pool-chat-bubble>img{width:34px;height:34px;border:2px solid var(--game-accent);border-radius:50%;object-fit:cover}.pool-chat-bubble>span{display:grid;min-width:0}.pool-chat-bubble strong{overflow:hidden;color:#fff4d4;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.pool-chat-bubble small{overflow-wrap:anywhere;color:#e2e9e5;font-size:.76rem;line-height:1.35}
@media(max-width:900px){.pool-page.is-in-room .pool-chat{grid-column:1;grid-row:auto}}@media(max-width:600px){.pool-page.is-in-room .pool-players article:not(:has(.game-avatar-frame)){grid-template-columns:36px minmax(0,1fr)}.pool-player-avatar.game-avatar-stack:not(:has(.game-avatar-frame)){width:36px;height:36px;flex-basis:36px}.pool-player-avatar:not(:has(.game-avatar-frame)) .game-player-avatar{width:32px;height:32px}.pool-chat{gap:6px}.pool-chat button{padding-inline:13px}.pool-chat-bubble{max-width:82%}}
