.pool-controls{position:fixed;z-index:18;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;gap:8px;max-width:calc(100vw - 180px);flex-wrap:wrap;justify-content:center}
.pool-controls[hidden],.pool-call-editor[hidden],.pool-call-overlay[hidden],.pool-call-marker[hidden],.pool-call-pick[hidden]{display:none}
.pool-controls button,.pool-call-editor button{cursor:pointer;min-height:40px;border:1px solid #f3c78170;border-radius:10px;background:#162b2bee;color:#f8e6bc;font-family:inherit;font-size:12px;font-weight:600;line-height:1.3;padding:8px 12px}
.pool-controls button{box-shadow:0 3px 14px #0004}
.pool-controls .pool-call-toggle{display:flex;align-items:center;gap:14px;padding:6px 7px 6px 14px;min-height:44px;touch-action:manipulation}
.pool-call-target{min-width:0;text-align:left}
.pool-call-edit{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 13px;border:1px solid #f9d485;border-radius:7px;background:#f3c781;color:#152821;box-shadow:inset 0 1px 0 #fff6,0 2px 5px #0003;font-weight:700;white-space:nowrap}
.pool-call-toggle:hover .pool-call-edit{background:#ffda93}
.pool-call-toggle:focus-visible{outline:2px solid #ffda93;outline-offset:3px}
.pool-call-toggle:active .pool-call-edit{transform:translateY(1px);box-shadow:inset 0 1px 3px #0003}
.pool-nine-target{align-self:center;padding:6px 9px;border-radius:8px;background:#102525cc;color:#f8e6bc;font-size:12px;line-height:1.4;pointer-events:none}
.pool-controls button[aria-pressed=true]{background:#f3c781;color:#152821;border-color:#f3c781}
.pool-controls button:disabled,.pool-call-editor button:disabled{opacity:.5;cursor:default}
.pool-call-overlay{position:fixed;inset:0;z-index:6;pointer-events:none}
.pool-call-marker{position:absolute;width:11px;height:8px;clip-path:polygon(0 0,100% 50%,0 100%);background:#f9d485;filter:drop-shadow(0 1px 1px #000c);pointer-events:none}
.pool-call-pick{position:absolute;transform:translate(-50%,-50%);border:0;border-radius:50%;padding:0;background:transparent;pointer-events:auto;touch-action:manipulation;cursor:pointer}
.pool-call-pick:focus-visible{outline:1px solid #f9d485;outline-offset:3px;background:#f9d48512}
body[data-pool-call-mode=true] .arena{grid-template-columns:minmax(0,1fr) 92px}
body[data-pool-call-mode=true] .shot-controls{width:92px}
body[data-pool-call-mode=true] .game-message{display:none}
body[data-pool-call-mode=true] .shot-controls>.power-controls,body[data-pool-call-mode=true] .shot-controls>.fine-controls{display:none}
.pool-call-editor{display:flex;flex-direction:column;align-items:stretch;gap:9px;width:100%;text-align:center;color:#f8e6bc}
.pool-call-instruction{font-size:11px;line-height:1.5;margin:0;color:#cbd6cf}
.pool-call-summary{font-size:12px;line-height:1.5;margin:0;font-weight:600}
.pool-call-actions{display:flex;flex-direction:column;gap:7px}
.pool-call-editor [data-confirm]{background:#f3c781;color:#152821;border-color:#f3c781}
.pool-call-editor [data-safety][aria-pressed=true]{border-color:#f3c781;box-shadow:inset 0 0 0 1px #f3c781}
.pool-call-editor .pool-call-auto{border:0;background:transparent;min-height:30px;padding:2px;font-weight:400;font-size:11px;text-decoration:underline;color:#cbd6cf}
@media(max-width:600px),(pointer:coarse) and (max-width:1100px){
 .pool-controls{bottom:max(105px,calc(env(safe-area-inset-bottom) + 92px));max-width:calc(100vw - 32px);width:max-content}
 .pool-controls button{font-size:12px;padding:9px 12px}
 body[data-pool-call-mode=true] .arena{grid-template-columns:minmax(0,1fr)}
 body[data-pool-call-mode=true] .shot-controls{width:100%}
 .pool-call-editor{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;text-align:left;align-items:center;padding:0 4px}
 .pool-call-instruction{display:none}
 .pool-call-summary{font-size:11px;grid-column:1;grid-row:1;line-height:1.25}
 .pool-call-actions{flex-direction:row;gap:5px;grid-column:2;grid-row:1/3}
 .pool-call-editor button{font-size:11px;padding:8px}
 .pool-call-editor .pool-call-auto{grid-column:1;grid-row:2;text-align:left;min-height:22px;font-size:10px;padding:0}
}

.snooker-controls select{max-width:230px;min-height:38px;border:1px solid #ad9c6d;border-radius:9px;background:#10231e;color:#eee6c7;padding:6px 10px;font:inherit}.snooker-controls{gap:8px;flex-wrap:wrap;max-width:min(85vw,760px)}

.snooker-controls .snooker-concede{background:transparent;border:0;padding:4px 8px;text-decoration:underline;font-size:11px;opacity:.7;min-height:28px;}
