/* Uses the site's existing green felt, wood, brass, modal, count-card and card styles. */
body:not(.dev-tools-unlocked) .dev-only {display:none!important}
body.dev-tools-unlocked button.dev-only {display:inline-block}
.shared-game-overlay {padding:10px!important;align-items:flex-start!important;overflow:auto!important;background:linear-gradient(125deg,#221509,#100b07)!important}
.shared-game {width:100%;max-width:1800px;margin:auto;color:#fff3d2;min-width:0}
.shared-game-header {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-bottom:1px solid #a87935;background:linear-gradient(#382413,#170e07);margin-bottom:10px}
.shared-game-header>div{display:flex;gap:6px}
.shared-game-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(230px,1fr);grid-template-rows:minmax(470px,62vh) minmax(160px,25vh);gap:10px}
.shared-felt{position:relative;border:8px solid #483018;outline:1px solid #aa803c;border-radius:28px;background:radial-gradient(ellipse at center,#42774b,#204e36 55%,#102f23);box-shadow:inset 0 0 0 3px #8d743b;min-width:0;overflow:hidden}
.shared-turn-status{position:absolute;top:12px;left:12%;right:12%;text-align:center;font-size:13px;color:#fff3d2;z-index:1}
.shared-centre{position:absolute;inset:54px 21% 75px;display:flex;align-items:center;justify-content:center;min-width:0}
.shared-table-seat{position:absolute;width:17%;max-width:150px;padding:7px 4px;border:1px dashed #8f9974;border-radius:13px;background:#133824c9;text-align:center;font-size:12px;box-sizing:border-box;z-index:2;overflow-wrap:anywhere}
.shared-table-seat strong,.shared-table-seat span{display:block}.shared-table-seat strong{color:#fff3d2}.shared-table-seat span{font-size:11px;margin-top:4px;color:#dfd5b9}
.shared-table-seat.left,.shared-table-seat.right{top:calc(55px + (100% - 140px) * (var(--seat-index) + .5) / var(--seat-count));transform:translateY(-50%)}
.shared-table-seat.left{left:2%}.shared-table-seat.right{right:2%}.shared-table-seat.bottom{bottom:10px;left:50%;transform:translateX(-50%);width:180px;max-width:40%}.shared-table-seat.current{border:2px solid #f2c36e;box-shadow:0 0 12px #eab14c55}
.shared-game .panel{border:1px solid #986d2b;border-radius:22px;padding:12px;background:linear-gradient(145deg,#26160b,#160c05);min-width:0;margin:0;color:#fff3d2}
.shared-chat{display:flex;flex-direction:column;gap:8px}.shared-chat-messages{flex:1;min-height:80px;overflow:auto;border:1px solid #654b21;border-radius:9px;padding:8px;font-size:12px;background:#100a05}.shared-chat .chat-row{display:flex;gap:6px}.shared-chat input{min-width:0;flex:1}
.shared-log{overflow:auto;font-size:12px;line-height:1.55}.shared-hand-panel{overflow:auto}.shared-hand{display:flex;gap:5px;padding:8px 0;overflow-x:auto;min-height:100px}.shared-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}.shared-hand-card{padding:0!important;border:0!important;background:none!important;flex:0 0 auto}.shared-hand-card .playing-card{width:60px!important;height:88px!important}.shared-hand-card:disabled{opacity:.55;cursor:default}.shared-card-back{background:repeating-linear-gradient(45deg,#284b67 0 4px,#203950 4px 8px)!important;border:3px double #ead7ae!important;display:flex!important;align-items:center;justify-content:center;color:#e5c886!important}.shared-card-back>span{font-size:32px}
.shared-choices{margin:8px 0;grid-template-columns:repeat(auto-fit,minmax(65px,1fr))}.shared-choices .gurka-count-number{font-size:17px}.shared-choices .gurka-count-choice:has(input:disabled){opacity:.7;cursor:default}
.shared-result-overlay{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:14px;background:#0009}.shared-result-overlay .modal{max-height:90dvh;overflow:auto;width:min(500px,100%)}
.cycling-trick{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.cycling-trick>div{text-align:center;font-size:12px}.cycling-trick .playing-card{width:65px!important;height:92px!important;margin:6px auto}.cycling-tie-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.cycling-tie-grid button{min-width:0;padding:7px 2px}.cycling-centre-info{text-align:center;width:100%}.cycling-centre-info h2{margin:4px}.cycling-trump{font-size:28px}
@media(max-width:800px){.shared-game-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.shared-felt{height:530px;grid-row:1}.shared-hand-panel{grid-row:2}.shared-chat{grid-row:3;max-height:220px}.shared-log{grid-row:4;max-height:180px}.shared-game-header{flex-wrap:wrap}.shared-game-overlay{padding:5px!important}.shared-centre{left:22%;right:22%}.shared-table-seat{width:19%;font-size:10px;padding:4px 2px}.shared-table-seat span{font-size:9px}.shared-table-seat.bottom{font-size:12px}.shared-turn-status{font-size:11px;left:5%;right:5%}.shared-hand-card .playing-card{width:51px!important;height:75px!important}}
@media(max-width:420px){.shared-felt{height:550px;border-width:5px}.shared-table-seat{font-size:9px}.shared-centre{left:21%;right:21%}.shared-game-header{font-size:13px}.shared-game-header button{padding:6px 8px}.cycling-trick{gap:5px}.cycling-trick .playing-card{width:46px!important;height:66px!important}.cycling-tie-grid{grid-template-columns:repeat(6,1fr)}}
/* Independent game surfaces must cover the original table and its header. */
.shared-game-overlay{z-index:40!important;height:100dvh;box-sizing:border-box}
#cyclingMenu,#cyclingSetup,#cyclingOnline,#cyclingLobby{z-index:45}
#cyclingRulesOverlay,#sevensRulesOverlay{z-index:60}
body.sevens-mode,body.cycling-mode{height:100dvh!important;overflow:hidden!important}
body.sevens-mode>header,body.sevens-mode>#main,body.cycling-mode>header,body.cycling-mode>#main{display:none!important}
.shared-game .chat-input{color:#fff3d2;background:#100a05;border:1px solid #765528;border-radius:8px;padding:9px}
.shared-game .chat-input:disabled{opacity:.65}
.cycling-centre-info{max-height:100%;overflow:auto}.cycling-tie-grid{width:100%}
@media(max-width:800px){#cyclingGame .shared-felt{height:clamp(320px,52dvh,470px)}}
