body.mock-v3 .freecell-table{--freecell-tableau-gap:clamp(36px,calc(var(--card-w) * 0.3),44px)}body.mock-v3 .freecell-table .freecell-slots,body.mock-v3 .freecell-table .foundations{display:flex;gap:0.65rem}body.mock-v3 .freecell-table .tableau-piles{grid-template-columns:repeat(8,minmax(0,1fr));gap:clamp(0.18rem,0.82vw,0.56rem)}body.mock-v3 .freecell-table .pile{width:var(--card-w)}body.mock-v3 .freecell-table .pile--tableau{width:100%;min-height:max(calc(var(--card-h)+var(--freecell-tableau-gap) * 6),300px)}body.mock-v3 .freecell-table .card-placeholder--tableau-empty{border-color:rgba(202,244,226,0.5)}body.mock-v3 .freecell-table .tableau-column.is-drop-target .card-placeholder--tableau-empty{border-color:rgba(255,214,10,0.88);box-shadow:inset 0 0 0 1px rgba(255,214,10,0.32)}body.mock-v3 .freecell-table .freecell-slot:empty::before{content:"+"}body.mock-v3 .freecell-table .freecell-slot:empty::before{position:absolute;inset:0;display:grid;place-items:center;color:rgba(211,235,224,0.58);font-family:var(--font-display);font-size:clamp(1.4rem,calc(var(--card-w) * 0.28),2.3rem);font-weight:800;line-height:1}body.mock-v3 .freecell-table .is-drop-target{border-color:rgba(255,214,10,0.88);box-shadow:0 0 0 2px rgba(255,214,10,0.46)}body.mock-v3 .freecell-table .playing-card.is-hint-source{box-shadow:0 0 0 2px rgba(255,214,10,0.92),var(--shadow-card)}body.mock-v3 .drag-ghost .playing-card{position:absolute}@media (max-width:980px){body.mock-v3 .freecell-table .tableau-piles{gap:0.14rem}}@media (max-width:480px){body.mock-v3 .freecell-table{--freecell-tableau-gap:clamp(30px,calc(var(--card-w) * 0.72),36px)}}@media (max-width:820px){body.mock-v3 .mock-v3-first-screen{overflow-x:hidden;overflow-y:visible}body.mock-v3 .mock-v3-shell{padding:8px 6px 16px}body.mock-v3 .mock-v3-table-wrap{padding:6px 4px 10px}body.mock-v3 .mock-v3-top-panel{gap:8px;width:100%;max-width:none}body.mock-v3 .toolbar-actions,body.mock-v3.mock-v3-compact-top .toolbar-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;width:100%}body.mock-v3 .toolbar-actions .btn,body.mock-v3.mock-v3-compact-top .toolbar-actions .btn{width:100%;min-width:0;min-height:36px;padding:0.38rem 0.32rem;border-radius:9px;font-size:clamp(0.66rem,1.6vw,0.78rem);line-height:1.06;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.mock-v3 .game-stats--four,body.mock-v3.mock-v3-compact-top .game-stats--four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%}body.mock-v3 .game-stat,body.mock-v3.mock-v3-compact-top .game-stat{min-width:0;min-height:38px;padding:0.34rem 0.4rem;border-radius:8px}body.mock-v3 .game-stat span,body.mock-v3.mock-v3-compact-top .game-stat span,body.mock-v3 .game-stat strong,body.mock-v3.mock-v3-compact-top .game-stat strong{overflow:hidden;text-overflow:ellipsis}body.mock-v3 .freecell-table{--card-w:clamp(42px,calc((100vw - 46px) / 8),78px);--card-h:calc(var(--card-w) * 1.42);--freecell-tableau-gap:clamp(28px,calc(var(--card-w) * 0.62),40px);width:100%;min-width:0;max-width:none;min-height:clamp(620px,92svh,760px);gap:clamp(8px,2vw,14px);margin-top:8px}body.mock-v3 .freecell-table .top-piles{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(6px,1.8vw,10px);align-items:start}body.mock-v3 .freecell-table .freecell-slots,body.mock-v3 .freecell-table .foundations{display:grid;grid-template-columns:repeat(4,var(--card-w));justify-content:space-between;justify-self:stretch;width:100%;gap:0}body.mock-v3 .freecell-table .tableau-piles{grid-template-columns:repeat(8,var(--card-w));justify-content:space-between;width:100%;gap:0}body.mock-v3 .freecell-table .pile,body.mock-v3 .freecell-table .pile--tableau,body.mock-v3 .freecell-table .playing-card{width:var(--card-w)}body.mock-v3 .freecell-table .playing-card{height:var(--card-h)}body.mock-v3 .freecell-table .pile{min-height:var(--card-h);border-radius:9px}body.mock-v3 .freecell-table .pile--tableau{min-height:max(calc(var(--card-h)+var(--freecell-tableau-gap) * 7),320px)}}@media (max-width:660px){body.mock-v3 .mock-v3-shell{padding-inline:4px}body.mock-v3 .mock-v3-table-wrap{padding-inline:4px}body.mock-v3 .toolbar-actions,body.mock-v3.mock-v3-compact-top .toolbar-actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;width:100%}body.mock-v3 .toolbar-actions .btn,body.mock-v3.mock-v3-compact-top .toolbar-actions .btn{min-height:34px;padding:0.34rem 0.28rem;border-radius:9px;font-size:clamp(0.64rem,2.95vw,0.74rem);line-height:1.05}body.mock-v3 .toolbar-actions #newGameButton,body.mock-v3 .toolbar-actions #undoButton{grid-column:span 3}body.mock-v3 .toolbar-actions #hintButton,body.mock-v3 .toolbar-actions #autoButton,body.mock-v3 .toolbar-actions #settingsButton{grid-column:span 2}body.mock-v3 .mock-v3-hud{gap:6px}body.mock-v3 .game-stats--four,body.mock-v3.mock-v3-compact-top .game-stats--four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}body.mock-v3 .game-stat,body.mock-v3.mock-v3-compact-top .game-stat{display:grid;justify-items:center;align-content:center;min-height:34px;padding:4px 3px;gap:1px;text-align:center;white-space:normal}body.mock-v3.mock-v3-compact-top .game-stat::before,body.mock-v3.mock-v3-compact-top .game-stat span::after{display:none;content:none}body.mock-v3 .game-stat span,body.mock-v3.mock-v3-compact-top .game-stat span{font-size:clamp(0.54rem,2.2vw,0.62rem);line-height:1}body.mock-v3 .game-stat strong,body.mock-v3.mock-v3-compact-top .game-stat strong{font-size:clamp(0.76rem,3vw,0.9rem);line-height:1}body.mock-v3 .freecell-table{--card-w:clamp(38px,calc((100vw - 42px) / 8),55px);--freecell-tableau-gap:clamp(28px,calc(var(--card-w) * 0.72),38px);min-height:clamp(610px,92svh,740px);gap:8px}}@media (max-width:420px){body.mock-v3 .mock-v3-shell,body.mock-v3 .mock-v3-table-wrap{padding-inline:3px}body.mock-v3 .freecell-table{--card-w:clamp(36px,calc((100vw - 34px) / 8),48px);--freecell-tableau-gap:clamp(27px,calc(var(--card-w) * 0.76),36px);min-height:clamp(580px,90svh,710px)}body.mock-v3 .toolbar-actions,body.mock-v3.mock-v3-compact-top .toolbar-actions{gap:5px}body.mock-v3 .toolbar-actions .btn,body.mock-v3.mock-v3-compact-top .toolbar-actions .btn{min-height:32px;font-size:clamp(0.6rem,2.82vw,0.68rem)}body.mock-v3 .game-stat,body.mock-v3.mock-v3-compact-top .game-stat{min-height:32px}}
