/* Six seats around a shared board, with the market at the center. */
main,.topbar,footer{max-width:1840px}
main{padding:26px 28px 12px}
.game-table{display:grid;grid-template-columns:minmax(210px,1fr) minmax(580px,3fr) minmax(210px,1fr);gap:16px;align-items:stretch}
.player-rail{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:14px;min-width:0}
.seat-card{background:#202b23;border:1px solid #40503d;border-radius:12px;padding:17px 15px;min-width:0;display:flex;flex-direction:column;justify-content:center}
.seat-card.active-seat{border-color:var(--seat-color);box-shadow:0 0 0 2px color-mix(in srgb,var(--seat-color) 16%,transparent);background:linear-gradient(145deg,color-mix(in srgb,var(--seat-color) 8%,#202b23),#202b23)}
.seat-header{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid #3a4837}
.seat-header .avatar{width:43px;height:43px;font-size:21px}
.seat-name{min-width:0;flex:1}.seat-name strong{font-size:19px;font-weight:750;overflow-wrap:anywhere}.seat-name small{display:block;font-size:12px;line-height:1.6;color:var(--muted);margin-top:3px}
.seat-details{background:none;color:var(--muted);font-size:20px;padding:4px;align-self:flex-start}
.seat-finances{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 8px;margin:15px 0}
.seat-finances span{display:block;font-size:13px;color:var(--muted);font-weight:600;margin-bottom:5px}
.seat-finances strong{font-size:20px;font-weight:750;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.seat-bitcoin strong{color:var(--orange)}
.seat-ledger{display:grid;grid-template-columns:1fr;gap:5px;border-top:1px solid #3a4837;padding-top:11px;font-size:12px;color:var(--muted)}
.seat-ledger span{display:flex;justify-content:space-between;gap:6px}.seat-ledger b{color:#e5ebdc;font-weight:650}
.seat-bottom{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:13px}
.empty-seat{align-items:center;text-align:center;background:#1b241e88;border:1px dashed #3b4a38;color:#93a48d;gap:12px}
.empty-seat .empty-avatar{display:grid;place-items:center;border:1px dashed #58684e;border-radius:50%;height:48px;width:48px;font-size:24px}.empty-seat strong{font-size:16px}.empty-seat small{font-size:12px;line-height:1.6}
.table-board{min-width:0;padding:16px}
.table-board .panel-top{margin-bottom:14px;font-size:14px}.panel-top small{font-size:11px;color:var(--muted);margin-left:8px}.board-count{font-size:13px;color:var(--muted)}
.table-board .board{grid-template-rows:repeat(7,124px);gap:5px}
.table-board .tile-label{font-size:20px}.table-board .tile-num{font-size:11px}.table-board .tile-icon{font-size:25px}
.market-center{min-width:0;padding:18px 14px;gap:0}
.market-center .center-orbit{display:grid;width:102px;height:102px;margin:0 0 10px}.market-center .big-coin{width:76px;height:76px;font-size:51px}
.center-price-label{font-size:14px;color:var(--muted);font-weight:650;line-height:1.6}
.center-price{font-size:clamp(30px,3.2vw,48px);font-weight:750;font-variant-numeric:tabular-nums;line-height:1.3;letter-spacing:-1px;margin-top:5px}
.center-price small{font-size:14px;letter-spacing:0;color:var(--muted);margin-left:7px}
.center-change{font-size:15px;line-height:1.6;margin-top:3px;font-weight:650}.center-change span{color:var(--muted);font-size:12px;margin-left:6px;font-weight:500}
.center-chart{width:100%;max-width:480px;margin-top:8px}.center-chart .spark{height:62px;margin-top:0}
.price-history-link{background:none;color:var(--muted);font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:7px}
.price-stages{display:flex;gap:7px;overflow-x:auto;width:100%;max-width:480px;padding:4px 0 10px;scrollbar-width:thin;scrollbar-color:#67775b #202c23}
.price-stage{background:#17231c;border:1px solid #3c4b35;border-radius:6px;padding:7px 10px;min-width:90px;flex-shrink:0;text-align:left}
.price-stage span{font-size:11px;color:var(--muted);display:block}.price-stage strong{font-size:14px;display:block;margin-top:4px}.price-stage.latest{border-color:#ab8354}.price-stage.latest strong{color:var(--orange)}
.market-center .turn-bar{margin-top:13px;min-width:0;width:100%;max-width:380px;padding:10px 12px}.market-center .turn-bar strong{font-size:17px}.market-center .turn-bar small{font-size:13px}
.center-trades{display:flex;gap:9px;width:100%;max-width:380px;margin-top:11px}.center-trades button{flex:1;min-width:0;font-size:15px;padding:10px 4px}
.market-center .roll-btn{min-width:0;width:100%;max-width:380px;margin-top:10px;padding:12px 6px;font-size:16px}
.market-center #repayBtn{font-size:13px;padding:6px}
.table-board .board-foot{font-size:12px;margin-top:14px}
.table-bottom{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}
.table-bottom .goals-panel{grid-column:auto}.table-goals{display:grid;grid-template-columns:1fr 1fr;gap:2px 12px}.table-goals .goal{width:auto;display:flex;font-size:15px}
.table-headline{font-size:14px;line-height:1.8;color:var(--muted);margin-top:22px}.table-headline small{font-size:12px}
.table-bottom .log-list{max-height:210px}.table-bottom #exportBtn{padding:0}
.airdrop-rules{display:grid;gap:8px;margin-top:18px;padding:15px;background:#17241b;border:1px solid #40513b;border-radius:8px}
.airdrop-rules>strong{font-size:14px;color:var(--orange)}.airdrop-rule{display:flex;justify-content:space-between;gap:15px;font-size:14px;line-height:1.6;color:var(--muted)}.airdrop-rule b{color:var(--text);white-space:nowrap}
.airdrop-outcome{padding:18px;background:#17241b;border-radius:9px;margin-top:20px}.airdrop-outcome strong{font-size:29px;display:block;margin-bottom:8px}.airdrop-outcome span{font-size:14px;line-height:1.8;color:var(--muted)}
@media(min-width:1650px){.seat-card{padding:20px}.seat-finances strong{font-size:23px}.seat-ledger{font-size:14px}.seat-name strong{font-size:22px}}
@media(max-width:1200px) and (min-width:901px){main{padding-left:16px;padding-right:16px}.game-table{grid-template-columns:190px minmax(0,1fr) 190px;gap:10px}.seat-card{padding:13px 11px}.seat-header{gap:7px}.seat-header .avatar{width:32px;height:32px;font-size:17px}.seat-finances strong{font-size:17px}.seat-finances span{font-size:12px}.seat-name strong{font-size:17px}.table-board{padding:10px}.table-board .tile-label{font-size:17px}.table-board .tile-num{font-size:9px}.table-board .tile-icon{font-size:22px}.table-board .board{gap:4px}.market-center{padding:12px 8px}.center-change span{display:block;margin-left:0}.market-center .turn-bar{gap:7px}.market-center .turn-bar small{font-size:12px}.center-trades button{font-size:13px}.table-board .panel-top small{display:none}}
@media(max-width:900px){
 .game-table{grid-template-columns:1fr 1fr;gap:12px}.table-board{grid-column:1/-1;grid-row:1}.player-rail{grid-template-rows:none;grid-auto-rows:1fr;gap:12px}.rail-left{grid-column:1;grid-row:2}.rail-right{grid-column:2;grid-row:2}.seat-card{min-height:290px}.table-board .board{grid-template-rows:repeat(7,116px)}.table-bottom{grid-template-columns:1fr}.empty-seat{min-height:210px}.table-goals .goal{width:auto}.market-center{padding:12px}
}
@media(max-width:520px){
 main{padding:20px 10px 12px}.intro h1{font-size:26px}.game-table{gap:9px}.table-board{padding:9px}.table-board .board{grid-template-rows:repeat(7,112px);gap:3px}.table-board .tile-label{font-size:15px;letter-spacing:0}.table-board .tile-num{font-size:9px;left:3px}.table-board .tile-icon{font-size:21px}.table-board .panel-top{font-size:12px}.table-board .panel-top small{display:none}.board-count{font-size:11px}.market-center{padding:8px 5px}.market-center .center-orbit{width:69px;height:69px;margin-bottom:7px}.market-center .big-coin{width:57px;height:57px;font-size:37px}.center-price{font-size:31px}.center-price small{font-size:11px}.center-price-label{font-size:13px}.center-change{font-size:13px}.center-change span{font-size:11px;display:block;margin:2px 0 0}.center-chart .spark{height:43px}.price-history-link{font-size:11px}.price-stage{min-width:79px;padding:6px 8px}.price-stage strong{font-size:13px}.market-center .turn-bar{padding:9px 7px;gap:6px;margin-top:9px}.market-center .turn-bar .avatar{width:25px;height:25px;font-size:13px}.market-center .turn-bar strong{font-size:15px}.market-center .turn-bar small{font-size:12px}.center-trades{gap:5px;margin-top:8px}.center-trades button{font-size:12px;padding:9px 2px}.market-center .roll-btn{font-size:15px;margin-top:8px}.seat-card{padding:12px 10px;min-height:310px}.seat-header{gap:7px;flex-wrap:wrap}.seat-header .avatar{width:32px;height:32px;font-size:16px}.seat-name strong{font-size:16px}.seat-name small{font-size:11px}.seat-details{font-size:17px;padding:0}.seat-finances{gap:12px 5px}.seat-finances strong{font-size:16px}.seat-finances span{font-size:11px}.seat-ledger,.seat-bottom{font-size:11px}.empty-seat{min-height:180px}.empty-seat small{font-size:11px}.table-goals{grid-template-columns:1fr}.airdrop-rule{font-size:13px}
}

/* The board determines the table height, never the cumulative card content. */
@media(min-width:901px){
 main{padding-top:22px}
 .intro{margin-bottom:22px}
 .intro h1{font-size:32px}
 .game-table{--table-height:clamp(820px,calc(100vh - 220px),900px);align-items:start;gap:18px}
 .table-board,.player-rail{height:var(--table-height);min-height:0}
 .table-board{display:grid;grid-template-rows:auto minmax(0,1fr) auto;row-gap:12px;padding:14px;border-color:#3b493d;background:linear-gradient(160deg,#202a23,#19221d)}
 .table-board .panel-top,.table-board .board-foot{margin:0}
 .table-board .board{height:100%;min-height:0;grid-template-rows:repeat(7,minmax(0,1fr));gap:5px}
 .table-board .tile{min-height:0;gap:5px;border-radius:8px}
 .table-board .tile-label{font-size:19px}
 .table-board .tile-icon{font-size:23px}
 .table-board .board-foot{font-size:11px;line-height:1.6;gap:4px}
 .player-rail{grid-template-rows:repeat(3,minmax(0,1fr));gap:12px}
 .seat-card{min-height:0;padding:13px 14px;justify-content:center;border-radius:12px;box-shadow:0 5px 18px #00000012}
 .seat-header{padding-bottom:9px;gap:9px}
 .seat-header .avatar{width:35px;height:35px;font-size:18px}
 .seat-name strong{display:block;font-size:18px;line-height:1.3;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
 .seat-name small{font-size:11px;line-height:1.4;margin-top:4px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
 .seat-details{font-size:18px;padding:2px}
 .seat-finances{gap:9px 8px;margin:11px 0}
 .seat-finances span{font-size:12px;line-height:1.3;margin-bottom:4px}
 .seat-finances strong{font-size:21px;line-height:1.2;letter-spacing:-.4px}
 .seat-ledger{grid-template-columns:1fr 1fr;column-gap:12px;row-gap:6px;font-size:12px;padding-top:9px;line-height:1.4}
 .seat-ledger span{display:flex;justify-content:space-between;gap:4px;flex-wrap:wrap}
 .seat-ledger b{font-size:12px;font-variant-numeric:tabular-nums}
 .seat-bottom{font-size:11px;line-height:1.4;margin-top:9px}
 .empty-seat{gap:10px;background:linear-gradient(150deg,#1b251e99,#18221b66);box-shadow:none;border-color:#354333;color:#9cae97}
 .empty-seat .empty-avatar{width:36px;height:36px;font-size:19px;opacity:.65}
 .empty-seat strong{font-size:14px;font-weight:600}
 .empty-seat small{font-size:11px;color:#8b9f86}
 .market-center{padding:8px 12px;justify-content:center}
 .market-center .center-orbit{width:66px;height:66px;margin-bottom:6px}
 .market-center .center-orbit:before{inset:6px}
 .market-center .big-coin{width:54px;height:54px;font-size:36px;border-width:4px;box-shadow:0 6px 18px #0004}
 .center-price-label{font-size:13px;line-height:1.5}
 .center-price{font-size:40px;line-height:1.2;margin-top:3px}
 .center-price small{font-size:12px}
 .center-change{font-size:13px;line-height:1.5;margin-top:3px}
 .center-change span{font-size:11px}
 .center-chart{max-width:400px;margin-top:5px}
 .center-chart .spark{height:39px}
 .price-history-link{font-size:11px;padding:5px}
 .price-stages{max-width:400px;padding:3px 0 7px;gap:6px}
 .price-stage{min-width:85px;padding:5px 8px}
 .price-stage span{font-size:10px;line-height:1.3}
 .price-stage strong{font-size:13px;line-height:1.3;margin-top:3px}
 .market-center .turn-bar{max-width:345px;padding:8px 11px;margin-top:8px}
 .market-center .turn-bar .avatar{width:30px;height:30px;font-size:15px}
 .market-center .turn-bar strong{font-size:16px;line-height:1.3}
 .market-center .turn-bar small{font-size:12px;line-height:1.4;margin-top:4px}
 .center-trades{max-width:345px;margin-top:8px;gap:8px}
 .center-trades button{font-size:14px;padding:8px 4px;line-height:1.4}
 .market-center .roll-btn{max-width:345px;margin-top:8px;padding:10px 6px;font-size:16px;line-height:1.4}
 .market-center #repayBtn{padding:4px;font-size:12px}
 .table-bottom{margin-top:18px}
}
@media(min-width:901px) and (max-width:1200px){
 .game-table{gap:12px}
 .seat-card{padding:12px 10px}
 .seat-finances strong{font-size:18px}
 .seat-finances span{font-size:11px}
 .seat-header .avatar{width:29px;height:29px;font-size:15px}
 .seat-name strong{font-size:16px}
 .seat-ledger span{display:block;font-size:11px}
 .seat-ledger b{display:block;font-size:12px;margin-top:0}
 .seat-ledger{padding-top:7px;row-gap:4px;line-height:1.3}
 .seat-finances{margin:9px 0;row-gap:7px}
 .seat-bottom{margin-top:6px}
 .seat-header{gap:7px;padding-bottom:7px}
 .table-board{padding:10px;row-gap:10px}
 .table-board .tile-label{font-size:17px}
 .market-center{padding:6px}
 .market-center .turn-bar{padding:8px;gap:7px}
 .center-change span{display:inline;margin-left:4px;font-size:10px}
 .center-trades button{font-size:12px}
}
