/* Two wooden ledges, stable slots, adaptive column count. */
.game-column:fullscreen #table,.game-column.fullscreen-fallback #table{height:calc(100dvh - 420px)}
.game-column:fullscreen .table-logo,.game-column.fullscreen-fallback .table-logo{display:none}.game-column:fullscreen .table-center,.game-column.fullscreen-fallback .table-center{inset:75px 22% 70px}
#pile,.discard-zone .tile{touch-action:none}.touch-ghost.tile-back{width:42px;height:60px}
.rack-slot.empty{border:1px dashed #a9824f55;background:#6a4c2305}.rack-slot.empty.drop-active{background:#fff5}
@media(max-width:640px){.table .player.pos1{right:8px}.table .player.pos3{left:8px}.rack .tile{font-size:clamp(20px,4.7vw,27px)}}
.table .player.pos1{left:auto;right:22px;top:43%}.table .player.pos3{right:auto;left:22px;top:43%}.table .discard-zone.pos1{left:auto;right:18px;top:24px;bottom:auto}.table .discard-zone.pos3{right:auto;left:18px;top:auto;bottom:24px}
html[lang=en] .tile.seen:after{content:'OUT'}#drawHint{font-size:7px;letter-spacing:0;opacity:.7}.event-time{font-size:8px;color:#a4af9b}.event-symbol{width:28px;flex-shrink:0;text-align:center;font-size:23px;color:#839872}
.rack{display:flex;flex-direction:column;gap:0;min-height:190px;padding:8px 9px 0;background:linear-gradient(100deg,#c5a474,#e0c69a 35%,#d4b580 70%,#bb975e);overflow:visible;border:1px solid #b89a67;box-shadow:0 4px 0 #95733f,0 10px 20px #4e391b21;border-radius:10px;align-items:stretch;justify-content:flex-start}
.rack-row{display:grid;grid-template-columns:repeat(var(--columns,15),minmax(0,1fr));gap:4px;min-height:90px;padding:9px 4px 15px;border-bottom:10px solid #c19b60;box-shadow:0 2px 0 #a27d46;background:linear-gradient(0deg,#926c3b32,transparent 30%);border-radius:3px;margin-bottom:8px}
.rack-row:last-child{margin-bottom:0;border-bottom-width:12px}.rack-slot{min-width:0;min-height:63px;border-radius:4px;position:relative;display:flex;align-items:flex-end;justify-content:center}.rack-slot.drop-active{background:#fff5;outline:1px dashed #476c49}.rack .tile{width:100%;max-width:49px;flex-basis:auto;height:63px;min-width:0;box-shadow:0 3px 0 #b7aa89,1px 5px 4px #493b242e;font-size:30px;align-self:flex-end}.rack .tile:after{left:calc(50% - 3px)}.rack .tile.seen:after{left:50%;transform:translateX(-50%);font-size:5px}.rack .tile.selected{transform:translateY(-8px)}.tile.turned{background:linear-gradient(120deg,#e7eadc,#b7c9b2);border:3px solid #e9e8d8;font:700 9px 'DM Sans',sans-serif;letter-spacing:1px;color:#315b44;box-shadow:0 3px 0 #929f85;align-items:flex-start;padding-top:10px}.tile.turned:after{content:'81';font:italic bold 19px Georgia;left:50%;transform:translateX(-50%);bottom:9px;color:#70906c}.rack .tile.turned{font-size:9px}.rack .empty-slot{width:7px;height:2px;background:#b6945c44;margin-bottom:1px}.rack-top #rackHint{display:block;font-size:10px}.rack-top{gap:8px}.draw-area{gap:28px}.table-center{inset:90px 22% 80px}.table-logo span{margin-bottom:22px}.discard-zone{z-index:2;width:53px;height:73px;background:#092c2526;border-color:#b7caa346}.discard-zone .tile{width:38px;height:57px;flex-basis:38px;font-size:28px}.discard-zone .tile:after{left:16px}.discard-zone.pos0{left:auto;right:18px;bottom:24px}.discard-zone.pos1{left:18px;top:auto;bottom:24px}.discard-zone.pos2{left:18px;top:24px}.discard-zone.pos3{right:18px;top:24px}.discard-zone:after{content:attr(data-label);position:absolute;left:50%;transform:translateX(-50%);bottom:-14px;white-space:nowrap;font-size:7px;color:#acc5ac}.player.pos1{left:22px;top:43%}.player.pos3{right:22px;top:43%}.table-logo{pointer-events:none}.table-heading .table-tools{display:flex;align-items:center;gap:9px}.fullscreen-btn{padding:6px 9px;font-size:12px;line-height:1;background:transparent;border-color:#d1dccb}.game-column:fullscreen,.game-column.fullscreen-fallback{background:var(--bg);padding:18px 28px;overflow:auto;width:100%;height:100%;max-width:none}.game-column:fullscreen .table,.game-column.fullscreen-fallback .table{height:calc(100dvh - 330px);min-height:250px}.game-column.fullscreen-fallback{position:fixed;inset:0;z-index:50}.game-column:fullscreen .bottom-tip{display:none}.game-column:fullscreen .rack-top{margin-top:18px}.game-column:fullscreen .rack{max-width:1100px;margin:auto}.lang-switch{padding:8px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:transparent;font-size:11px}.event-card{padding:18px 16px}.event-list{max-height:230px;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain}.event-item{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #edf0e7;min-height:54px}.event-item:last-child{border:0}.event-text{font-size:11px;line-height:1.5;flex:1}.event-text small{display:block;color:#9aab94;font-size:8px}.event-item .tile{height:39px;width:28px;flex-basis:28px;font-size:21px;pointer-events:none}.event-item .tile:after{left:11px;bottom:3px;font-size:5px}.event-item .tile-back{width:28px;height:39px;font-size:15px;border-width:2px;box-shadow:2px 2px 0 #c5c8b4;flex-shrink:0}.event-empty{font-size:11px;line-height:1.7;color:#8a9988;padding:15px 0}.event-card .card-title{margin-bottom:8px}.event-card .card-title>span{font-size:8px;letter-spacing:1px}.paper-score{background:#eeeee4;border:1px solid #b6b6aa;border-radius:2px;padding:14px 12px 10px;color:#37392d;box-shadow:2px 3px 0 #b8b6a429;position:relative}.paper-score:before{content:'';position:absolute;left:0;right:0;top:12px;border-top:2px dotted #75ad95}.paper-head{display:flex;align-items:center;justify-content:space-between;margin-top:12px;margin-bottom:9px;font:bold 17px Georgia}.paper-head span:first-child{text-decoration:underline}.paper-head small{font-size:10px;letter-spacing:2px}.paper-meta{display:flex;justify-content:space-between;border-bottom:1px solid #6b6d60;font-size:8px;padding-bottom:5px}.paper-grid{width:100%;table-layout:fixed;border-collapse:collapse;margin-top:0;font-family:Georgia,serif}.paper-grid th,.paper-grid td{padding:8px 2px;text-align:center;width:25%;border-right:1px solid #606153;font-size:12px}.paper-grid th:last-child,.paper-grid td:last-child{border-right:0}.paper-grid th{font:600 10px 'DM Sans',sans-serif;border-bottom:1px solid #6b6d60;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.paper-grid td{height:25px;padding:4px 0;font-style:italic}.paper-grid tfoot{border-top:1px solid #6b6d60}.paper-grid tfoot td{font-weight:bold;font-style:normal}.score-card{padding:0;border:0;background:transparent}.score-card>p,.score-card>.card-title{display:none}.score-card .text-button{padding:11px 2px}.history-paper{max-width:420px;margin:0 auto}.history-paper .paper-score{padding:18px}.history-paper .paper-grid td{height:32px}dialog{position:fixed;inset:0;margin:auto;max-height:90dvh;overflow:auto}dialog.decision-modal{border-top:5px solid #ccab67;max-width:460px;text-align:center;padding:30px}.decision-modal .actions{justify-content:center;flex-wrap:wrap}.decision-tile{display:flex;justify-content:center;margin:18px 0}.decision-tile .tile{pointer-events:none}.decision-modal .eyebrow{color:#9a804e}.decision-timer{font-size:11px;color:#a38b5e;margin-top:18px}.decision-spinner{width:30px;height:30px;border:3px solid #e0e8dd;border-top-color:#37614a;border-radius:50%;margin:22px auto;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1180px){.rack .tile{height:56px;font-size:27px}.rack-row{min-height:79px;padding:6px 2px 13px;gap:3px}.rack-slot{min-height:57px}.rack{min-height:170px}.header-right{gap:8px}.header-right .subtle{padding:9px}.rack-top #rackHint{font-size:8px}}
@media(max-width:940px){.sidebar{grid-template-columns:1fr 1fr}.event-card{grid-column:1/-1;grid-row:1}.event-list{max-height:155px}.welcome{grid-column:1/-1}.rack .tile{max-width:47px}.rack-row{min-height:82px}.rack{min-height:175px}.table-center{inset:95px 22% 80px}}
@media(max-width:640px){.rack-row{gap:5px;min-height:78px;padding:6px 4px 12px}.rack-slot{min-height:54px}.rack .tile{height:54px;font-size:27px}.rack{min-height:168px;padding:5px 5px 0}.rack .tile.turned{font-size:8px}.rack-top #rackHint{font-size:8px;max-width:110px;text-align:right}.table-center{inset:90px 19% 80px}.discard-zone{width:42px;height:61px}.discard-zone .tile{width:30px;flex-basis:30px;height:47px;font-size:24px}.discard-zone.pos0{right:12px;bottom:24px}.discard-zone.pos1{left:12px;bottom:24px;top:auto}.discard-zone.pos2{left:12px;top:24px}.discard-zone.pos3{right:12px;top:24px}.player.pos1{left:13px;top:44%}.player.pos3{right:13px;top:44%}.player.pos0{bottom:30px}.draw-area{gap:19px}.draw-area .tile{width:38px;height:56px;flex-basis:38px}.table-logo span{font-size:5px}.table-heading .table-tools{gap:5px}.fullscreen-btn{padding:6px}.header-right .subtle{display:none}.lang-switch{font-size:10px;padding:7px}.game-column:fullscreen,.game-column.fullscreen-fallback{padding:10px}.game-column:fullscreen .table,.game-column.fullscreen-fallback .table{height:calc(100dvh - 330px)}.paper-grid th{font-size:9px}.paper-head{font-size:16px}.paper-meta{font-size:7px}}
@media(max-height:520px) and (orientation:landscape){.game-column:fullscreen,.game-column.fullscreen-fallback{display:grid;grid-template-columns:1fr 1fr;column-gap:15px;align-items:start}.game-column:fullscreen .table-heading,.game-column.fullscreen-fallback .table-heading{grid-column:1/-1}.game-column:fullscreen .table,.game-column.fullscreen-fallback .table{grid-column:1;grid-row:2/6;height:calc(100dvh - 65px);min-height:250px}.game-column:fullscreen .rack-top,.game-column.fullscreen-fallback .rack-top{grid-column:2;margin-top:5px}.game-column:fullscreen .rack,.game-column.fullscreen-fallback .rack{grid-column:2;width:100%}.game-column:fullscreen .controls,.game-column.fullscreen-fallback .controls{grid-column:2;margin-top:10px}.game-column:fullscreen .table-logo,.game-column.fullscreen-fallback .table-logo{display:none}.game-column:fullscreen .bottom-tip,.game-column.fullscreen-fallback .bottom-tip{display:none}}
