.freecell-board{--freecell-gap-base:clamp(.22rem, .55vw, .45rem);--freecell-gap:calc(var(--freecell-gap-base) * var(--card-geometry-scale,1));--freecell-row-gap-base:clamp(.24rem, .8vh, .5rem);--freecell-row-gap:calc(var(--freecell-row-gap-base) * var(--card-geometry-scale,1));--freecell-wcap:min(7.6rem, calc((var(--game-vw,100dvw) - 10 * var(--freecell-gap)) / 8 / var(--card-scale-fit-reserve,1.2)));--card-width:var(--freecell-wcap);--card-height:calc(var(--card-width) * 1.4);--freecell-board-scale:var(--card-scale-fit-aware,1.2);--card-scale:var(--freecell-board-scale);--card-w:calc(var(--card-width) * var(--card-scale));--card-h:calc(var(--card-height) * var(--card-scale));--freecell-top-scale:.84;--freecell-top-card-w:calc(var(--card-w) * var(--freecell-top-scale));--freecell-top-card-h:calc(var(--card-h) * var(--freecell-top-scale));--freecell-zone-gap-base:clamp(.45rem, 1.4vw, 1.25rem);--freecell-zone-gap:calc(var(--freecell-zone-gap-base) * var(--card-geometry-scale,1));--freecell-fan-offset-base:clamp(1.35rem, 4.6vh, 3rem);--freecell-fan-offset:calc(var(--freecell-fan-offset-base) * min(var(--card-geometry-scale,1), .98));gap:var(--freecell-row-gap);width:100%;min-height:0;padding:var(--freecell-row-gap) var(--freecell-gap) calc(var(--freecell-row-gap) * 1.25);grid-template-rows:auto minmax(0,1fr);place-content:start center;display:grid}@media (width>=721px) and (width<=1024px){.game-shell-freecell{--card-width:min(5rem, calc((var(--game-vw,100vw) - 7.5rem) / 7 / var(--card-scale-fit-reserve,1.2)));--card-gap:.3rem}}@media (width>=1025px) and (width<=1400px){.game-shell-freecell{--card-width:min(6.4rem, calc((var(--game-vw,100vw) - 9.5rem) / 7 / var(--card-scale-fit-reserve,1.2)));--card-gap:.4rem}}@media (width>=1401px){.game-shell-freecell{--card-width:min(7.4rem, calc((var(--game-vw,100vw) - 11rem) / 7 / var(--card-scale-fit-reserve,1.2)));--card-gap:.45rem}}@media (width<=1400px){.freecell-board{--freecell-wcap:min(6.6rem, calc((var(--game-vw,100dvw) - 10 * var(--freecell-gap)) / 8 / var(--card-scale-fit-reserve,1.2)))}}@media (width<=1024px){.freecell-board{--freecell-top-scale:.9;--freecell-wcap:min(5.4rem, calc((var(--game-vw,100dvw) - 10 * var(--freecell-gap)) / 8 / var(--card-scale-fit-reserve,1.2)))}}@media (width<=720px){.freecell-board{--freecell-wcap:min(4.2rem, calc((var(--game-vw,100dvw) - 10 * var(--freecell-gap)) / 8 / var(--card-scale-fit-reserve,1.2)))}}.game-shell .freecell-board{--card-height:min(calc(var(--freecell-wcap) * 1.4), calc((100dvh - 9.75rem - 6 * var(--freecell-fan-offset)) / (1.31 + var(--freecell-top-scale)) / var(--card-scale-fit-reserve,1.2)));--card-width:calc(var(--card-height) / 1.4)}.freecell-top-row{grid-template-columns:repeat(4, var(--freecell-top-card-w)) var(--freecell-zone-gap) repeat(4, var(--freecell-top-card-w));gap:var(--freecell-gap);justify-content:center;align-items:start;display:grid}.freecell-cells,.freecell-foundations{display:contents}.freecell-cells .freecell-slot:first-child{grid-column:1}.freecell-cells .freecell-slot:nth-child(2){grid-column:2}.freecell-cells .freecell-slot:nth-child(3){grid-column:3}.freecell-cells .freecell-slot:nth-child(4){grid-column:4}.freecell-foundations .freecell-slot:first-child{grid-column:6}.freecell-foundations .freecell-slot:nth-child(2){grid-column:7}.freecell-foundations .freecell-slot:nth-child(3){grid-column:8}.freecell-foundations .freecell-slot:nth-child(4){grid-column:9}.freecell-slot{--card-scale:calc(var(--freecell-board-scale) * var(--freecell-top-scale));--card-w:calc(var(--card-width) * var(--card-scale));--card-h:calc(var(--card-height) * var(--card-scale));width:var(--card-w);height:var(--card-h);color:inherit;background:0 0;border:0;padding:0;display:block;position:relative}.freecell-slot .card,.freecell-slot .empty-pile{z-index:1;pointer-events:auto;position:relative}.freecell-slot .freecell-flight-slot-backdrop,.freecell-slot .freecell-flight-card-backdrop{z-index:0;pointer-events:none;position:absolute;inset:0}.freecell-slot.freecell-hint-source-slot-visible:before{content:"";border-radius:var(--radius-card);background:var(--color-empty-pile);border:2px solid var(--color-empty-pile-border);box-sizing:border-box;pointer-events:none;position:absolute;inset:0}.freecell-tableau-pile.freecell-hint-source-tableau-visible:before{content:"";width:var(--card-w);height:var(--card-h);border-radius:var(--radius-card);background:var(--color-empty-pile);border:2px solid var(--color-empty-pile-border);box-sizing:border-box;pointer-events:none;position:absolute;top:0;left:0}.freecell-tableau{grid-template-columns:repeat(8, var(--card-w));gap:var(--freecell-gap);justify-content:center;align-items:start;min-height:0;display:grid}.freecell-tableau-pile{width:var(--card-w);min-height:min(calc(var(--card-h) + var(--freecell-fan-offset) * 8), calc(100dvh - var(--header-height,3.5rem) - var(--dock-height,3.5rem) - var(--freecell-top-card-h) - 4.25rem));border-radius:var(--radius-card);position:relative}.freecell-tableau-empty{position:absolute;top:0;left:0}.freecell-flight-tableau-backdrop{pointer-events:none}.game-shell-freecell .game-main{overflow:auto}.freecell-deal-chip{color:var(--color-text-muted);white-space:nowrap;background:#0000001f;border-radius:999px;align-self:center;align-items:center;gap:.35rem;padding:.25rem .55rem;font-size:.75rem;font-weight:600;display:inline-flex}.freecell-copy-link{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.1rem;line-height:0}.freecell-copy-link:hover,.freecell-copy-link:focus-visible{color:var(--color-text);background:#ffffff14}.game-controls .freecell-deal-chip{border-radius:var(--radius-md);color:#fff9;font-variant-numeric:tabular-nums;background:0 0;gap:.4rem;min-height:40px;padding:.5rem .6rem;font-size:.75rem;font-weight:500}.game-controls .freecell-copy-link{color:#ffffffbf;padding:.3rem}.freecell-deal-open{color:inherit;font:inherit;font-variant-numeric:inherit;cursor:pointer;border-radius:var(--radius-sm,6px);background:0 0;border:0;padding:0}.freecell-deal-open:hover,.freecell-deal-open:focus-visible{color:#fff;text-underline-offset:3px;text-decoration:underline}.freecell-deal-entry{align-items:center;display:inline-flex}.freecell-deal-input{border-radius:var(--radius-sm,6px);color:#fff;width:8.5ch;min-height:44px;font:inherit;font-variant-numeric:tabular-nums;background:#00000040;border:1px solid #ffffff59;padding:.15rem .35rem}.freecell-deal-input:focus{border-color:#ffffffb3;outline:none}.freecell-deal-input[aria-invalid=true]{border-color:var(--color-error,#e5484d)}.game-controls .freecell-deal-chip:has(.freecell-deal-entry){padding-inline:.15rem}.game-controls .freecell-deal-entry{flex:1;min-width:0}.game-controls .freecell-deal-input{width:100%;min-width:0}.game-controls .freecell-deal-chip:has(.freecell-deal-entry) .freecell-copy-link{display:none}.game-controls .freecell-copy-link:hover,.game-controls .freecell-copy-link:focus-visible{color:#fff;background:#ffffff1a}@media (width>=768px){.game-controls .freecell-deal-chip{font-size:.9rem}}@media (width<=760px){.freecell-board{--freecell-zone-gap-base:0;--freecell-fan-offset-base:clamp(1.05rem, 3.1vh, 1.95rem)}.freecell-top-row{grid-template-columns:repeat(8, var(--freecell-top-card-w))}.freecell-tableau{grid-template-columns:repeat(8, var(--card-w))}.freecell-cells .freecell-slot:first-child{grid-column:1}.freecell-cells .freecell-slot:nth-child(2){grid-column:2}.freecell-cells .freecell-slot:nth-child(3){grid-column:3}.freecell-cells .freecell-slot:nth-child(4){grid-column:4}.freecell-foundations .freecell-slot:first-child{grid-column:5}.freecell-foundations .freecell-slot:nth-child(2){grid-column:6}.freecell-foundations .freecell-slot:nth-child(3){grid-column:7}.freecell-foundations .freecell-slot:nth-child(4){grid-column:8}}@media (width<=799px){.game-controls .freecell-deal-prefix{display:none}}@media (width<=480px){html[data-game-variant=freecell],.freecell-board{--radius-card:.3rem}.freecell-board{--freecell-gap-base:.22rem;--freecell-top-scale:1;--freecell-fan-offset-base:clamp(.78rem, 2.35vh, 1.35rem)}.freecell-deal-chip{display:none}}@media (height<=500px) and (orientation:landscape) and (width<=932px){html[data-game-variant=freecell],.game-shell .freecell-board{--radius-card:.3rem}.game-shell .freecell-board{--freecell-board-scale:var(--card-scale-fit-aware,1);--freecell-fan-offset-base:clamp(1.1rem, 3.4vh, 2rem);--card-height:min(calc((100dvh - 8.5rem - 6 * var(--freecell-fan-offset)) / 2.15), calc((100cqw - 10 * var(--freecell-gap)) / 8 * 1.4));--card-width:calc(var(--card-height) / 1.4)}}@media (width<=380px) and (height<=500px) and (orientation:landscape){.game-shell .freecell-board{--card-height:calc((100dvw - 10 * var(--freecell-gap)) / 8 * 1.4)}}
