/* Table-first layout. Only this Pool page opts in; shared game styles stay intact. */
body.pool{height:100dvh;min-height:100dvh;overflow:auto;background:#0b1211}
.pool header{height:44px;padding:0 18px;background:#0d1715;border-bottom:1px solid #bfa16a25}
.pool header .brand{font-size:19px}.pool header button{min-height:32px;padding:4px 11px}
.pool .game{flex:1 0 0;min-height:0}.pool .scorebar{height:42px;padding:4px 20px;gap:12px;background:#101b18}
.pool .player{min-width:0;gap:8px}.pool .player>div:last-child{display:flex;align-items:baseline;gap:9px}
.pool .player strong{font-size:12px;max-width:170px}.pool .player small{font-size:10px;margin:0}
.pool .medallion{width:26px;height:26px;font-size:15px;flex:none}.pool .round{min-width:70px}
.pool .round .eyebrow{display:none}.pool .round strong{font:600 14px 'DM Sans',system-ui,sans-serif;margin:0;color:#ead6a7}
.pool .viewbar{min-height:40px;padding:4px 16px;gap:6px;background:#0e1816;border-color:#bfa16a25}
.pool .view-label{display:none}.pool .viewbar button,.pool #cameraTools button{min-height:30px;padding:4px 10px;font-size:11px}
.pool #cameraTools{gap:5px}.pool #cameraTools #zoomIn,.pool #cameraTools #zoomOut,.pool #cameraTools #turnView{min-width:32px;font-size:17px}
.pool #viewStatus{font-size:10px;margin-left:6px}.pool .stage{flex:1 0 220px;height:auto;min-height:220px}
.pool .notice{top:9px;font-size:11px;padding:6px 14px;max-width:min(640px,90%)}
.pool .controls{display:grid;grid-template-columns:56px auto minmax(80px,420px) max-content 104px;justify-content:center;align-items:center;gap:12px;padding:8px 18px;min-height:72px;background:#0e1816;border-color:#bfa16a30}
.pool .controls>.thumb-row{grid-column:1;order:0}.pool .controls>.aim-control{grid-column:2}.pool .controls>.power{grid-column:3;min-width:0}.pool .controls>.pool-shot-tools{grid-column:4}.pool .controls>#shoot{grid-column:5}
.pool .aim-control{gap:4px}.pool .aim-control button{min-height:34px;width:34px}.pool #precision{min-height:34px;width:46px;padding:3px 5px;font-size:10px}
.pool .power label{font-size:9px;letter-spacing:1px}.pool .power input{height:28px}.pool .shoot{min-width:0;min-height:42px;font-size:15px;padding:6px 14px}
.pool-shot-tools{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:nowrap}
.pool .controls .pool-shot-tools #moveCue,.pool .controls .pool-shot-tools #cancelCue{width:auto;flex:none}
.pool .pool-shot-tools>button{position:static;min-height:36px;padding:5px 10px;font-size:11px;margin:0;box-shadow:none;backdrop-filter:none}
.pool .pool-shot-tools .spin-open{gap:6px;background:#1a2a24}.pool .spin-open small{display:none}.pool .mini-cue{width:23px;height:23px}
.pool .pool-shot-tools #tableCallouts{background:transparent;color:#d6c59f;border-color:#bfa16a40}
.pool .thumb-row{display:flex;align-items:center;justify-content:center;margin:0;gap:0}.pool .pool-stick{height:56px;width:56px;flex-basis:56px}
.pool #stickKnob{width:24px;height:24px;left:15px;top:15px}.pool .stick-cross.horizontal{top:27px;left:6px;right:6px}.pool .stick-cross.vertical{left:27px;top:6px;bottom:6px}.pool .stick-copy{display:none}
.pool #cueNudges{gap:4px}.pool #cueNudges button{min-width:36px;min-height:36px}
.pool.placing .pool-shot-tools{flex-wrap:wrap}
.pool.placing .controls{display:flex;justify-content:center}.pool.placing #placeCue{width:auto;min-height:42px;min-width:130px}.pool.placing .thumb-row{flex:none}
.pool .footer{min-height:34px;margin:0;padding:3px 18px;background:#0b1412;border-top:1px solid #ffffff0a;gap:12px}.pool .footer .invite-direct{min-height:28px;padding:4px 10px;font-size:10px;background:transparent;border-color:#bfa16a40}.pool .footer #connection{font-size:9px}
/* Coaching is an explicitly opened panel, not a permanent row or automatic interruption. */
.pool .pool-assist{position:fixed;z-index:7;right:16px;bottom:116px;width:min(390px,calc(100vw - 32px));max-height:min(440px,55dvh);overflow:auto;margin:0;padding:14px;background:#10211ff5;border:1px solid #bfa77870;box-shadow:0 14px 45px #0008}
.coach-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;color:#ead6a7}.coach-heading button{min-height:32px;font-size:11px;padding:4px 8px}.pool .coach-buttons{gap:6px}.pool #coachStatus{min-width:100%;font-size:11px;line-height:1.4}.pool .coach-plan{flex-direction:column;padding:10px;gap:8px}.pool .coach-actions{flex-direction:row;min-width:0}.pool .coaching-note{font-size:12px;line-height:1.5}
@media(pointer:coarse){.pool header button,.pool .viewbar button,.pool #cameraTools button,.pool .aim-control button,.pool #precision,.pool .pool-shot-tools>button,.pool .shoot,.pool #cueNudges button{min-height:44px}.pool .aim-control button{width:44px}.pool .footer .invite-direct{min-height:36px}}
@media(max-width:800px){
 .pool header{height:48px;padding:0 10px;gap:8px}.pool header .brand{font-size:17px}.pool header nav{gap:5px}.pool header button{min-height:44px;padding:4px 8px}.pool header nav>a{font-size:9px}
 .pool .scorebar{height:46px;padding:4px 10px;gap:6px}.pool .player{gap:6px}.pool .player>div:last-child{display:block}.pool .player strong{font-size:11px;max-width:100px}.pool .player small{font-size:9px;margin-top:1px}.pool .round strong{font-size:12px}.pool .medallion{width:24px;height:24px;font-size:14px}
 .pool .viewbar{padding:3px 8px;gap:4px}.pool .viewbar>button{min-height:44px;padding:5px;font-size:10px}.pool #viewStatus{display:none}.pool #cameraTools{width:100%}.pool #cameraTools button{min-height:44px;font-size:10px;padding:5px 8px}
 .pool .stage{height:auto;min-height:260px;flex-basis:260px}.pool .notice{top:7px;font-size:10px;padding:5px 10px}
 .pool .controls{display:grid;grid-template-columns:132px minmax(0,1fr) 84px;grid-template-areas:'thumb power shoot' 'aim tools tools';gap:4px 8px;padding:6px 8px;min-height:0}
 .pool .controls>.thumb-row{grid-area:thumb}.pool .controls>.aim-control{grid-area:aim;justify-content:center}.pool .controls>.power{grid-area:power}.pool .controls>.pool-shot-tools{grid-area:tools;justify-content:flex-end}.pool .controls>#shoot{grid-area:shoot;min-height:46px;padding:5px;font-size:13px}
 .pool .aim-control{gap:0}.pool .aim-control button,.pool #precision{width:44px;min-height:44px}.pool .pool-shot-tools{gap:4px;flex-wrap:wrap}.pool .pool-shot-tools>button{min-height:44px;padding:5px 7px;font-size:10px}.pool .mini-cue{width:20px;height:20px}.pool .spin-open>span:last-child{font-size:10px}
 .pool.placing .controls{display:grid;grid-template-columns:66px minmax(0,1fr);grid-template-areas:'thumb tools' 'thumb place';gap:4px 8px}.pool.placing .controls>.pool-shot-tools{justify-content:center}.pool.placing #placeCue{grid-area:place;width:100%;min-height:44px}.pool #cueNudges button{min-width:40px;min-height:44px}
 .pool .footer{padding:3px 9px;gap:8px}.pool .footer .invite-direct{min-height:44px;padding:4px 8px;font-size:10px}.pool .footer #connection{max-width:none;font-size:8px}.pool .footer>span:last-child{display:none}
 .pool .pool-assist{right:8px;bottom:168px;width:calc(100vw - 16px);max-height:45dvh;padding:12px}
}
@media(max-height:520px) and (min-width:801px){.pool .scorebar{height:32px;padding-block:2px}.pool .stage{min-height:170px;flex-basis:170px}.pool .controls{padding:4px 10px;gap:7px;grid-template-columns:48px auto minmax(75px,1fr) auto 80px;min-height:58px}.pool .pool-stick{width:48px;height:48px;flex-basis:48px}.pool #stickKnob{left:11px;top:11px}.pool .stick-cross.horizontal{top:23px}.pool .stick-cross.vertical{left:23px}.pool .viewbar{padding:2px 8px;min-height:38px}.pool .footer{min-height:30px}.pool .footer .invite-direct{min-height:28px}.pool .pool-assist{bottom:86px;max-height:65dvh}}

/* Short landscape screens put the two social actions in spare header space. */
@media(max-height:520px) and (min-width:801px){
 .pool .footer{display:contents}.pool .footer>span{display:none}
 .pool .footer #ufaPlayHuman,.pool .footer #quickInvite{position:fixed;top:0;z-index:3;min-height:44px!important;height:44px;margin:0;padding:5px 8px!important;font-size:10px!important}
 .pool .footer #ufaPlayHuman{left:170px;width:100px}.pool .footer #quickInvite{left:278px;width:96px}
}
